Interesting Experiment-Using Arduino DUE only as UART for uploading Arduino UNO.

Hi, I'm doing an interesting experiment. But it is not working as I expected.

I have Arduino Due and Uno. Here is my test.

  1. Flipped up UART TX/RX pins of each core chips.
  2. Connect USB to DUE board and connect wire as below 1)DUE0 pin to UNO board core RXD pin 2)DUE1 pin to UNO board core TXD pin

I've connected correctly. As I guess, below is the procedure of the board.

  1. USB connected to DUE board.
  2. USB data converted to serial data by ATMEGA16U2 in DUE.
  3. Serial TX/RX signals go out through the wire which are connected on TX0, RX0 pin.
  4. wires connected to UNO chip serial pins.
  5. It acts like a single UNO board.

I tested IDE setting both Arduino UNO and DUE. But it's not working and the message is as below. it's "not in sync". To check the connection, I've tried the same thing in one board by wire. It's working when I do it in one board.

What did I miss?

==================================================== Arduino: 1.6.9 (Windows 7), Board: "Arduino/Genuino Uno"

Sketch uses 1,204 bytes (3%) of program storage space. Maximum is 32,256 bytes. Global variables use 11 bytes (0%) of dynamic memory, leaving 2,037 bytes for local variables. Maximum is 2,048 bytes.

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch

System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

Using Port : COM7 Using Programmer : arduino Overriding Baud Rate : 115200 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xd6 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xd6

avrdude done. Thank you.

Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.

Arduino UNO bootloader works with an automatic reset forced by a DTR signal on the serial port. Without this signal you cant try to push the reset and leave it just after the loading. Sometimes it work, sometimes not because it is time critical.

Thank you ZOOMX, As you commented, I've connected RST signal also like this with 2 UNO boards.

|500x292

I'll try same thing with Uno and Due. Thank you very much.

Most of the time I get the error you mentioned while uploading a sketch if the TX and RX pin of my uno is connected to any other peripheral. Most of the time while uploading I unplug any thing connected to RX and Tx pins.

What you are trying to achieve here?

I want to use ZYNQ FPGA board as a arduino board not by SDK but by IDE. That's why I tested that.