How to upload sketches to Arduino UNO chip using PL2303 USB To RS-232 Converter

PL-2303HX provides a convenient solution for connecting an RS232-like full-duplex asynchronous serial device to any Universal Serial Bus (USB) capable host. PL-2303HX highly compatible drivers could simulate the traditional COM port on most operating systems allowing the existing applications based on COM port to easily migrate and be made USB ready.

By taking advantage of USB bulk transfer mode, large data buffers, and automatic flow control, PL-2303HX is capable of achieving higher throughput compared to traditional UART (Universal Asynchronous Receiver Transmitter) ports. When real RS232 signaling is not required, baud rate higher than 115200 bps could be used for even higher performance (by francisco). The flexible baud rate generator of PL-2303HX could be programmed to generate any rate between 75 bps to 12M bps.

PL-2303HX is exclusively designed for mobile and embedded solutions in mind, providing a small footprint that could easily fit in to any connectors and handheld devices. With very small power consumption in either operating or suspend mode, PL-2303HX is perfect for bus powered operation with plenty of power left for the attached devices. Flexible signal level requirement on the RS232-like serial port side also allows PL-2303HX to connect directly to any 3.3V~1.8V range devices.


There are two ways to upload a sketch using a PL2003 USB to RS232 adapter, both can be used with gigino board, too.


The manual Way

Manual Reset (Press Switch Reset)

1. Connect the circuit as shown in figure.

2. Install driver for USB TO RS232 and  check the number of comport.

3. At Arduino IDE software

     : Tools>>Board>> Arduino UNO

     : Tools>> Serial Port >> Com X (number on your PC)

4. Click "Verify button"  wait until  'Done compiling'.  

5. When you need to upload sketch.  

Press Swith reset and hold it,  Click "Upload button" and count x seconds (the time up on windows and PC you use, for my testing with XP windows took 3 seconds). After that, Release Switch.

If you choose the good time for your system, you will see " Done uploading". Yor are done!!! 

If you quickly or slowly release switch, it cannot upload, you need to try again with the best time for you.


The Automatic Way

Auto Reset (Software Reset)

1. Connect the circuit as shown in the figure below. (You need to solder the wire from PIN        number 2: DTR_N of PL2303 chip and connect to 0.1uF and connect to PIN number 1 of UNO.

2. You can upload normal sketches automatically.




If you’ve found useful this post, please, make a visit to my linkedin profile gg1 to help me growing my ranking.

Related Posts

21 thoughts on “How to upload sketches to Arduino UNO chip using PL2303 USB To RS-232 Converter

  1. Hi, I tried to upload the sketch "blink", LED 13 lights up about 3 times but then I get the error:
    "avrdude: stk500_recv(): programmer is not responding" any idea?
    I tried both manual and automatic resetting..

    I'm trying now with a chip, that came with the arduino bootloader. Still that error "programmer not responding".
    Should I be able to measure the clock, as the chip gets powered?
    Can I also use an 8MHz crystal?

  3. Hi moony, if you use a different crystal you should reconfigure the UART.
    You have to choices
    1. You have to use a 16 Mhz crystal
    2. You have to burn a new bootloader working at 8MHz

  4. great it works!! With a 16MHz crystal and ceramic capacitors, instead of plastic capacitors (although same value if I read it right).

  5. Hi !

    I always get the error "avrdude: stk500_getsync(): not in sync: resp=0x00" the atmega chip never answers altought a friend was able to write sketches on it with the arduino as isp sketch. When I put leds on the Rx and Tx wires they never blink…What should I do ?

  6. Hi Adokas,

    are you sure the bootloader has been correctly burned onto the chip?

    What chip are you using?



  7. Thank you very much!!!!! 😀
    Finally someone that explains correctly the manual method.

    Now it worked perfectly, after several tries and a couple of give ups.

  8. BTW: Those several tries and give ups happened before using your technique. Using your method worked in the first try.


    Thanks again.

  9. TIP that worked for me using the Manual Way:
    – On your Arduino IDE, go to Preferences
    – Check Show verbose output during: UPLOAD
    – Release the reset button as soon as you see something like:
        avrdude: Send: 0 [30]   [20] 

    Always works for me.

  10. Hi there,I read your blogs named “How to upload sketches to Arduino UNO chip using PL2303 USB To RS-232 Converter – xAppSoftware Blog” on a regular basis.Your writing style is awesome, keep doing what you’re doing! And you can look our website about proxy list daily.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.