Hello,
I am using a BBB to create a weighted-power-metering program for a solar-powered microgrid - where one solar power system distributes power to numerous off-grid cabins. Power usage for each cabin will be "weighted" based upon the battery's State of Charge (SOC%) - encouraging use during sunny weather, and discouraging use during cloudy.
I therefore want to display a four digit 7 segment display in each cabin - the first digit to notify whether the generator has run in the last 12 hours (and during which power will be weighted heavily), and the last three simply to display the battery's present SOC%.
So I want numerous Adafruit displays with I2C backpacks. All displays will read exactly the same information sent from the BBB.
And here is where the trick(s) comes in:
1) Some cabins will be up to 300 ft away from the BBB.
2) The neighborhood has requested that wireless signals not be used.
3) This is in a high lightning prone area - so I want to isolate all of the wires going into the trenches to each cabin - so that no surges return to fry the BBB.
I am about to give up on figuring this out, and simply say to the neighborhood that they must use a wireless transmitter and wireless displays.
Does anybody have any ideas on how this could be achieved without wireless?
Is there an I2C signal extender/ isolator that can have multiple parallel branches of wires downstream?
Will LC issues in the transmission lines be too problematic to overcome?
BBB with multiple remote isolated identical displays
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- cfarmer
- Posts: 4
- Joined: Wed Mar 18, 2015 11:20 am
- adafruit_support_mike
- Posts: 67485
- Joined: Thu Feb 11, 2010 2:51 pm
Re: BBB with multiple remote isolated identical displays
For that kind of distance, it will be easier to put a small microcontroller board like the Pro Trinket on each LCD, then use an RS485 connection between the BBB and the remotes.
RS485 only defines the electrical characteristics of the bus and the transmitters/receivers that use it, so you can use any data format you want. In this case, a Serial/UART connection would be easy to do. You can connect a single transmitter to the BBB and a receiver to each microcontroller with a display, and the microcontrollers will all read the same signals at the same time.
The working range of RS485 is up to 4000 feet, and it's easy to use optoisolators between the transmitter/receivers and the devices that want to talk or listen.
RS485 only defines the electrical characteristics of the bus and the transmitters/receivers that use it, so you can use any data format you want. In this case, a Serial/UART connection would be easy to do. You can connect a single transmitter to the BBB and a receiver to each microcontroller with a display, and the microcontrollers will all read the same signals at the same time.
The working range of RS485 is up to 4000 feet, and it's easy to use optoisolators between the transmitter/receivers and the devices that want to talk or listen.
- jFer
- Posts: 1
- Joined: Wed Apr 08, 2015 3:05 pm
Re: BBB with multiple remote isolated identical displays
Thanks for your response, Mike. I was thinking this project would need a 485 network, but I'm completely new to this area and have been trying to learn as much as possible on the subject. I have a few follow-up questions in order to help clarify things for me.
First off, could you recommend any particular 485 transmitters or receivers that would work well with the bbb and pro trinket? I've been reading datasheet after datasheet, but I'm a software guy and am feeling completely out of my skill area. Also, would opto-isos work for lightning surges? Or would we need something more robust, like a rs485 lightning surge protector (such as an ISO-485-P from SerialComm)? And could this isolation could be thought of as a completely separate isolation than when referring to an isolated transceiver? What I mean is, an isolated transceiver isolates its power supply to prevent ground loops, while the lightning protection would isolate the data lines in the case of large spikes from a nearby lightning strike...am I thinking about this correctly? And this lightning isolator would be placed between the transmitter/receivers and the bbb/pro trinkets, right? And, in this scheme, the transmitter/receivers would get fried in the event of a lightning strike, but the rest of the equipiment would be protected, correct?
I've also been reading a lot of conflicting information on the 3rd ground wire of 485. Some say it's always need, others say as long as your tranceiver power supplies are isolated, its not needed. Any clarification on this?
In reference to sending the actual data. Basically, if I have only one transmitter getting its data from the bbb, then I could have up to 32 receivers receiving this data, and as long as each receiver is enabled, it will read the same data from the bus at the same time (i.e. I don't need to address each receiver independently), correct?
Much thanks for any help you or anyone else could offer on this.
First off, could you recommend any particular 485 transmitters or receivers that would work well with the bbb and pro trinket? I've been reading datasheet after datasheet, but I'm a software guy and am feeling completely out of my skill area. Also, would opto-isos work for lightning surges? Or would we need something more robust, like a rs485 lightning surge protector (such as an ISO-485-P from SerialComm)? And could this isolation could be thought of as a completely separate isolation than when referring to an isolated transceiver? What I mean is, an isolated transceiver isolates its power supply to prevent ground loops, while the lightning protection would isolate the data lines in the case of large spikes from a nearby lightning strike...am I thinking about this correctly? And this lightning isolator would be placed between the transmitter/receivers and the bbb/pro trinkets, right? And, in this scheme, the transmitter/receivers would get fried in the event of a lightning strike, but the rest of the equipiment would be protected, correct?
I've also been reading a lot of conflicting information on the 3rd ground wire of 485. Some say it's always need, others say as long as your tranceiver power supplies are isolated, its not needed. Any clarification on this?
In reference to sending the actual data. Basically, if I have only one transmitter getting its data from the bbb, then I could have up to 32 receivers receiving this data, and as long as each receiver is enabled, it will read the same data from the bus at the same time (i.e. I don't need to address each receiver independently), correct?
Much thanks for any help you or anyone else could offer on this.
- adafruit_support_mike
- Posts: 67485
- Joined: Thu Feb 11, 2010 2:51 pm
Re: BBB with multiple remote isolated identical displays
I use SN75176B transceivers, but those are nothing special.. low-cost, two-way communication for one endpoint per chip.jFer wrote:First off, could you recommend any particular 485 transmitters or receivers that would work well with the bbb and pro trinket?
In general, chip selection is a process of reading datasheets looking for something that won't work in your application. If you can't rule out a chip for a specific reason, you put it in the list of possibles. Once you have half a dozen possibles, you compare them to see which one you like best on performance and price. If you don't have a specific preference, pick on and give it a try.
Plain optoisolators should be fine. The surge protector is for unisolated lines inside something like a factory.jFer wrote:Also, would opto-isos work for lightning surges? Or would we need something more robust, like a rs485 lightning surge protector (such as an ISO-485-P from SerialComm)?
Pretty much.jFer wrote:And could this isolation could be thought of as a completely separate isolation than when referring to an isolated transceiver? What I mean is, an isolated transceiver isolates its power supply to prevent ground loops, while the lightning protection would isolate the data lines in the case of large spikes from a nearby lightning strike...am I thinking about this correctly?
An isolated device usually has a transformer between wall power and the device so there's no direct (technical term 'galvanic') connection between the device and the wall supply. That does prevent ground loops when you connect devices to each other, but it's also a safety thing. In a properly isolated device, no short circuit can expose someone touching/working on the device to wall power.
Optoisolators also eliminate ground loops between devices, but don't provide safety from wall power.
For an optoisolated network, you'd need one surge protector for each device.jFer wrote:And this lightning isolator would be placed between the transmitter/receivers and the bbb/pro trinkets, right?
The surge protector's job is to keep the transmitters/receivers from getting fried. Optoisolators would keep a voltage spike in the line between endpoints from damaging the transmitters/receivers, and power isolation would prevent a spike on the power lines from killing the BBB, etc.jFer wrote:And, in this scheme, the transmitter/receivers would get fried in the event of a lightning strike, but the rest of the equipiment would be protected, correct?
The 3-wire version is only useful for unisolated data lines.jFer wrote:I've also been reading a lot of conflicting information on the 3rd ground wire of 485. Some say it's always need, others say as long as your tranceiver power supplies are isolated, its not needed. Any clarification on this?
In reference to sending the actual data. Basically, if I have only one transmitter getting its data from the bbb, then I could have up to 32 receivers receiving this data, and as long as each receiver is enabled, it will read the same data from the bus at the same time (i.e. I don't need to address each receiver independently), correct?
Much thanks for any help you or anyone else could offer on this.[/quote]
- cfarmer
- Posts: 4
- Joined: Wed Mar 18, 2015 11:20 am
Re: BBB with multiple remote isolated identical displays
We are now thinking of creating an intranet via powerline communications (PLC)- to avoid using any underground communications cables at all.
There would be one powerline adapter at the BBB, as well as one plugged in at each cabin.
Could we then connect a cabin's powerline adapter to a Pro Trinket / LED Backpack thru a "micro-USB to ethernet adapter" such as this:
http://www.amazon.com/Smays-Micro-USB-E ... B009XU6N54
???
Would this allow 1 way communication from the BBB to each display?
Thanks again for your time.
There would be one powerline adapter at the BBB, as well as one plugged in at each cabin.
Could we then connect a cabin's powerline adapter to a Pro Trinket / LED Backpack thru a "micro-USB to ethernet adapter" such as this:
http://www.amazon.com/Smays-Micro-USB-E ... B009XU6N54
???
Would this allow 1 way communication from the BBB to each display?
Thanks again for your time.
- adafruit_support_mike
- Posts: 67485
- Joined: Thu Feb 11, 2010 2:51 pm
Re: BBB with multiple remote isolated identical displays
It's possible (maybe), but would take a lot of work.
The Pro Trinket doesn't have a real USB port. Its bootloader emulates a USB connection well enough to download firmware, but that's a far cry from a USB stack capable of handling an Ethernet connection.
It's possible to emulate USB on an ATmega328, but once you have that connection layer you'd need to write a driver for the Ethernet hardware and a TCP/IP stack so the chip could communicate with the network.
To make any of that useful for the device's intended purpose, you'd have to leave enough Flash and RAM for the display code to run.
The Pro Trinket doesn't have a real USB port. Its bootloader emulates a USB connection well enough to download firmware, but that's a far cry from a USB stack capable of handling an Ethernet connection.
It's possible to emulate USB on an ATmega328, but once you have that connection layer you'd need to write a driver for the Ethernet hardware and a TCP/IP stack so the chip could communicate with the network.
To make any of that useful for the device's intended purpose, you'd have to leave enough Flash and RAM for the display code to run.
- cfarmer
- Posts: 4
- Joined: Wed Mar 18, 2015 11:20 am
Re: BBB with multiple remote isolated identical displays
Would you then recommend using micro-controllers at each hut to receive the communications signals and translate that to the displays?
What's the cheapest micro-controller with an ethernet port that already has appropriate drivers and a TCP/IP stack?
I was hoping to use something smaller and cheaper than a micro-controller for this job, since all I am doing it sending small packets of data to the LED displays.
Thanks again for your help. I'm an electrician, but didn't have much experience with communications and micro-controllers.
What's the cheapest micro-controller with an ethernet port that already has appropriate drivers and a TCP/IP stack?
I was hoping to use something smaller and cheaper than a micro-controller for this job, since all I am doing it sending small packets of data to the LED displays.
Thanks again for your help. I'm an electrician, but didn't have much experience with communications and micro-controllers.
- adafruit_support_mike
- Posts: 67485
- Joined: Thu Feb 11, 2010 2:51 pm
Re: BBB with multiple remote isolated identical displays
TCP/IP over Ethernet is a relatively expensive way to transmit data. A Raspberry Pi A+ is probably the lowest-price device that could handle the connection.
Please be positive and constructive with your questions and comments.