Build Your Own Microcontroller Projects

Wichit Sirichote,
FangKhao Cake shop, 15/3 Tesabal 6 RD. Tambol Sikhiu, Amphoe Sikhiu, Korat 30140 THAILAND

This page provides schematic and software for hobbyists to practice "learn by doing", build a simple microcontroller projects at home.

89C2051/4051 | 8051 Family | AVR | PIC | Motorola | Intel x86 | I/O Circuits | Internet uC | PC Interface | My Products | My Class & LAB| Analog Instrumentation | Power Circuit | Eletronic Datasheet | Zilog Z80 | Intel 8085 | ESP01, ESP8266 |


    Charge controller for 4S4P Li-ion battery

    Dual channel digital voltmeter + Bluetooth Cheap oscilloscope and sensor probes Dual Channel 7135 DVM Kit Micromouse T01 Kit Alternator Current/

    RTD Thermometer


  • Microprocessor / Microcontroller/ DSP Training Kits


  • AT89C2051 Programmer using Linux terminal  Build the 89C2051 programmer for linux users.
  • Single-Side PCB for Easy-Downloader V1.1  Easy build and small size single side PCB for the 2051 programmer board.
  • Mathematical Manipulation of Pure Sine Wave Inverter using ATMEL 89S2051  Didik Rostyono and Harsono Hadi explain how to produce the sinewave output inverter using the ATMEL microcontroller! (available only in pdf file (274kB), click the link to download it)
  • AT89C4051 as RTC  updated Realtime Clock with LCD by Ajay Bhargav, featuring big size number!
  • xTimer V1.0 with 4094  New design xTimer using CMOS shift register 4094 for driving 7-segment LED directly! .
  • AT89C4051 as RTC  Realtime Clock with LCD by Ajay Bhargav from India.
  • saver6  Latest design night light saver, built with sdcc.
  • xTimer V1.0   4-Channel Timer, 89C4051 + MAX7219 display driver. Source code with sdcc available now!
  • 89C2051 Proto Board   Layout PCB for experimenting with 89C2051 & AVR uController by M Asim Khan, Pakistan.
  • Download Now ezdl4 ! New PC software for Easy-Downloader V1.1 and V2.0. No problem with unsorted hex file. Automatically detect COM Port and programmer board. Updated EZ4.1.
  • Easy-Downloader V1.1 with SDCC Renovated programmer board with SDCC, complete schematic and layout with MAX232 for rs232 level converter!
  • Easy-Downloader V1.1 Serial interface programmer board for writing intel HEX file to the AT89C2051/4051 flash based microcontroller. New EZ Uploader V3.0 for Window and PCB file are included.
  • Make Your Own Single-Side PCB for Easy-Downloader V1.1  I am very happy with my student, Plermjai(his name means feel delighted too) Inchuay (his family name means angel helps him), who provides me his page describing how-to-make a single side PCB for the Easy V.1.1. So cool! his prototype was made by hand writing with a pen for making PCB! Available now single side with Protel format.s
  • Very Easy Single-Side PCB for Easy-Downloader V1.2  Puiu Chiselita from Romania provides us a very easy single-side PCB with some modification for RS232 level converter and indicating LED. Puiu detailes how to make the board at home and gives some useful trick to making a board easier.
  • Experimenting the 2051 with C Programming I provide this page for beginners who interested in using C and Assembly for the 2051/4051 chips, e.g., driving dot LED, scanning 7-segment and keypad, connecting dump terminal, stepper motor, SSR, interfacing I2C EEPROM, display driver, calculating CRC-16, etc.
  • Night Light Saver V5.0 I have designed a device that controls a night light at home. The saver uses 2051 chip and a small triac. The saver features low-cost, simple installation, no battery backup, and save energy.
  • Clock Controller V1.1 The Clock V1.1 provides the same function as the saver does but with additional 4-digit LED display and 4-key input for setting the clock and turn on/off AC load. The circuit uses single 2051 chip, and relay or opto-triac output for driving AC load. source code with sdcc for 8051!
  • DigiThermo V1.0 Build a laboratory instrument that measures time and temperature. A 89C4051 interfaces 16x1 line LCD, 3-digit DVM CA3162 and LM35D precision temperature sensor. This device is capable of providing 0.1C readout.
  • Miniature Real-Time Controller This is my long history home-use-controller that has been using at my home since 1997. The Miniature Real-time Controller has a 2051 chip with timer6.asm, an open collector 74LS07 and MAX232 chip. The scheduler of on/off time for 6-channel output is downloaded via PC.
  • Line Follower ROBOT Controlled by 2051  Award Winner from VINGPEAW Competition 2543 by my student, again, Plermjai Inchuay.  He provides this page describing his robot platform, control circuit by 2051 chip, black tape sensor, and control program in C. See MPEG file how the robot tracks the course during competition.

  • 8051 Microcontroller Family
  • Digital pH Meter 8051 based pH meter
  • Interfacing the 8051 Project Board with a 12 bit - 4 channel ADC using SPI bus  Demonstration project of using SPI port for ADC interfacing
  • Interfacing the 8051 Project board with sensors and actuators  Sample projects for 8051 Project Board
  • Project board for SST89E516RD microcontroller  New design project board for SuperFlash microcontroller.
  • BASIC-52 CONTROLLER  Turn the 8051 kit into a dedicated controller that uses BASIC interpreter
  • Dual channel digital voltmeter  Digital voltmeter with bluetooth
  • Realtime controller V2.0  New design realtime controller using 89S52 with builtin clock display and keys for time settings.
  • USB Easy-Downloader V5.0 Modified Easy-downloader V2.0 to provide USB interface.
  • How to use Flashmagic to program the SST89E516RD Microcontroller  Transform the SST89E516RD to NXP89V51RD2 and use Flashmagic to program it.
  • Test board for SST89E516RD  Build a test board for experimenting with EasyIAP, replace the NXP89V51RD2 with SST89E516RD
  • MCS-51 Propeller LED  
  • AT89Sxx base board STK200 Programmer
  • Digital Clock Replacement Board for E21  Build a replacement board for BMW E21's digital clock.
  • Fan Thermostat  Build a simple fan thermostat with LM35, ADC0804 and 89C51.
  • Data Acquisition System with VB   Build a data acquisition system with Visual Basic and the 89C51.
  • The 89Sxx learning board  Build a simple and cheap 89Sxx MCU learning board by Tahan Prahara, Indonesia.
  • The 89C51 PABx Mohammad Shakeel from Pakistan describes how to build a simple PABx board using the 89C51.
  • 89S52 Project Board Simple 89S52 board for student projects.
  • Controller for Hybrid Power Plant The 89C51 control board for controlling photovoltaic-wind turbine and diesel engine. Developed by Didik Rostyono from Indonesia.
  • LCD Thermometer 2nd version of Thermistor Thermometer.
  • Thermistor Thermometer Simple thermometer made with NTC thermistor.
  • Digital Clock with Alarm using DS1307 new design by Ajay Bhargav, best for student projects.
  • SPI Flash Microcontroller Programmer V3.7, new hardware and software for programming 89Sxx and AVR chips. Designed by Mohammad Asim Khan.
  • New 8051SBC Brown-out protection, WDT, 20x4 LCD BUS interface. Simple scope using Nokia 3310 LCD.
  • ATMEL 89 Series Device Programmer more chips and easy-use devices programmer!
  • S-52 Simple Microcontroller Learning Board Simple hardware for beginner to learn 8051 microprocontroller, single side pcd with ISP loader designed by Prahlad Purohit from India.
  • Cheap Cable of Asim's ISP Loader for 89Sxxxx Simple hardware for code programming new series MCU from ATMEL, 89S51, 89S52, 89S53, 89S8252.
  • ISP Flash Programmer V3.0a Flash programmer using ISP designed by M Asim Khan for AVR and 89Sxx series. Updated software! (recommended for applications)
  • MiniLOGGER V3.0 New design data logger board, 64kB T89C51RD2, 4-channal 12-bit ADC, built-in LCD and 128/512kB battery backup memory. New page for minilogger DC Amplifier for Pyranometer
  • USB & GLCD expansion board for 8051SBC  Simple circuit for USB and 128x64 GLDC interface.
  • Experimenting the 8051SBC with c51 compiler sample code and startup file for 8051SBC. Using a popular c51 compiler with monitor program.
  • 8051SBC V1.0 New generic tool for learning microprocessor. The 8051SBC, Microprocessor Learning Board. More commands and peripherals. Complete schematic, PCB layout and firmware are available now.(recommended for applications)
  • Easy-Downloader V3.0 New design the flash programmer board specially for 89C55WD. The lock and erase functions are now implemented and tested.(not recommended)
  • Easy-Downloader V2.1 Simple modification of Easy programmer V2.0 enables the 89C55WD to be programmed. The beta version of EZ55.HEX and source code EZ55.C are available for download.
  • M Asim Khan's Programmer Ver 3.1  Latest M Asim Khan's Programmer featuring more chips, enhance programming speed, support Window2000/XP. New target chips, 87C51 and 87C52.
  • C52EVB V2.0 with 32KB eeprom boot loader  New Microprocesssor Learning Board for 89C52 CPU with 32KB external eeprom. Modified PAULMON2 provides program saving and boot loading.
  • Easy-Downloader V2.0 The simple programmer for 40-pin AT89C51/52/55. Modified firmware for free compiler 8051, sdcc. Beta version for 89S51 and 89S52, a bit hardware modification.
  • Using Easy-Downloader V1.1&V2.0 with Unsorted HEX Files  Kurnia Wijaya from Jakarta Indonesia helps me writing the program that sorts the intel hex file generated by some compilers.
  • How Easy-Downloader V2.0 Connects Host PC  Details description of simple protocol between programmer board and host PC's software.
  • Program the AT89S8252 and 89S53 with Easy-Downloader V2.0  Upgraded EZ52 to EZ53.hex enabling the Easy-Downloader to program 89S8252 and 89S53 chips without any modifications.
  • Make Your Own Single-Side PCB for Easy-Downloader V2.0  This work was contributed by Bruno Macio from Brazil, a single-side PCB for Easy II with MAX232C for RS232 level converter. For those who use Portuguese may ask him directly.
  • Very Easy Single-Side PCB for Easy-Downloader V2.2  A variant single-side PCB of Easy V2.0 contributed by Puiu Chiselita from Romania.
  • EZ Uploader V3.0 Download a window version of EZ and EZ2, the beta EZ3, automatically connects the Easy-Downloder V1.1 or V2.0 to an available COM1-4 port.
  • EZ Uploader V3.1 Upgraded EZ3.0 with additional READ command and SAVE AS Intel-HEX file.
  • C-52 Evaluation Board This board uses 89C52 with a modified 8kB PAULMON2 monitor program, 32kB SRAM for writing application program. The C-52 EVB was designed for studying "Assembly and C Language Programming for Microcontrollers". Latest PCB file included.
  • C-52 EVB Robot Controller Use a C-52 EVB for simple robot experiments. Build a simple two wheels robot with L293 H-Bridge driver and IR sensor. Write a C program controls robot tracked with black tape.
  • MiniLOGGER V1.0  Build your own a personal data logger having 8-channel analog input -99mV to +999mV with 1mV resolution (CA3162), 3-digit dual slope integrating converter, battery backup 256kB SRAM, RTC, RS232C, direct connected  internet server for remote data retrieving. Example circuit and data for measuring Insolation and Air temperature is included. (not recommended)
  • Connecting MiniLOGGER with Easy-Server V0.9  Run Easy-Server V0.9 on PC connected to internet gateway enabling remote access the MiniLOGGER.
  • Simple RS422 Converter for Minilogger  Build a simple RS422 converter for the Minilogger.

  • AVR Microcontroller
  • Tiny2313 Development Board  Easy build AVR Tiny development board.
  • AVR Student Projects More student projects with AVR at Cornell University by Bruce R. Land. More 100 project videos and over 50 video lectures.
  • AVR Line Following Robot Schematic and c source code for building line following robot by Priyank Patil from India.
  • AVR Thermometer Build a simple digital thermometer using 20-pin uC, AVR 90S2313 and DS1820. The thermometer is capable of measuring temperature from -55C to +125C! with 1 degreeC resolution.
  • Experimenting the AT90S8535 with CodeVisionAVR C Compiler Build a simple STK200 compatible ISP cable and a simple 90S8535 circuit. Do a simple experiment with an Evaluation CodeVisionAVR C Compiler.
  • STK200/STK300 ISP Header Pin diagram of STK200/STK300. Note for MEGA103 ISP signal.

  • Microchip Microcontrollers

  • Cake Timer simple timer built with PIC16F684.
  • Data Logger 3 Fully functional data logger
  • Electric window controller cheap device for controlling electric window.
  • Data Logger 3 Demo version data logger for science experiment in school.
  • G5 Data logger LBuild the multichannel data logger with 20 bit ADC converter.
  • Pt100 Handheld thermometer Build the ITS-90 thermometer with PIC18F87J93 PIC LCD and Pt100 sensor. Interfacing varitronix glass LCD with LCD port.
  • Bluetooth data logger Record one channel temperature and transfer with bluetooth.
  • 4 Channel Pt100 Thermometer Display four channels in 0.1C with Pt100.
  • Solar Recorder The PIC Solar recorder for daily insolation measurement.
  • PIC 3rd Harmonic Meter The PIC board detects 3rd harmonic distortion of AC power line.
  • PIC Project board PIC project board for 40 pins PIC MCU, PIC16F887, PIC18F4520.

  • PIC18F2550 Project Board PIC Project board designed for student projects.
  • In-circuit PIC Loader ICSP loader using LPT interface for programming PIC chips in application board.
  • ezPIC Programmer for PICs and EEPROMs ezPIC is low cost serial port programmer for PIC microcontroller and I2C EEPROM.
  • EasyDebugging Terminal  Build a simple 9600 BAUD 8n1 terminal for debugging and testing device having RS232C output. A Microchip PIC16F84 connects a 16x1 line LCD for displaying ASCII code received  from a device being tested. No longer need an expensive notebook to connect factory's equipment just to see why it is not properly functioning. The battery supply provides galvanic isolation from hazardous factory's power system. Thanks to M Asim Khan from Pakistan for providing this project.
  • F84-Programmer  Before start build PIC circuit, one should build this circuit first, a simple serial writer for PIC16F84 chip. The circuit is so simple and easy-to-build. The writer works with Nigel WPicProg16 and easily connecting to PCW PIC C Compiler.
  • Night Light Saver V3.2 Now it's time for Microchip PIC12C508 8-pin Microcontroller. The saver turns a night light on and off with preset time, no battery backup, easy installation.(not recommended)
  • F84 Miniature Real-Time Controller A PIC16F84 runs with 32 kHz low power x-tal having 6-output. A preset on/off each channel with current time is resided in EEPROM.
  • (recommended for applications)

    Motorola 68HC11, 68000, 68HC08

  • Sample code for Interfacing Devantech CMPS03 to the Motorola 68HC11.
  • Time Switch V1.0  New weekly scheduler made by 68HC908QY4 with kaypad and 16x1 line LCD! (not recommended)
  • Electronic Distance Meter  Simple device for measuring distance while riding bicycle. The 16-pin Nitron chip interfaces 16x1 line LCD!
  • HC08 FAN Timer  Simple circuit with 16-pin Nitron chip 68HC908, easy analog setting, source code with ICC08. New s-record for 8-pin 68HC908QT2!
  • 68000SBC  Build a 32-bit computing power single board with 68HC000, 256kB SRAM, 256kB Flash, RTC, UART, and GPIO.
  • HC-11 Evaluation Board  Build a low-cost evaluation board for Motorola 68HC11. Downloadable BUFFALO V3.4 to 32kB SRAM for learning  Assembly programming and 68HC11's architecture.

  • Intel x86

  • C186SBC  smaller than C188 but more powerful 16-bit data bus built with 80C186EB.
  • C188SBC  Build a generic microprocessor learning board, 16-bit single board built with embedded microprocessor Intel 80C188EB.

  • PC Interface

    Simple Robot

    I/O, Supervisory Circuits & Designer's Companion

    Internet Microcontrollers Experiment
  • Connecting iBook with PC using Ethernet   Transfer files from iBook to PC using Ethernet easily.
  • Tiny Server  Build the embedded device server with XPort.
  • Solar Server   Build the solar station for insolation measurement with Ubuntu server 7.10 and a 24-bit Delta-sigma converter.
  • Home Automation Over Internet  Control home appliances over Internet by 8051 hardware and PC server by Ajay Bhargav.
  • Solar Energy Meter  Turn 8051SBC to be a dedicated instrument for measuring AC energy when sunshine.
  • REMOTE[RS232] using Easy-Server V0.9  Experiment the microcontroller with internet server. The Easy-Server provides simple means for connecting microcontroller through a 9600 8n1 serial interfacing. Exemplary circuit using PIC16F84 for REMOTE RS232 and experiment description were included.

    Projects Contribution

  • GNU Proload 2.0 Loader software for Easy-downloader using with linux.
  •  New Program and firmware for SUNROM Programmer by Majid Mahmoud Pour Eftekhari Foumani from Iran.
  •  Single-side PCB in Protel v2.8 for Atmel 89 Series Device Programmer by Vasyl Pawluk from Ukraine
  • Design.PCB  Single-side PCB for Easy-Downloader V1.3 by Dr.Homayoun Daneshgar M.D.
  • Ez.exe  Patched ez.exe for Easy-Downloader 89C2051/4051 by Marcelo Vranici from Argentina.
  •  Modification of Easy-Downloader for running under Linux. The work has contributed by Amish Vishwakarma, embedded designer from India. Amish detailed how to implement it by his message 1, 2.

    Analog Instrumentation

  • Simple audio signal tester use a washing machine's buzzer for making the simple signal tester.
  • +/-5A Voltage Controlled Current Source Using power opamp to provide +/-5A for CT testing.
  • Pyranometer to Current Converter  Simple circuit that enables long cable wiring for pyranometer. Built with TI rail-to-rail opamp, TLV2451.
  • DC Voltage and Current Source  A small circuit provides +2.5V, 0 to +2.5V and 0 to 250uA DC source. The circuit built with TI LinCMOS, TLC254A.

    Power Circuit

  • Circuit for Soft-Start Module  Simple circuit that reduces surge current on start of an induction motor.

  • What's New |89C2051/4051 | 8051 Family | AVR | PIC | Motorola | Intel x86 | I/O Circuits | PC Interface | Top

     Updated: May 2024
    Copyright (C) 2001-2023 by Wichit Sirichote All Rights Reserved. Reproduction of all or part of this work is permitted for
    educational or research use only, provided that this copyright notice is included in any copy.