In case anyone finds their way here via google here is an update now that I have the device all modded successfully.
As per my previous post there are in fact 2 chips on the device, 1 of which was an ESP8266 (TYWE3S), so it was game on for getting rid of the Cloud based firmware and installing my own firmware.
Further research into whether Tasmota would be suitable for a thermostat and/or how I would set it up led me to 2 alternative projects which were better suited to the task:
The second of the 2 projects is a fork of the first project with a few enhancements.
Personally I elected for the fashberg version. This is in no way an endorsement and I haven’t run a detailed comparison between the 2, however, there were two main reasons for my choice
It appeared that the project was more active with more regular commits and updates
The relay state calculation
Both GitHub projects have detailed instructions for flashing. Personally I found it a bit more tricky than other devices I’ve flashed but once I followed the detailed instructions paying particular attention to the need to connect IO15 to GND and EN to VCC I was able to flash successfully via ESPTool.
Once flashed I was able to see the new AP created by the device and connect to it, configure the WIFI and MQTT settings. If you’ve flashed Tasmota before then the interface is fairly similar. The only thing lacking was the ability to configure a 2nd WIFI router, which for me has been very useful in Tasmota.
A bit of time later familiarising myself with the interface and it was all quite simple to setup the scheduling for the thermostat and check that all the settings were being applied to the device and vice versa if I changed the settings on the device.
Subscribing to the MQTT topic I can see the messages being published by the device, and if I publish a command the device receives it and responds as expected.
So all in all the experiment has been a success and I now have a smart thermostat without the Cloud firmware. Next step is to integrate this with openHAB but that should be easy now I’ve got the firmware sorted.
One additional point: which for me is probably more satisfying than unlocking the firmware to gain access to MQTT control. With the stock firmware when you change from “Scheduled” mode to “Manual” mode i.e. when you want to raise or lower the temperature temporarily, the device remains in “Manual” mode unless you physically change back to “Schedule” mode, so if you raise the temp and forget to switch back the thermostat remains on the higher setting. However, the new WThermostatBeca firmware has a setting “Switch back to Auto mode from manual at next schedule period change” which does exactly as it says…if you switch to “Manual” mode the device will automatically switch back to scheduled mode at the next schedule period. So no more having the device remain on high because we forget to switch it back . Of course if this is not what you want then disable the setting.