Multifunction CC2530 board for house heating controll

This started as recreating DIY Zigbee 4x DS18B20 temperature measurement. But now with a dedicated board with RJ11 plugs

In the past decade my dad has spend much of his free time making the “perfect” solar based hot water system that spans the entire free standing house. It started out as a single collector and evolved to close to 15m2 worth of collector panels, about 5 pumps in various places, 900L worth of water storage across 4 tanks, two heat pumps, and also 3 way valves in various places.

To add to this magnificence, I decided to suggest that we’d also start using home assistant for data collection for the (at this point) 12KW PV system he has also build.

Lots of HA evolution later, i added one single CC2530 based module with two DS18B20’s haphazardly soldered to it on some breadboard to see the temperature delta of the water running in and out of the solar collectors. This works, but all it can do is just show you two temperatures and that’s it.

So now, i have created this: A single PCB that allows you to plug in 4 sensors directly (although you could use splitters and change the code inside the module), Switch one SPDT relay using a transistor, And detect 3 binary inputs using optocouplers. plus some empty via’s for expansion. oh and most importantly: a programming port

.
Using this we can now plug in 4 sensors, Turn something on or off at the same location. And detect valve positions using limit switches. We’re planning on using this to see the 3 independant hot water loops that come out of the solar collector array plus the one shared return. The system itself is actually controlled by an arduino and already looks at about 27 different one wire sensors, but this is just for data collection with the power of home assistant.


It’s not an amazing diagram, but it works

To show you what the current CC2530 can do, this is what HA can keep track off with just two sensors

. If i could figure out a way to know the flow in the pipes i could even calculate how many kW of solar heat is being generated,

1 Like

It is now a bit later and the PCB’s have arrived. I already spotted an issue which is that i didn’t connect the reset pin of the CC2530 properly to the PROG header, so i need one extra bodge wire to flash them.
But the module connects to home assistant flawlessly and the status LED i put on there also works.

The three optocoupled inputs do work as intended and will show up as a on switch in HA if you short the two pins with a switch. I did not put a hardware external pullup on the DS18B20’s but maybe if i make another PCB i will add one using a switch so it can be enabled and disabled at will (and by reflashing)
In HA what you will see is 4 temperature sensors, 3 inputs, and 1 relay switch.
image

And because of the USB-B connection, once you have flashed the CC2530 you can just plug in a usb cable and it’ll be powered using a 3.3V regulator. Alternatively there is the two terminal block inputs(or outputs, and they’re non directions) to attach 5VDC to.