I have just booted up a HestiaPi Classic for the first time in ages. The upgrade check on the settings screen claims it is up to date but I found topics on here including the Krack wifi vulnerability that makes me think it might not be.
The settings page says:
|Current Engine version:|0.1.2|
|Current Web version:|0.1.6|
Is that really still current? If not, what should I do to update, please? Does the Touch img work on the Classic too? Thanks in advance for any advice.
Hello slef and welcome to the club!
The HestiaPi Classic, assuming we are talking about the one in a rectangular case and not this one, is at least 4 years old that we stopped supporting.
Yes, rectangular case. So there is no HestiaPi software for it any more?
Then I will treat it as a plain RPi 2 with some cool add-ons, start from some current plain image that supports that and write some code to drive the add-ons.
You can start by installing openHAB (or openHABian even better) and install the addons and support for the buttons, the relays, the LCD and of course the sensor.
Could you offer any pointers on how to talk to the LCD with openHAB most easily, please? I searched the openHAB documentation for buttons and LCD and did not really get anything I understood. I have copied the LcdDisplay.java from the installed hestia because it seemed like it had useful information on the GPIO connection. Anything you can remember will probably make more sense than me stumbling around trial-and-error.
I’ve also been experimenting with emonSD because it’s already used by some users of the same model heater as ours. I’ve got the sensor working but not buttons, LCD or relays yet. I’m unclear whether that will only monitor or if there is some extension to do control, other than the “DemandShaper” app.
I don’t see support for such LCD on openHAB. Look around for LCD 1602 or 16x02 (means 16 characters, 2 lines). If you don’t find anything, either search for a screen someone else has integrated with openHAB or go headless (no screen) and use your phone app.
For buttons and relays, there is the GPIO plugin that would be able to detect button presses and command each relay to turn on or off. You would need to configure the plugin for the pins used for the buttons (used as input) and the relays (used as output). After that you should look into rules and how they interact with buttons and relays through the GPIO plugin. Lastly find a way to read the temperature sensor (I think it is the DS18B20) with the OneWire or 1w method in openHAB (I believe there is a plugin for this too). Once you can read the sensor simply include the temperature in the rules you created before.
Surely all the above are a lot of work but you will learn a lot from each small step and you would be able to customise your thermostat the way you want it
In the end, I used Node-RED to drive the LCD and buttons and send mqtt commands to devices, including a python script that talks to the heatpump controller. I expect to control the relays the same way once I figure out what to use them for, using the pin info from LcdDisplay.java and similar files.
The w1-gpio overlay exposes the temperature sensor as files in /dev and a python script using w1thermometer sends the temperature to mqtt, which is used to update the display. Some other messages cause the display to light up, as does pressing H.
So the hardware is in use and all seems solid, thanks. I’m not using openhab because I don’t really see the need for it and I would find it difficult to customise.