Ive uploaded a version 2.
Please check if it works for you.
Ive uploaded a version 2.
Please check if it works for you.
Thanks, it is working now. I can switch Geyser on and off via HomeAssistant and see the temperature, still need to setup the rest.
3 things Iâve noticed, not sure if it is something Iâm doing wrong.
Yes, TSE-TUYA. The same as on your photo earlier
And you have outside panel? Thatâs the collector.
Not sure why your data is off. Pump is also related to the panel outside.
And solar diff.
They are all related.
Yes I do have a collector, currently on 34 Celcius.
I see the new code has âelement_hoursâ added to the published results
Yes. Element hours is on newer versions of board it seems. Hence why it wasnât working as data length changed. 8 bits added.
Is it still not working? I have a friend coming today to collect a panel and he has a TSE from 2016
Will let you know if it works
For me the most important function is being able to switch off and on as well as to be able to read the temperature. Collector temp and temperature difference is not a big issue.
Hi Johann.
Which Sonoff device did you use?
(TH Origon, THE Elite, TH10 / TH16)
Would love to know how it is working out.
I have had a similar idea for a while, but did not know you could use their temp probe with Sonoff smart switches. I want to monitor and control the temp of the geyser based on a schedule, and turn off geyser during load shedding so it doesnât drain the batteries on the inverter when insufficient PV solar.
I already have a Geyserwise TSE setup on a Thermal Solar Geyser, so probably replace that with Sonoff TH device and a Sonoff Power device to measure the consumption.
Thanks - I did this and its working great. localtuya for local access and fast home assistant access. Normal Tuya app for cloud access (as and when needed). Next step I need to automate my geyser schedule around loadshedding. I have the ESP integration and have the loadshedding schedule in HA. Any tried and testing automation yamls you can share for doing this?
I used the history_stats built in integration in home assistant to count the time the element is on, per day. This gives me a run time throughout the day, which I use as a proxy for my electricity spend for my geyser.
Hi,
Thought I would add my setup to the discussion. I also went the route of removing the WBR and soldered a ESP32-C3 in its place. Thanks Jack for the pics showing which pins go where, it was a big help!
But instead pf going the custom firmware route I installed ESP Home and used the tuya component to get the board working. For those who are interested here is my complete ESP Home configuration file.
esphome:
name: geyserwise
friendly_name: GeyserWise
esp32:
board: esp32-c3-devkitm-1
variant: esp32c3
# Disable serial logging
logger:
baud_rate: 0
# Enable Home Assistant API
api:
encryption:
key: ***
ota:
password: ***
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Geyserwise Fallback Hotspot"
password: ***
captive_portal:
uart:
rx_pin: GPIO21
tx_pin: GPIO20
baud_rate: 9600
tuya:
sensor:
- platform: "tuya"
name: "Collector Temp"
sensor_datapoint: 108
unit_of_measurement: '°C'
- platform: "tuya"
name: "Geyser Temperature"
sensor_datapoint: 10
unit_of_measurement: '°C'
- platform: "tuya"
name: "Element Runtime"
sensor_datapoint: 109
unit_of_measurement: 'hrs'
- platform: "tuya"
name: "Error Code"
sensor_datapoint: 20
- platform: "tuya"
name: "Element Status"
sensor_datapoint: 13
- platform: "tuya"
name: "Pump Status"
sensor_datapoint: 101
number:
- platform: "tuya"
name: "Geyser Block 1 - Max Temp"
number_datapoint: 103
min_value: 30
max_value: 65
step: 1
unit_of_measurement: '°C'
- platform: "tuya"
name: "Geyser Block 2 - Max Temp"
number_datapoint: 104
min_value: 30
max_value: 65
step: 1
unit_of_measurement: '°C'
- platform: "tuya"
name: " Geyser Block 3 - Max Temp"
number_datapoint: 105
min_value: 30
max_value: 65
step: 1
unit_of_measurement: '°C'
- platform: "tuya"
name: "Geyser Block 4 - Max Temp"
number_datapoint: 106
min_value: 30
max_value: 65
step: 1
unit_of_measurement: '°C'
- platform: "tuya"
name: "Geyser Antifreeze Temp"
number_datapoint: 107
min_value: 0
max_value: 10
step: 1
unit_of_measurement: '°C'
- platform: "tuya"
name: "Geyser Solar Diff Temp"
number_datapoint: 102
min_value: 7
max_value: 15
step: 1
unit_of_measurement: '°C'
switch:
- platform: "tuya"
name: "Geyser"
switch_datapoint: 1
select:
- platform: "tuya"
name: "Mode"
enum_datapoint: 2
optimistic: False
options:
0: "Holiday"
1: "Normal"
The baud rate needs to be set at 9600. I tried other values but the component stopped working.
Also if you use the marked UART (RX/TX) pins, these are the same pins that ESP Home uses for its serial logger so you need to disable the logger in the configuration.
This has worked very well for me and I am happy with the results.
Iâve figured this out now - posting incase anybody else is having the same issue.
So the default available attributes are based on âstandard instructionâ there is an option to change to âDP instructionâ which modifies the standard payload and includes all attributes. To do this, you need to go to the device, and select âConfigure Control Instruction Modeâ then select âDP instruction modeâ
Will continue to post my learnings as I go.
what benefit does this unlock?
Depends on your setup and how much info you want to control/report on. The standard instruction only exposes 3 attributes, if you want the additional attributes (14 in the case of the Geyser Wise Max) then you need to use DP.
Could you list it?
I came across this post a few days ago. I bought a TSE1 Tuya board and replaced the Tuya module with a ESP-12F.
I am running ESPHome on my Home Assistant and I added the chip to it using code gtb put up earlier.
After installing the board it worked, I could turn on the geyser, check the temperature, set the max temp etc.
After a reboot of the ESP it stopped getting data. I can still manage the ESP fine but no data.
This is what I get.
[19:16:19][C][tuya:041]: Tuya:
[19:16:19][C][tuya:046]: Configuration will be reported when setup is complete. Current init_state: 0
[19:16:19][C][tuya:049]: If no further output is received, confirm that this is a supported Tuya device.
[19:16:20][E][tuya:433]: Initialization failed at init_state 0
[19:16:29][E][tuya:433]: Initialization failed at init_state 0
[19:16:44][E][tuya:433]: Initialization failed at init_state 0
Logger is disabled
logger:
baud_rate: 0
UART is setup
uart:
rx_pin: GPIO3
tx_pin: GPIO1
baud_rate: 9600
Anyone else having issues with ESPHome?
I resoldered the ESP and it is working now.
[10:44:41][C][tuya:041]: Tuya:
[10:44:41][C][tuya:056]: Datapoint 1: switch (value: ON)
[10:44:41][C][tuya:062]: Datapoint 2: enum (value: 1)
[10:44:41][C][tuya:058]: Datapoint 10: int value (value: 48)
[10:44:41][C][tuya:062]: Datapoint 13: enum (value: 1)
[10:44:41][C][tuya:064]: Datapoint 20: bitmask (value: 0)
[10:44:41][C][tuya:062]: Datapoint 101: enum (value: 0)
[10:44:41][C][tuya:058]: Datapoint 102: int value (value: 7)
[10:44:41][C][tuya:058]: Datapoint 103: int value (value: 60)
[10:44:41][C][tuya:058]: Datapoint 104: int value (value: 55)
[10:44:41][C][tuya:058]: Datapoint 105: int value (value: 55)
[10:44:41][C][tuya:058]: Datapoint 106: int value (value: 55)
[10:44:41][C][tuya:058]: Datapoint 107: int value (value: 1)
[10:44:41][C][tuya:076]: Product: '{"p":"euzjsk7e9aqwvfjk","v":"1.0.0","m":0}'
I just came across this thread now. I have a geyser wise max so do I just get this PCB and install a new esp chip into it?