DIY USB to TTL Converter




Introduction: DIY USB to TTL Converter

About: An Electronic freak loves designing Embedded circuits.

Now that the PC’s com port or Serial port is almost obsolete there is quite a lot of requirement for USB to TTL or USB to RS232 converter. USB to TTL converters are required for interfacing microcontrollers to PC it is also required for loading code in Arduino Mini, setting/modifying ESP8266 firmware. Over here we are going to make a do it yourself (DIY) USB to TTL Module on a breadboard.

Lots of USB to TTL modules are available in the market based on various chips like PL2303, FT232, CP2102 and CH340g. I have decided to use CH340g IC. Low costing clones of Arduino UNO & Arduino Nano also uses CH340g IC. And this IC is now easily available in India. Reasons for not using other converter IC’s.

  • PL2303: Lots of duplicates in Market so not reliable
  • FT232: Costly
  • CP2102: Difficult to solder

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Components Used

Step 2: Schematic

Above is the implemented schematic. The schematic I got from CH340g in Eagle. Not much explanation is required as its a very simple circuit. Still if you have any queries you are free to ask.

Step 3: CH340 USB to TTL Converter

CH340g is a great new low cost alternative to other usb to ttl converter IC’s. It is also gaining lot of popularity andhas support for window’s 8, windows 10 and all OSX for MAC. It is very easy to Install and Tutorials are available for installing CH340 drivers for windows and also for MAC.

Step 4: SMD to DIP Converter

Truly speaking this converter board is the only reason that it was possible to make this project. The problem in using CH340 was that it does not come in DIP version only smd versions are available. But luckily I found a 16 pin SMD to DIP converter which made this project possible. Now using SMD IC’s is not a problem at all as variety of SMD to DIP converter PCB’s are available online.

Step 5: About Other Components


I have used 840 points GL12 Breadboard over here. It was too big instead you can also use 400 point Mini breadboard.

Jumper Wires

No project is complete without jumper wires. Over here I have used male to male jumper wires. I have also used the same wires for connecting the USB B connector to breadboard.

USB A to B Cable

For connecting the circuit on breadboard to computer I did not have a USB Breakout board so I used a USB a to B cable i.e. the printer cable and cut out printer side connector and connected it to one side of Male to Male jumper wires.

Step 6: Final Result

I have loaded code serially in P89V51RD Microcontroller using the USB to TTL controller and it worked fine. Will soon be testing it with ESP8266 and Arduino Mini.

Maker Olympics Contest 2016

Participated in the
Maker Olympics Contest 2016

Be the First to Share


    • Raspberry Pi Contest 2020

      Raspberry Pi Contest 2020
    • Wearables Contest

      Wearables Contest
    • Fix It Contest

      Fix It Contest

    6 Discussions

    Mohammad TahaT1
    Mohammad TahaT1

    Question 8 months ago

    Is this chip supported by windows 10 64-bit?


    Question 9 months ago on Step 5

    Hello and tnx for your useful help.
    Where can i put a led to lit up while uploading code to microcontroller ?
    I mean adding led to ch340g board.


    Question 10 months ago

    Hi i try it on my Atmega328p but it give a error. Which i have to use as programmer? (Sorry for bad language)

    10 months ago

    Looks nice. mmh just one thing. A complete CH340G cost not much more then a single IC. So you can just wire up a module which is more convienent


    3 years ago

    "PL2303: Lots of duplicates in Market so not reliable" do you mean counterfeits instead of duplicates?