Easiest way is to use samba. Go to config\custom_components\dbuezas_eq3btsmart or which ever version of eq3 integration you use if not Dbuezas and comment out the line as below and save. This will open the options up again in the integration
oh, i misunderstand the change, i thought i need to comment it in, not out. After the change and a restart i changed the BT adapter to local, but it does not work either.
Is there a possibility to set a predefined pin code that would prevent cheeky individuals from accessing my thermostats?
I would really appreciate that feature but don't know how difficult that would be to implement.
I needed to repair them for different reasons and it was always quite a bit of a hassle. I thought if one could pre-define the pin code, this would greatly improve the rollout process, especially if there are many thermostats to be connected.
I've been trying to crack the microcontroller firmware for a long time and haven't been able yet, even though I got really far. This would potentially make this possible. Until then I don't think it is
It was just a suggestion for my side assuming it wouldn't be, hopefully, too difficult, however, what you have achieved already and how you have helped to keep these devices useful and integrated is more than I had ever expected.
I managed to decrypt the microcontroller firmware almost fully, but if i try to change it, the darn thing refuses to boot.
My hope is to add battery voltage reading and real measured room temperature outputs. And configurable boost duration. All of these technically possible if i was only able to get it to accept my modified firmware.
I am not sure if the one that decides what the pin is the stm8 or the ble chip, but obviously both get it because it is shown in the lcd.
And after months of failures, I managed for the first time to get the device to boot with a tiny change: it reports being version 1.78! This means it is possible to make another change that will give me the firmware and that unlocks everything cleanly!
It really looks like we’ll finally have community firmware for the eq3!
Open for feature requests for the first version. It will take a couple weeks, but i have the full firmware now and can change it at will and flash via ota.
The ones i already plan are:
Report measured room temperature
Show room temperature in lcd (instead of target temperature) when child-lock is on
Configurable boost time and valve open %
Report battery voltage (and not just “low battery”)
Import/export full eeprom config (comfort/eco temperatures, weekly schedules, …)
It may even be possible to modify the Bluetooth firmware to include valve state, current real and target temperature, etc in the advertisement packet, so no more connecting just to fetch state. And use bthome as protocol. Wouldn’t that be something…
Wow it worked!
And not only that, when the child lock is on, button presses and encoder wheel will be sent as events to home assistant to use them as input for automations.
And the pairing pin will be changeable and persistent. And the best part is that connection is only needed to send commands, all reporting (temperature , battery, etc) is all via advertisement, so no extra battery usage, no persistent connection, etc
I’ll take a look. It’s likely the target temperature is stored in 8 bits, so internally the range at 0.1°c of resolution would only reach 25.5 max. One could have an offset of 5°C so it reaches 30, but the change then snowballs into a massive assembly language refactor and high risk of weird bugs.
I’d rather stay away of the code that deals with temperature regulation for the first version
I took a luck. The setpoint logic is in 0.1 resolution, but the weekly schedule and all commands, and the setpoint variable itself is in 0.5°c resolution.
It may be possible to add a second “trim” variable that adds 0 to 0.4°c to a manually set temperature, but for now it is a bit too hacky to make me feel confident.
The good news is the thermostat will push state changes with virtually no delay without a persistent connection. Room temperature, battery voltage, window flag, etc should all be reported pretty much in real time without killing the battery. Plus using the buttons of the radiator as home assistant triggers when child lock is enabled (weird feature, but why not)
More news:
Bluetooth pairing with a fixed, user-configurable PIN can now be set up directly from Home Assistant.
Connectionless advertisements push the current temperature and the full EQ-3 state via BTHome, with no delay — and optionally encrypted, using a key you configure yourself.
So you can run it however you like: leave everything unencrypted and pairing-free, or lock it all down. And if you want, you can reuse the same PIN and encryption key across every EQ-3 in your home.
But this will require my custom eq3 integration. With the one that comes with home assistant it will be more basic.
Eventually i can push things to the HA core once i get some feedback and i figure out how to make it compatible with all firmwares.
I think the eq3 will end up being one of the most HA friendly radiator valves around