So I believe that what I need is either RS-485 or RS-422, though I'm not clear on the difference as one web site intimates that with two of their RS-485 to UART boards I can get the equivalent.In any event I want to have two arduinos be able to communicate back and forth between each other (just two, point to point, no daisy chaining), over a distance of about 60 feet or more, in a somewhat noisy automotive environment. 115kbs is plenty of speed; 9600 might even be fast enough. My aim is mainly to have one arduino act as a monitor and UI (simple 2-line screen, and some buttons) for another arduino that does the real processing and controls a pump. I'll work out a very simple serial protocol. So do I need maybe two of this sort of adapter on each arduino, one for TX and one for RX? http://www.emartee.com/product/42231/RS485%20Module%20%20Make%20Your%20Arduino%20Talk%20With%20Each%20Other Or is there another chip that I can use to get duplex communication (standard UART-style connection on the arduino) over a cat-5 cable? I can certainly wire up my own adapters.
Can I do full-duplex RS-485 communication with just one DS75176 transceiver chip per arduino? Because it looks like the way most transceiver chips are, the chip listens on the twisted pair until the arduino asserts the DE (if I recall correctly) pin on the transceiver, and then the chip transmits until the DE line is lowered. This is the standard half-duplex method. And it's really the only way to do it if more than two nodes are involved (IE full-duplex only makes sense point to point).The problem with that is that the arduino hardware serial library offers no support for controlling DE output pin, so the user has to included it wrapped around every serial output command, plus with the issue of buffered and interrupt driven serial transmission now used by the serial library one has to include a flush plus a one or two character time delay to make sure any out going serial data has actually been sent before 'flipping' the DE output pin, otherwise transmitted characters will get chopped off. It can be done but it's kind of kludgy. However if one uses two pairs with two sets of driver/receiver translator chips then the link can be run in full duplex mode fully transparent to the arduino hardware serial driver. However that only works if there is but one master and one slave working on the link. If there is more then one slave attached then each slave has to be able to turn it's transmitter enable to the chips off so as to not step on other slaves use of the link, so the compatibility problem with the arduino serial library has just been moved from the master to all the slave devices.But as the OP is using a single master, single slave application the use of two pair fully duplex is a very viable method and the one I would use, and allow his sketch to not even care (or have to do anything) that it's not a simple TTL serial link attached.LeftyUsing two twisted pairs and full-duplex would require two chips per arduino in general, correct? One where the chip is always receiving, and one always has the DE pin asserted. Am I completely off base? I have heard there are chips that have what it takes to run two twisted pairs (four wires) off of one chip, but I do not know what chips to look for.Thanks.
EDIT: I don't think this will work as RS-232 is very different than running a pair of wires from arduino pins to arduino pins. Though maybe I can use a TTL to RS232 adapter.
QuoteEDIT: I don't think this will work as RS-232 is very different than running a pair of wires from arduino pins to arduino pins. Though maybe I can use a TTL to RS232 adapter.I've read that at lower baud rates rs232 can be used over some fairly long distances. I think the TTL to rs232 chips have charge pumps when capacitors are added to get the transmission voltages up to the 10v-12v range.