RS-485 breakout fro sparkfun

Hi Just a little question, after almost one year of making different projects on my own, with fairly help from what i found on the net I finally come to the conclusion I really need some help I'm in the process of building an underwater ROV and have some problems solving the communicating problems true a 4 wire tvisted pair cable of about 500 meters of length. trying to get some info how to get 2 arduino's to communicate true Ethernet is hard. I was initially thinking of Ethernet over powerline with a modified adapter running on 24v ac. the Hello world and web server worked fine. still have no clue in the world to get the 2 arduino's to interact, now I'm thinking about half duplex RS485 as a solution. my question is can i use 2 of the RS-485 breakout from sparkfun one in each end of the tether and use standard serial communication or use the library EasyTransfer for sending values from control panel to ROV and back. All feedback will be highly appreciated.

You can use that breakout board or just buy some 485 transceivers, there are 1000s available and most will be in a DIP package if you want that.

use standard serial communication

Yep. You'll have to come up with a protocol of some kind.


Sorry, don't know what that is.


I’ve only worked with RS485 over about 50 meters. It worked absolutely great, but there are a lot of things to consider in doing it. You have to make sure one end is the master and initiates everything and the other end is a slave and responds to the master. Otherwise, you get into fancy protocols and interactions that will take away from the fun of the project. As a simple example the master polls the slave every 5 seconds saying something that means “tell me how you are” and the slave answers back “I’m fine, but the batteries are getting low”.

You can work out your own protocol and make it work or search around the web for examples. In a situation like this where you control both ends, I would just create what I needed as I went.

And, listen to Graynomad, you can pick up a good serial TTL to rs485 device on ebay for a few dollars for both ends and just add a nice power supply to it to complete the hardware. Use the left over money to buy wire.

fancy protocols and interactions that will take away from the fun of the project.

That is the fun part of the project :slight_smile:


Graynomad, I'm sure I'm not the first person to tell you, "You're weird".

Rob, I was thinking the same thing! Just look at the iterations we're going thru on the Battery Monitor boards.

well thanks for all the great reply's.

Got the wire "4 wire twisted pair filled with petrol-gel" in other words damn expensive one, and got 510 meters of it. that was a gift from a company where it was laying around for a couple of years, they did't used it no more cause they needed more wires in their new application. mmmmm. thinking of what protocol would suite for this. the EasyTransfer library was a good thought. I thought. because you just declare what ever variables you wants to share in both ends. and the library takes care of the rest... look here but I'l just see what comes up then.....

It's really hard for me to come up with an argument against that library. No packets, no fussing, just use the data. Nice find. Actually, you could start off with something like this to save you time and then upgrade to a more robust protocol if it doesn't work out in all conditions

Since you have four wires you can use full duplex and not have to worry about switching the devices from send to receive, make sure their twisted pairs, not just twisted around each other for this. Although, if you use master-slave configuration, half duplex isn't hard and that would leave two wires for power or backup or whatever.

Have fun.

"You're weird"

You guys say the nicest things.

the iterations we're going thru on the Battery Monitor boards.

Yep, that thread's got a life of it's own.


ROV coming soon. just wanted to share a little about progress and materials already in stock for the build
I think the best way is to try out the RS-485 and EasyTransfer library. If that works out fine i will post it here.
attached a picture of the control unit.

This is so far been bought for the build.
1 pc. Arduino Duemilanove
1 pc. Video experimenter kit. Making text overlay on to the video feed.
2 pc. Arduino Atmega 1280
2 pc. Voltage Dividerer
2 pc. Current sensorer
5 pc.L298 Dual H Bridge
1 pc.HMC5883L 3-Axis Digital Compass
5 pc…DC 12v geared motor 1000rpm high torque for thrustere
2 pc. futuba servo high toque for camera tilt
5 pc. dallas temperatur sensor, for monitoring battery packages
5 pc. Oil seals for Thrustere
5 pc. Ball bearings for Thrustere
1 pc. Lcd Monitor 15" for camera feed
2 pc. Control yokes
2 pc. 12v leadcelle battery sealed 7,5 amph for controlunit.
1 pc. Lcd Display 20*4 white on blue
1 pc. lcd backpack (i2c)
2 pc. RS-485 half duplex break out fra Sparkfun.
1 pc. Camera B/W.
1 pc. Camera Color.
100 pc. Li-ion 3.7v 3000mAh rechargeable batteries to ROV
30mm pvc pipe. for thrusters and frame.
some potentiometers and swithes.
1,673 feet of teether cable 4 wire twisted pairs
5 pc. 90mm propeller for thrusters
almost ready to begin the build of the main frame.
still need 2 pieces of stainless steel pipe for the electronics and battery compartment