Welcome to Synthiam!

Program robots using technologies created from industry experts. EZ-Builder is our free-to-use robot programming software that makes features like vision recognition, navigation and artificial intelligence easy.
Get Started

Canada
Asked
Edited

Question

I’m trying to connect an Arduino Nano with the EZ-B v4 to offload some of the work. UART1 and UART2 work fine!

Problem is with UART0 (information is send but corrupted)

Connection:

- Arduino GND to EZ-B v4 GND

- Arduino RX connected to UART0 TX (first pin), D5 or D18

Attached to the Arduino is a 2x16 character LCD (I2C connection) to display (the serial information (also visible true the Serial Monitor) using a simple protocol; 0 (0x30) = clear LCD, 1 (0x31) = start at line 1, 2 (0x32) = start at line 2. All other information is just displayed.

All is fine and Information is displayed correctly when attached to pin D5 or D18.

When connected to the TX pin of UART0 information is sporadically send but corrupted. Touching the wire (on the outside!) changes the behavior of the characters received (more characters but still corrupted)??!!



AI Support Bot
AI Support Bot
Synthiam
Hello There! I'm a bot. Bip. Boop. I've searched other questions, tutorials and controls related to your question. Take a look at these links. They're all sorted by what I believe is the most relevant:
#1  
This is the Script I used:
:loop
UARTInit(0, 0, 9600) #initialize UART0
UARTWrite(0, 0, 0x30)
sleep(100)
UARTWrite(0, 0, 0x31, "Hello UART-zero")
UARTWrite(0, 0, 0x32, "Second Hello")
sleep(100)

UARTInit(0, 1, 9600) #initialize UART1
UARTWrite(0, 1, 0x30)
sleep(100)
UARTWrite(0, 1, 0x31, "Hello UART-one")
UARTWrite(0, 1, 0x32, "Second Hello")
sleep(100)

UARTInit(0, 2, 9600) #initialize UART2
UARTWrite(0, 2, 0x30)
sleep(100)
UARTWrite(0, 2, 0x31, "Hello UART-two")
UARTWrite(0, 2, 0x32, "Second Hello")
sleep(100)
Goto (loop)
#29   — Edited
Hi JD,

Moving the resistor between TX and +3.3v instead of GND didn't help. Less incoming characters and all incoming characters are corrupted.
Removed GND from Digital pin.
Connected now is GND from UART0, D5 and D18. As UART1 and 2 are still working fine, ground is fine for UART1 and 2 even using GND from UART0
Any grounding issue with UART0 therefore would be internal to the EZ-Bv4 isn't it?
#30  
Maybe ez robot should try and replicate this scenario at there facility. Get it resolved quicker?
Synthiam
#31  
We replicate it daily. Many of our robots have arduino, ssc-32 or uart<->usb devices connected. Also, the lidar dev units all connect to uart0. This works for us on a daily basis, which is why i'm at a loss to of why it wouldn't work for tonlaar. All signs point toward a bad ground is the only suggestion i have, even if it sounds like a broken record.

Connecting devices to UART 0 is common practice for us on a daily basis
#32  
Long shot, but where are you located?  Maybe one of us is close enough to let let you test with another EZ-B and rule out anything wrong specific to yours?
#33  
Ya, I agree with Thetechguru. Try another EZB. There may be something wrong internally with the one you're using. 

Have you tried wiring directly and eliminating the breadboard?
#34  
The thing is the whole setup including the the 2 ground wires I use are working for UART1 and UART2 so Serial communication is working but not for the UART0