Maker Pro
Maker Pro

Serial data bus help needed [CROSS-POST]

M

Mr. Cabdriver

Hi,

I need a serial bus can support speeds up to 10 mbit/s with error correction
included and that can carry signal up to 50 meters (about 150 feet) with no
signal repeaters. Is there such a thing that you know of?

The plan is to use Atmel's 8051 chips (haven't decided wich model exactly
yet) to be attached to that bus and controlled by the master controller, a
PC and to be able to do various switchy things with them (lights control,
locks, etc). I've moved into a new home recently and i obviousley need to
make it possible to lock myself in LOL.

Thanks for the input,

Boris
 
B

Baron

Mr. Cabdriver said:
Hi,

I need a serial bus can support speeds up to 10 mbit/s with error
correction included and that can carry signal up to 50 meters (about
150 feet) with no signal repeaters. Is there such a thing that you
know of?

The plan is to use Atmel's 8051 chips (haven't decided wich model
exactly yet) to be attached to that bus and controlled by the master
controller, a PC and to be able to do various switchy things with them
(lights control, locks, etc). I've moved into a new home recently and
i obviousley need to make it possible to lock myself in LOL.

Thanks for the input,

Boris

Ethernet !
 
C

CWatters

Mr. Cabdriver said:
Hi,

I need a serial bus can support speeds up to 10 mbit/s with error correction
included and that can carry signal up to 50 meters (about 150 feet) with no
signal repeaters. Is there such a thing that you know of?

The plan is to use Atmel's 8051 chips (haven't decided wich model exactly
yet) to be attached to that bus and controlled by the master controller, a
PC and to be able to do various switchy things with them (lights control,
locks, etc). I've moved into a new home recently and i obviousley need to
make it possible to lock myself in LOL.

Try one of these instead...
http://www.controlbyweb.com/webrelay/index.html

Its a relay that can be controlled over a lan. It even contains a web server
so you can monitor it's status. They have multiple output versions and some
with inputs.
 
L

Lostgallifreyan

Try one of these instead...
http://www.controlbyweb.com/webrelay/index.html

Its a relay that can be controlled over a lan. It even contains a web
server so you can monitor it's status. They have multiple output
versions and some with inputs.

Hell yes! Just imagine the fun Flanders could have had in Sounding Brass,
telling Swann that his lightswitches were on the internet. >:)
 
I

Ian Malcolm

CWatters said:
Try one of these instead...
http://www.controlbyweb.com/webrelay/index.html

Its a relay that can be controlled over a lan. It even contains a web server
so you can monitor it's status. They have multiple output versions and some
with inputs.
That *nearly* meets the OP's specs if he uses 10-baseT ethernet.
(serial, 10Mb/s, error correction) but unfortunately isn't a bus and
with the modules at ~$100 each, may not be that attractive to a hobbyist.

OTOH if he scrounges up some old RTL8019 network cards (probably the
best in terms of easy availaibilty at scrap prices and free code on the
net to drive it from an 8051), he could run 10-base2 Ethernet which
*fully* meets the specs he gave us (good up to 185 m) and would be even
more fun than the *neat* bit of kit you showed us :)
 
J

Jim Backus

Hi,

I need a serial bus can support speeds up to 10 mbit/s with error correction
included and that can carry signal up to 50 meters (about 150 feet) with no
signal repeaters. Is there such a thing that you know of?

The plan is to use Atmel's 8051 chips (haven't decided wich model exactly
yet) to be attached to that bus and controlled by the master controller, a
PC and to be able to do various switchy things with them (lights control,
locks, etc). I've moved into a new home recently and i obviousley need to
make it possible to lock myself in LOL.

Why do you need to run at 10 Mbps to control locks and lights?

The human eye barely detects the flicker of lights running at 50 Hz so
a delay in switching a light of 20 ms will be unnoticable. Locks,
which will ultimately be electromechanical, will not respond is much
less than 50 ms.

Start by deciding how many items you want to control and the required
response time. The number of tiems will determine the message length
and the speed of response the data rate. You'll probably find that
running at 9600 bps will be quite fast enough.

Wireless such as Zigbee or Zwave might be more convenient.
 
M

Mr. Cabdriver

You'll probably find that
running at 9600 bps will be quite fast enough.

Wireless such as Zigbee or Zwave might be more convenient.

Yes, but this is only phase 1... who knows what kind of stuff i'll want to
send thru that bus in the future... I've arbitrarily chosen 10 Mbit/s
because it seems possible for such distance and yet it can support a large
number of devices connected, maybe some of wich will require more than
ON/OFF control. Ethernet is out of the question because i don't want to pull
cat5 cable to every little device i have there and also don't want to have
walls crawilng with switches or hubs or whatever.

And i don't want something propriertary and already "key-in-hand" done - i
can't program that sort of stuff and it kills hobbyst movement idea
alltogether. And all those corporations making gadgety stuff appear and
dissapear over night or at least they forget their old buyers when it's time
to sell something new.

I searched for an idea if this already exists - why re-invent it? If it
doesn't i'll design my own data bus that willl be capable to comply with my
requests or more. It just prolongues the whole project by month or two.

Thanks anyway
 
C

CWatters

Mr. Cabdriver said:
Yes, but this is only phase 1... who knows what kind of stuff i'll want to
send thru that bus in the future... I've arbitrarily chosen 10 Mbit/s
because it seems possible for such distance and yet it can support a large
number of devices connected, maybe some of wich will require more than
ON/OFF control. Ethernet is out of the question because i don't want to pull
cat5 cable to every little device i have there and also don't want to have
walls crawilng with switches or hubs or whatever.

CAT 5 is about the cheapest wire you can get. Even if you didn't use
Ethernet you would probably want to use CAT 5 wire.
 
I

Ian Malcolm

CWatters said:
CAT 5 is about the cheapest wire you can get. Even if you didn't use
Ethernet you would probably want to use CAT 5 wire.
Ditch the hubs and go for RG58 AU 10Base2 ethernet. At least it can be
daisy chained!

Any *wired* solution except Ethernet will be lucky to reach 1Mbit/s 10
to 100 Kbps will be *far* more achivable.
 
M

Mr. Cabdriver

Did a test on a 60 meter piece of CAT.6 cable with oscilloscope, comparing
the signal on entry and exiting signal after a roundtrip thru my appartment
(wich included going over or next to CRT TV's, heaters, power lines, etc.) @
10MHz square signal (my oscilloscope is way to old to go over that) and
signal distortions were close to none... I'm gonna build a differential
signal generator and receiver today too see if i can fix the noise and
distorsions a bit more.

Currently with any luck i'd be able to squeeze in about 2 Mbit/s useful data
into this system (wich is way over what i need for phase one), plus about
another 1.5 Mbit for error corrections, serial device addressing and other
overhead, i've not yet decided on protocol, but it will probably be similar
to USB, although not at all compatible ;-)
So if I manage to clean up signal a bit more, i should have near-10Mbit/s
experience on a 50 meter bus. The cat6 cable is declared to carry 250 MHz, i
hopefully will ever need only 1/10th of that clock speed :)


Another idea i've had is to create "smart" signal repeaters along the line
since latency isn't really an issue, at least not now. They'd read the
bit-stream, analyze it, check if data+address bits "hash" agree with control
bitstream and if yes, forward it further on the line... if no, signal
repeat. But i'm gonna hold on this complication until i've got no other
smarter solutions.

My head hurts :p

Boris
 
C

CWatters

Mr. Cabdriver said:
Did a test on a 60 meter piece of CAT.6 cable with oscilloscope, comparing
the signal on entry and exiting signal after a roundtrip thru my appartment
(wich included going over or next to CRT TV's, heaters, power lines, etc.) @
10MHz square signal (my oscilloscope is way to old to go over that) and
signal distortions were close to none... I'm gonna build a differential
signal generator and receiver today too see if i can fix the noise and
distorsions a bit more.

Currently with any luck i'd be able to squeeze in about 2 Mbit/s useful data
into this system (wich is way over what i need for phase one), plus about
another 1.5 Mbit for error corrections, serial device addressing and other
overhead, i've not yet decided on protocol, but it will probably be similar
to USB, although not at all compatible ;-)
So if I manage to clean up signal a bit more, i should have near-10Mbit/s
experience on a 50 meter bus. The cat6 cable is declared to carry 250 MHz, i
hopefully will ever need only 1/10th of that clock speed :)


Another idea i've had is to create "smart" signal repeaters along the line
since latency isn't really an issue, at least not now. They'd read the
bit-stream, analyze it, check if data+address bits "hash" agree with control
bitstream and if yes, forward it further on the line... if no, signal
repeat. But i'm gonna hold on this complication until i've got no other
smarter solutions.

My head hurts :p

Boris

It sounds like you are making a lot of work for yourself. Can't you use
something like X10 or it's later rivals?
 
M

Mr. Cabdriver

It sounds like you are making a lot of work for yourself. Can't you use
something like X10 or it's later rivals?

There's no fun in that!
 
J

Jim Backus

Yes, but this is only phase 1... who knows what kind of stuff i'll want to
send thru that bus in the future... I've arbitrarily chosen 10 Mbit/s
because it seems possible for such distance and yet it can support a large
number of devices connected, maybe some of wich will require more than
ON/OFF control. Ethernet is out of the question because i don't want to pull
cat5 cable to every little device i have there and also don't want to have
walls crawilng with switches or hubs or whatever.

Good point.

I took the systems engineering approach of looking at the stated
requirement and proposing an approriate solution. Unless you intend to
run streaming audio or similar, I still think that a slower speed
could do everythng you want.

At 10 Mbps you'd certainly want a balanced line system, which is what
Cat 5 cable is designed for. As for protocol, synchronous data would
be the way to go, even though somewaht more complex. Again Ethernet
runs synchronous data (AFAIK). It may be that balanced line drivers
and receivers designed for ethernet would be the best components to
use.

Final comments: although people refer to Ethernet, they almost
certainly mean TCP/IP over Ethernet. Raw Ethernet data protocol is
simpler and could still be useful to you even if you don't want to
follow an existing standard. Just because you don't want to lock
yourself into a proprietary standard doesn't mean that you shouldn't
use existing technology. Keep your brainpower for solving your control
needs not reinventing low level protocols.
 
B

Baron

Jim said:
Final comments: although people refer to Ethernet, they almost
certainly mean TCP/IP over Ethernet. Raw Ethernet data protocol is
simpler and could still be useful to you even if you don't want to
follow an existing standard. Just because you don't want to lock
yourself into a proprietary standard doesn't mean that you shouldn't
use existing technology. Keep your brainpower for solving your control
needs not reinventing low level protocols.

I agree! Raw Ethernet was inferred, although I was thinking more co-ax
rather than USTP particularly since the transceiver chips are cheap.
 
R

Rich Grise

CAT 5 is about the cheapest wire you can get. Even if you didn't use
Ethernet you would probably want to use CAT 5 wire.

I once ran about 100' of that plain 4-wire telephone wire, running
ethernet through it, with just TX/TX ret and RX/RX ret, and it worked
100%, albeit only at 1 MHz.

Cheers!
Rich
 
Top