How to put many serial devices all on 1 wire

Thread Starter

THE_RB

Joined Feb 11, 2008
5,438
Hi, this is a description of a serial network I designed for my own home automation use back in 2009. I debated for some time whether to put it up on the net as it is nothing too original and it's quite low tech in this age of LAN and ethernet etc.

But it does have some advantages in that you can use many very cheap devices on a single data wire, and it uses standard serial and can work with cheap PICs with or without USART. Since this type of system doesn't seem to be discussed much I thought it was worth putting up on my web page just in case someone wants a low-tech reliable way to put a lot of cheap devices all communicating on a very simple serial wire.



http://www.romanblack.com/blacknet/blacknet.htm

The "round robin" system with incrementing wait periods was discussed many years ago on the PIClist (back in 2000?) but I might be the only person to actually build a working network with this system.

It combines a number of simple concepts working together like; multiple devices on one pull-up data line, devices taking turns, devices can be powered from the line, devices don't need to transmit (which allows large numbers of devices) and can be made with the lowest tech hardware like PIC 10F 12F 16F etc.
 

someonesdad

Joined Jul 7, 2009
1,583
I think this is a significant contribution -- thanks. Your thinking through both the hardware and protocol (then implementing them) means someone else can use them in a design with a lot less up front work than you've put into it. It looks nice for simple systems that don't need to share lots of data.
 

Thread Starter

THE_RB

Joined Feb 11, 2008
5,438
Thanks for the nice words. :)

I just made an update to that page as someone had asked me about a "minimum hardware" network;



This only requires one diode per PIC (or no parts per PIC if using bit banged serial). Remember as devices are never required to transmit or receive, there is no time usage for devices that just listen on the bus so it still allows hundreds of listening devices, or even hundreds of transmitting devices provided they don't all need to transmit at once.

This could be useful where someone needs to connect a whole heap of PICs together in one device (like a big display) or on a small distance network (like a heap of sensors etc).
 
Top