Klarstein Wonderwall integration

I have Klarstein HotSpot Spotless Smart and it does not work even using tuya integration …

EDIT: works with https://github.com/make-all/tuya-local also sold as rebrand termofol

Thinking about getting one of these heating panels.
I have a question for existing owners - if I simply plugged this into a smart plug that I can control via HA, could I preset it so it just automatically starts heating once the smart plug is turned on?

yes, it will default to target 25C

1 Like

@evlo How can it be set to this default 25C after turn on? When I turn mine off with a smart plug and then on again it is not heating.

1 Like

For me it is just like that out of the box, but I do have ODM rebrand “termofol” ( https://www.sklep.termofol.pl/produkt/lazienkowy-panel-grzewczy/ ), so maybe there actually is some change, but I would really think that it is same.

I’m planning to take it apart and flash esphome on it, but even with esphome it will still keep tuya mcu. When/if I do I will post photos hot it looks inside and how it works with esphome.

I have disassembled the thing to put esphome on it and Eurom E-convect WiFi - #46 by InfantEudora this is basically same

DPSs here: tuya-local/kogan_kawfhtp_heater.yaml at 705ac7892217b9185bfc20d7e8bea813803280b7 · make-all/tuya-local · GitHub

tuya:

uart:
  rx_pin: GPIO13
  tx_pin: GPIO15
  baud_rate: 9600

climate:
  - platform: tuya
    supports_heat: true
    supports_cool: false
    name: "koupelnaTopeni"
    switch_datapoint: 1
    target_temperature_datapoint: 3  # min 5 - max 40
    current_temperature_datapoint: 4
    eco_datapoint: 7 #Low, Hight
    visual:
      min_temperature: 5
      max_temperature: 40
      temperature_step: 1

Unfortunately this is not the case after purchasing it :unamused:
The “smart” function in it means you have to turn it on with an extra button press or by the app after the plug powers it on.

Even when you disconnect power when it is in “heating” state?

Well you could do the EspHome conversion, i’m going to try to find out if it really starts in 25C and OFF and i was lying before.

Update: turns out you were right and even though it resets to 25C on startup it indeed does start in OFF mode. I’m sorry I put lies here, i hate when people do that, there is enough of wrong information on the web and no need for me to add more.

Hope you can either put esphome and command it to send “On” command after boot or at least return the heater.

Again - sorry for lying before :frowning:

I bought a non wifi version. Did anyone tried to open it and do some Esp/EspHome conversion ?

No conversion, but if you have the connector for the esp board it should be easy, depends if the green board with tuya mcu is the same

I’m posting this sou get the idea how wifi version insides look. Tuya board is just connected using UART to the green board IR and front panel is also connected to the green board.

No worries, thanks for responding!
Ihave managed to register it as a Tuya device in their app. So I should be able to pick it up in HA under the Tuya integration - It’s not working for me right now but I’ll get there.
That should allow me to automate the power on and leave it plugged in I guess.

The EspHome stuff looks difficult and scary to me :smiley:

Hey guys, did anyone manage to integrate the Wonderwall without using Tuya?

There might be a way by rewiring it with an ESP32.

I don’t have soldering iron so I don’t even try to look at the board

at a glance m5stack atom s3 lite seems to be pin compatible replacement

Not plug and play sadly,


same pitch, both JST based, but different connector

It is however possible to use connector included with athom s3 lite that plugs directly into the existing board, no soldering required

In the end to make the connection nicer I used smallest(?) molex connector to connect on the board side, still on the image above is easy non soldering solution

This is the config I used, kind of a mess, it would be perfect if someone skilled in c++ created PR for the enum eco datapoint klarstein uses

substitutions:
  hostname: eh
  device_id: eh
  device_name: eh
  comment:  M5Stack atom s3 lite, ESP32s3

esphome:
  name: ${hostname}
  comment: ${comment}
  platformio_options:
    board_build.flash_mode: dout
    board_build.extra_flags:
      - "-DARDUINO_USB_MODE=0"
      - "-DARDUINO_USB_CDC_ON_BOOT=1"
  # on_boot:
  #   priority: 300
  #   then:
  #     - light.turn_on:
  #         id: status_led
  #         brightness: 20%
  #         red: 0%
  #         green: 100%
  #         blue: 0%   

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: esp-idf
    #platform_version: 5.3.0
    #version: 4.4.3
    sdkconfig_options:
      CONFIG_BT_BLE_42_FEATURES_SUPPORTED: y
      CONFIG_BT_BLE_50_FEATURES_SUPPORTED: y
      
logger:
  level: VERBOSE
  logs:
    bluetooth_proxy: DEBUG
    esp32_ble: DEBUG
    tuya: VERBOSE
    json: DEBUG
    sensor: DEBUG

api:
ota:  

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap:
    ssid: "${hostname} Fallback"

button:
  - platform: restart
    name: "${device_name} Restart"
    icon: "mdi:restart"

sensor:
  - platform: wifi_signal
    name: "${device_name} WiFi Signal"
    update_interval: 10s
    id: wifi_signal_db
    icon: "mdi:wifi"
  - platform: uptime
    name: "${device_name} Uptime"
    update_interval: "600s"
    entity_category: "diagnostic"
    icon: "mdi:clock-outline"

text_sensor:
  - platform: version
    name: "${device_name} ESPHome Version"
    hide_timestamp: true
    icon: "mdi:numeric"
  - platform: wifi_info
    ip_address:
      name: "${device_name} IP Address"
      disabled_by_default: False
      icon: "mdi:wifi-settings"
    mac_address:
      name: "${device_name} MAC"
      icon: "mdi:wifi-marker"
    scan_results:
      name: "${device_name} last wifi scan"
      icon: "mdi:wifi-sync"
############################################################################

# https://github.com/esphome/esphome/blob/dev/esphome/components/tuya/climate/tuya_climate.cpp
# on power on if temp is 25 AND state is OFF set temp 15 [power on after power loss]
# when off and temp is changed = return previous temp (ignore temp change from HA when mode is off)
tuya:
  on_datapoint_update:
    - sensor_datapoint: 7
      datapoint_type: raw
      then:
        - lambda: |-
            ESP_LOGD("main", "tuya %s", format_hex_pretty(x).c_str());

uart:
  rx_pin: GPIO01
  tx_pin: GPIO02
  baud_rate: 9600
  debug:
    direction: BOTH
    dummy_receiver: false
    after:
      delimiter: "\n"
    sequence:
      - lambda: UARTDebug::log_hex(direction, bytes, '.');

external_components:
  - source: github://evlo/esphome-External-Components
    components: [tuyaClimateEcoEnum]
    refresh: 1s
  - source: github://pr#3500
    components:
      - web_server
      - web_server_idf
      - web_server_base
      - captive_portal
    refresh: 100days

climate:
  - platform: tuyaClimateEcoEnum
    supports_heat: true
    supports_cool: false
    name: eh-tuya
    switch_datapoint: 1
    target_temperature_datapoint: 3  # min 5 - max 40
    current_temperature_datapoint: 4
    eco_datapoint: 7 #Low, Hight
    #eco_temperature: 15 # °C
    visual:
      min_temperature: 5
      max_temperature: 40
      temperature_step: 1
#childlock datapoint 2
#timer datapoint 5

bluetooth_proxy:
  active: true

# light: 
#   - platform: neopixelbus
#     num_leds: 1
#     variant: WS2812B
#     pin: GPIO35
#     id: onboard_rgb
# light:
#   - platform: fastled_clockless
#     chipset: WS2812B
#     pin: 35
#     num_leds: 1
#     rgb_order: GRB
#     id: status_led
#     name: ${hostname} RGB LED

# binary_sensor:
#   - platform: gpio
#     pin:
#       number: 41
#       inverted: true
#     name: ${hostname} Button
#     on_press:
#       then:
#         - light.toggle: status_led


web_server:
1 Like

Hi guys. I have a Klarstein wonderwall 960 panel with wire thermostat. I would like to disassembly unlink the wire thermostat and controlling with 230v Ac smart connector or relay the panel direct. Anybody know the thermostat wire pinouts?

No, but in case of connection from “smart interface” to the control panel it is white RX, yellow TX, black GND and red 5v. Maybe thermostat works with the same connection using “tuya datapoints” protocol?

You can start by measuring voltages and then you can safely connected uart to usb interface, or esphome with uart component and look what traffic is going on.

Thanks. it’s a good informatikn for me. I will disassembly the thermostat box and check content.

@munkacsy2914 , any success allready to get this working? I have the same panel and would like to get better in control of it as well.
I’m known to ESPHome, not to Tuya unfortunately

I’m also keen to flash this device and make it a bit more useful. It is currently working “ok-ish” through Tuya but not where I want it to be. Does anyone have a wirte-up on how well it behaves with ESPhome and how complicated it would be to do? @evlo perhaps you can share a little more of your experiences?

(I think Tuya alone has done more harm than good to the smart home world with their platform tbh)