Are the serial ports rx and tx switched on my arduino uno clone?


I recently bought an Arduino Uno R3 clone board, with CH340 chip. Windows 10 nicely installed the proper windows driver, and I was able to upload the blink sketch and others, which work fine.

I also bought a sparkfun midi shield board, but a simple sketch to output a midi note-on message didn't gave me anything on the midi output port. Then I noticed something weird. The rx bit on the board is blinking when the midi out command was given. This is odd, as I had expected the tx bit to blink, as it is a serial out command. Connecting the midi output to the midi input port made both tx and rx blink at the same time, so input output is working, but the wrong way round, at least that is my impression.

Now I removed the shield, and write a string to the serial output port repeatedly (the serial monitor on the usb port shows the output) and again, the rx bit is blinking.

So my thought is, that the rx and tx are reversed on this clone board, which is why the midi shield did not work.

Is this something known with these clone boards using the CH340 chip, or am I completely wrong in my assumptions?


Here is a simple sketch that makes the rx bit blink (which I think should be the tx bit), on the serial monitor output (through USB) everything looks fine.

void setup(){

void loop(){


Could be just mislabeled on the board.


I was having the same confusion with my non-genuine UNO and Nano. This recent discussion might help your understanding: