# Sending data over two independently powered arduinos

I have multiple arduinos that are each powered by a 12v battery through a 5v regulator. All arduinos share a common ground. Can I simply connect the digital output from one arduino into the digital input of another? I'm worried the (small) voltage differences between each regulator could cause a problem.

• Can you tell more? Add the extra information to your question. How many is multiple? 3 or 3000? Please explain the distances and what else is going on. Do you use SoftwareSerial for the communication? Are there powerful motor or other things nearby? Is the digital signal in a wire next to other wires with current peaks? You could add a protection resistor of 1k at the input, but you can also try wireless or with a optocoupler.
– Jot
Aug 31, 2018 at 7:10
• Small differences in power supply will have no effect. Very long distances could have an effect though. How far apart are the Arduinos? Aug 31, 2018 at 8:32
• According to the datasheet, the input voltage on an input pin should be between -0.5V to VCC+0.5V. You you have 0.5V of margin. For added safety you could add a 1-10k resistor in between the two. Aug 31, 2018 at 13:15

It's ok if the distance between the two devices are not too big. (couple meters)

Since the valid logic level (voltage) ranges are pretty wide a small difference won't affect the operation of the devices. Arduino uses TTL (5V) logic so let's see the level diagrams:

If you see the output level ranges (on the right) are more strict than on the input side (on left) so the logic value remains valid even if a small voltage drop or noise occurs on the wire.

Make sure you won't connect two outputs directly since it can damage the microcontrollers. Connecting two inputs are totally safe.

EDIT: If you want to cover longer distances you need to use a balanced line e.g. differential I/O-s, RS-485 or CAN. These are not default Arduino features so you'll need additional electronic to use them.

• Well "totally ok" is a stretch. Not all 0V is equal and if the common 0V is noisy, long or current carrying you could have false level shifts. An RS485 link would be better with its high CM range. This probably will work but universally ? No
– Naib
Aug 31, 2018 at 12:57