Communication over power bus? - Page 1
Forum section: electronics / beginners

author: rexxar
author_rank: Frequent Contributor
timestamp: May 09, 2014, 11:14:34 pm
content: Hi all, I'm tinkering with a design for a custom thermostat. It should be a simple thing, just a uC and some relays or triacs to switch the control lines, but the issue is I've only got two wires.The old mercury thermostat is set up exclusively for heat (no central A/C here), but the furnace can also switch the blower on independently, which we need in the summer. So far, I've just been moving the thermostat wires over to the air function manually, but I'd like to automate this. Running a new cable isn't really an option, as I'm renting and I really don't want to screw it up.My idea was to run I2C over the existing line and have a uC at each end, but that leaves the question of how to power the uC in the thermostat. I've tried searching for a way to do I2C over a DC bus, but haven't found any. Maxim makes a chip that will do this over AC, but it's $10 a piece!Is there an easy and cheap way to get some sort of comms and power over two lines? It doesn't even really have to be I2C, that's just the only protocol I've had experience with so far.

author: Dinsdale
author_rank: Regular Contributor
timestamp: May 10, 2014, 12:00:29 am
content: Have a look at these for example. There are other mfgs. also.http://www.avagotech.com/pages/en/optocouplers_plastic/plastic_isolated_20_ma_current_loop_transmitter-receiver/

author: rexxar
author_rank: Frequent Contributor
timestamp: May 10, 2014, 01:59:10 am
content: Quote from: Dinsdale on May 10, 2014, 12:00:29 amThat seems to be just for communication, I also need to send power along the same pair of wires.

author: Richard Crowley
author_rank: Super Contributor
timestamp: May 10, 2014, 02:15:28 am
content: Is the power AC or DC? Typical old-school thermostats are AC, IIRC.Do you need 2-way data communication? How fast?There are many ways to multiplex data over power lines.But details depend on additional requirements not yet disclosed.

author: rexxar
author_rank: Frequent Contributor
timestamp: May 10, 2014, 02:43:57 am
content: Quote from: Richard Crowley on May 10, 2014, 02:15:28 amI only need 1-way communication, and speed isn't important, as it's only going to send a byte or two at a time.What's there now is 24VAC, but it's not usable as a current source, as the thermostat itself closes the loop, it directly drives the relay coil. I've got a pile of DC driven relays, so I'll use a DC supply for the thermostat.

author: pipe
author_rank: Contributor
timestamp: May 10, 2014, 02:56:50 am
content: One method I like that's very simple is to let your microcontroller on the sensor side draw current from the power bus. Either by simply connecting a resistor from an MCU I/O, or with a resistor connected to a FET controlled by an MCU I/O. Since it will normally draw less than a few mA, you can adjust the current so that less than 5 mA means '0', and 10-20 mA means '1'. The microcontroller on the other side can sense this with a simple shunt resistor and a comparator.Crude and noisy but cheap and simple.

author: benjamin545
author_rank: Contributor
timestamp: May 10, 2014, 03:00:48 am
content: look at how Ethernet POE works. regular Ethernet works with a 5v signal, but with poe they will feed a transformer with a dc offset, so they can pump as much as 48v across it and on the other side a matching transformer separates the power from signal.id use something like rs422 or rs485 as my communication protocol.

author: rexxar
author_rank: Frequent Contributor
timestamp: May 10, 2014, 03:11:25 am
content: Quote from: pipe on May 10, 2014, 02:56:50 amSo you're suggesting having the remote uC conntected straight to the power bus, then having a FET switch in a parallel resistor? That's a neat idea! Crude and simple, I like it

author: SeanB
author_rank: Super Contributor
timestamp: May 10, 2014, 04:59:14 am
content: Normally a thermostat connects via a 3 or 4 wire link, with one being a common, and one being AC on, 2 being fan on and 3 being heat on. All run off 24VAC and short the wire to common to switch the function on. You can easily steal about 5mA from each line to power a microcontroller, as the relays need about 300mA to energise. You use a diode to half wave rectify the open circuit voltage and a simple 1 transistor low current regulator to provide power to the micro. To keep power on when the outputs are on you either have a pair of 8V zener diodes to provide the drop ( and a capacitor of about 2uF to allow an inrush pulse to engage the relay in parallel) so you keep a supply to the regulator to keep it running. Switch is a low gate current triac driven at low current so it barely has holding current.Another method is to have a local power store like a rechargeable battery pack and run off that with charging being done when the AC cycles off or when you have another switch open.