Use a Raspberry PI connected to ten Dallas 1 wire temperature sensors to Monitor Your Boiler with Home Assistant & RasberryPi and send the results to a MQTT server.
Main Software Repository
Install the program into opt/ThermoPI-Cottage or any suitable location. (Some people like /usr/local/bin instead of /opt) Make sure the username that is going to be running this script has access to the files and is able to get at python and anything else needed and used here-in.
You will need to rename the file MYsecretsSample.yaml to MYsecrets.yaml. Edit the contents of the new MYsecrets.yaml to match your MQTT & Home Assistant installation and requirements. You will also need to supply the full path to the secrets file in the Get the parameter file section of this python code around line 90.
You will need to determine the unique serial number of each probe and put that in the parameter file. Here is a good primer on how to find these: Get the Probe Serial Numbers. To figure out which is which, simply use a glass of ice water to cool the probes one by one. Watch the temperature change and mark them. Set-up the parameter file accordingly.
This program grabs the 2nd half of the MAC address to use as the device ID. This only works consistently when there is only 1 Ethernet interface configured or you have your multiple interfaces cloned to the same MAC Address. For instance if it boots from WIFI, it will grab that MAC, and if it uses the Ethernet cable or a USB interface, it will grab that MAC. You get my point. This can be avoided by hard coding the DeviceID with the random and unique number of your choice. Also I have not tested this with IP6 addresses. If you have solutions to any of this, please share.
AUTO-Start
Here is a good reference on setting up a program to run from systemd. Use it to get familiar with the process.
How-To Geek on ‘Startup With Systemd’
To run the program at boot in order to get constant readings, there is the ThermoPICottage.service to run this as a service with load-service.sh there to set it up as a service.
The load-service.sh script will stop and scratch reload the service from the local repository (Once you get all the permissions happy).
The user in the ThermoPICottage.service should match the user that owns the files in the cloned directory and for security reasons should not be root or pi.
The cottRestart.sh is the script to quickly restart the process if needed during troubleshooting. I found it helpful.
Requirements
Program requirements (as written):
- Python 3.6 or better
- PyYAML For reading the YAML parameter file
- W1ThermSensor For 2 wire temp sensors (DS18B20)
- paho-mqtt For MQTT broker connection
If you have any questions, comments or additions be sure to add an issue and bring them up on my Discord Server:
Below is roughly the circuit used with this program:
YT Chapter Breaks:
00:00 Introduction
02:00 Current systems in the house
03:00 How this Boiler Works
07:45 My solution to Monitoring
11:06 HINT: Connecting a lot of Dallas Sensors
11:54 Installation 14:38 OOPS While Testing
15:30 cottage.py Configuration file
17:20 Program Review cottage.py
19:20 Summary
Episode: E083
Video related links:
For my install I used this adapter board to connect the probes:
https://www.amazon.com/Screw-Terminal-Breakout-Module-Raspberry/dp/B08LH97XCR?tag=drzzs0e-20
These are the sensors I used:
https://www.amazon.com/dp/B08W27W7LJ?tag=drzzs0e-20
These are the JST Connector pigtails I used:
https://www.amazon.com/HKBAYI-50Pair-50sets-Connector-WS2812B/dp/B00NBSH4CA?tag=drzzs0e-20
Main Software Repository on GitHub:
https://github.com/SirGoodenough/ThermoPI-Cottage
#WhatAreWeFixingToday
#SirGoodEnough
Contact Links:
What are we Fixing Today Homepage / Website:
https://www.WhatAreWeFixing.Today/
Channel Link URL: (WhatAreWeFixingToday)
https://bit.ly/WhatAreWeFixingTodaysYT
What are we Fixing Today Facebook page (WhatAreWeFixingToday):
https://bit.ly/WhatAreWeFixingTodaybFB
What are we Fixing Today Twitter Account (Sir GoodEnough):
https://bit.ly/WhatAreWeFixingTodayTW
Discord Account: (Sir_Goodenough#9683)
https://discord.gg/Uhmhu3B
Please help support the channel:
If you would like to donate anything to this channel, please use this address:
C/O: Sirius GoodEnough
322 Buena Vista Ave.
Department: DYT
Waukesha, Wisconsin, 53188-3602
Link to this video on YouTube: https://youtu.be/tzrRumiy6fM
video add-ins provided by:
spinny,
Video by Tech VideoStack from Pixabay
chalkboard
Video by imotivation from Pixabay
rocky
Video by mohamed Hassan from Pixabay
SirGoodenough Guy Animations Courtesy 3ATIVE Studios https://www.3ative.com/
Music from YouTube Library: Shawl_Paul by Norma Rockwell Compressor_Works_Twang by Max McFerren The Truth by Anno Domini Beats Blacksmith by Godmode