Shop OBEX P1 Docs P2 Docs Learn Events
Remote terminal with 2 wire connection. — Parallax Forums

Remote terminal with 2 wire connection.

HollyMinkowskiHollyMinkowski Posts: 1,398
edited 2009-06-25 18:33 in Propeller 1
I was thinking about how some projects could be greatly enhanced if a simple and cheap remote terminal
could be added. Some devices are meant to be in remote or inaccessible locations...it would be convenient not to have to
regularly visit them to collect data and check on functioning. The Prop seems ideally suited since video and kbrd
are so easily done. Has anyone already created such a thing?

I am envisioning taking a cheap m2m vga extension cable and cutting it in half. Each half would connect to
a simple propeller circuit inside a tiny project box, there would be a 2 wire connector on the box to connect
the cable back to a project at a remote location. The cable and the small box would look like a sort of pigtail
VGA or composit connection cable. A kbrd socket as well as a mouse socket could be added to the box.

Power and data would flow over the 2 wire cable. I was thinking that using an H-bridge at the project end
would enable 2 I/O pins to send square wave AC at a high speed to the remote terminal. A bridge rectifier,
capacitor and 3.3 v regulator in the terminal box would create a stable 3.3v for that prop chip. Data could be sent
as short pulses back and forth during the time that the square wave ac flow was dead. Just look at the diagram below
of the AC square wave pulse train...the center line is 0v, the 0v spaces are where the data pulses could be injected at both ends.
If the frequency was reasonably high then quite a bit of data could be sent back and forth....but not too much is actually
needed since the idea is for a simple text and ascii graphic display and not high bandwidth graphics. The reason for AC and not DC pulses
is to simplify data handling as the terminal end could send data after a transition from V+ to 0v and the other end would
send after transition from V- to 0v

2v943k3.jpg

This could be more easily done using a 3 conductor cable but I wanted to keep it as minimal as possible. We have
a lot of old rf cable in the ceilings and under the pull up floors here...it used to be the connector cable for an old
network, it's rg58 cable and should provide excellent test wire for working on this terminal idea.

SO, has anyone already done something like this (so I don't have to re-invent the wheel)
Also, I'm not much of an electronics guru so is this idea even sound????

How long do you guys think the cable could be and still allow this to operate? 100ft, 300ft ?
The Voltage sent can be the unregulated DC before it hits the regulator for the main project
board and is reduced to 3.3 or 5v. This higher V should allow the remote box to be at a considerable
distance I would think....it would only need maybe 100ma tops right?

I was thinking the remote terminal could be added to existing projects using ARM, AVR etc since the
parts to implement would be few and the code not too involved.

The reason I wish to send power over the wire to the remote terminal even though power would
usually be available at the terminals location is it is very possible that in some circumstances it
would be handy to use a small, low power lcd monitor or panel with the terminal that could also get
its power from the cable. Also, sometimes it would be nice to reverse the scheme and have the
terminal box send power to the remote project...that way power would not be needed on the
business end, it's sometimes hard to get power where you need it.

Comments

  • RvnPhnxRvnPhnx Posts: 36
    edited 2009-06-25 12:28
    Holly,
    First off, let me clear up a couple of misconceptions. Once you are talking about a pulse train you are talking about AC--you needn't be switching polarity for it to be AC (so long as there is a sink somewhere to eat up the charge). Second, square waves are imaginary. A true square wave would require infinite frequency response--and that just doesn't happen in the real world.

    I would strongly suggest that you look into how the X-10 system sends data over power lines, and how modems work (remember that telephone lines are both a data path and a power supply).

    I have to head off to work, so I can't elaborate much right now, but I hope that what I've said thus far helps you out a bit.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --RvnPhnx
  • Clock LoopClock Loop Posts: 2,069
    edited 2009-06-25 12:49
    I did my own custom 2 wire communication device to a Model Railroad N-scale train engine.

    I built a H-bridge and had that h-bridge controlled DIRECTLY by serial IO.

    One half of the h-bridge was directly driven by the output of the microcontroller.

    I inverted the serial output and sent that to the other half of the h-bridge.

    Now you can communicate pretty fast and send power using standard serial.

    If the serial line stops its ok, just as long as you set the h-bridge to be on in either direction to keep providing power.


    H-bridge := 1 (you need to actively set the h-bridge to be 0 or 1.)
    serout(data)
    H-bridge := 1 (you need to actively set the h-bridge to be 0 or 1.)


    The rectifier on the receiving end takes both DC(any polarity) and AC power and turns them into DC.

    I used a few diodes, a cap, to provide power. And I also used a diode to get the serial data into the micro controller.

    If you do this, you need to make sure the ripple on the receiving end is acceptable. or get rid of it with caps, and or a slight higher voltage on the 2 wires.

    I actually did this with the SX, and know that it would work for the prop.


    Power and uni-directional data over 2 wires works, and is easy to do.


    Bi-directional data is much more involved, for that you would need to research DCC model railroad circuits.

    Post Edited (Clock Loop) : 6/25/2009 3:32:54 PM GMT
  • KyeKye Posts: 2,200
    edited 2009-06-25 14:07
    Look at X-10.

    There are a whole bunch of products that use a power line interface to communicate to each other. The X - 10 standard is older and I think there is a newer one out... but the idea in general has been done.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nyamekye,
  • kwinnkwinn Posts: 8,697
    edited 2009-06-25 14:33
    Holly, I have done a project where we ran both power and dara over a coax cable (RG6). We ended up using a 1200 baud modem at both ends for the data. This was done because the coax was the only cable going to that location, and it was buried under the pavement. For the rest of the project we pulled regular 3 pair phone cable with power on 1 pair and signal on the other. It was much simpler with phone cable, and using RS485 drivers allowed us a much higher data rate.
  • HollyMinkowskiHollyMinkowski Posts: 1,398
    edited 2009-06-25 16:50
    @RvnPhnx
    I was going to use AC pulses with 0v spaces between just to make it easier for the propeller on the
    terminal end to know when to listen for data and when to send data...of course the board actually
    generating the pulses to drive the H-bridge knows when to do both without having to watch for the proper
    time. I realize that square wave pulses only look roughly like the above image in real life... I can see
    them on the scope and they look sort of sloppy smile.gif ... but the 0v spaces are still there and should be usable for data.
    I will have to look up those x10 devices and see what they are doing...I don't need extreme data speed but
    I do need low-cost so I will opt for low-cost and usable vs high-cost and state of the art. I'd like to figure out
    how to do this for only a few dollars in costs. lowest production cost and highest profit is the rule

    @Clock Loop
    Sounds like you did something close to what I have dreamed up. I want bi-directional data and my idea is
    to send a chunk each way during each ac cycle...one chunk on one polarity and one chunk on the other..not
    exactly simultaneous but close enough. I figure with a 400 cycle/sec rate I could xfer 50 characters/sec if I
    only sent one bit per each part of the cycle. With a processor at each end capable of 20mips minimum I should be
    able to do much better than that. also, these terminals won't need to do I/O at breathtaking speeds. Just enough utility
    to keep you from having to go to the remote device to check its operation will do.

    @kwinn
    That sounds good, so you used coax in the same way I am thinking of doing smile.gif
    Any idea how many feet I might expect to be able to do this using 2 wires with
    conductivity at least as good as rg58?
    The modems would be an easy way to handle the data...but it would introduce
    extra costs and I don't need that much speed. Phone cable would make it much easier
    to do this but I'd really like to try and make it work with just 2 wires.


    Thanks all smile.gif
  • Mike GreenMike Green Posts: 23,101
    edited 2009-06-25 17:02
    How about using a variation (simplification) of the Dallas Semiconductor 1-Wire protocol or even the 1-Wire protocol itself? It only uses two wires (signal and ground), supplies power to the peripheral device(s), and supports bidirectional data transfer. It works. There are support chips available. There are all sorts of application notes and white papers on its use, on the effects of noise, etc.

    www.maxim-ic.com/products/1-wire/
  • HollyMinkowskiHollyMinkowski Posts: 1,398
    edited 2009-06-25 17:25
    @Mike Green

    Thanks Mike!
    That looks really usable. If I was any good with hardware I would probably
    have known of that system.

    Software is pretty much all I'm good at right now...but I'm working on it... I have a stack of electronics books for Beginners, Dummies, Idiots..etc smile.gif
  • Mike GreenMike Green Posts: 23,101
    edited 2009-06-25 18:33
    There are two 1-Wire Master drivers in the ObEx, one entirely in Spin and the other partly in assembler.

    The hardware is very simple ... a pullup resistor to Vdd ... The Propeller's 3.3V will do for most devices. Some devices will only work with a pullup to +5V and some devices need an active pullup that comes on briefly after a zero-one transition. The Application Notes and datasheets for the devices involved have suggestions for how to do this.
Sign In or Register to comment.