Smart Life (tuya) show wrong temperature

Are there any Updates on this issue?
I have 6 BecaSmart BHT-6000 thermostats they are detected as thermostat (IAYz2WK1th0cMLmL), and they all show a wrong temperature. The real room temperature is 27.5°C, the displayed temperature is 5.5°C, so it’s divided by 5.

I’m using the official tuya integration on a raspberry pi:
Home Assistant 2022.8.3
Supervisor 2022.08.3
Operating System 8.4
Frontend 20220802.0 - latest

2 Likes

To fix the temperature issue with Tuya BHT-002 thermostats i recommend you to use my custom component based on the official Tuya integration found here

3 Likes

Thanks for clearly explaining the cause of the problem and providing a fix. I can sort of understand the developers of tuya integration refusing in include hacks to fix minstakes of individual HW manufacturers, but that doesn’t make our life any easier.

Could you publish a patch or even the whole climate.py file that can be droppped on top of exiting one? That would simplify the fix process. Even MACs filtering can be omitted as i only use a single type of the thermostat.

Thanks again for your efforts!

There might be something i´m doing wrong, the error persists

Thanks! Working perfectly!!!

Check the code changes i made to climate.py and base.py here Comparing home-assistant:dev...midstar:tuya_BHT-002_thermostat_workaround · home-assistant/core · GitHub

2 Likes

This turned out to be the easiest, (with the downside of having to repeat the process after upgrade). Much thanks!

Hi @midstar
I trying this fix but I don’t understand why my tuya app still from cloud?

  1. I uploaded modified tuya directory to the HA server:
  2. Rebooted server
  3. Added tuya integration through GUI.

Hey all,
Have the same problem with my 3 thermostats, they all showing like 3-4 degree C
Im running hassio supervised, and have the original tuya integration for all my tuya devices (cloud)
how can i edit any file and where to fix this.

p.s. cant belive this issue is still going on, its absurd

This problem is fundamental, our thermostats don’t follow the specification, and HA-tuya integration developers refuse to include random hacks to support broken hardware (which is understandable). Now there are two ways to fix this: you can use custom component by @midstar, or you can patch couple of files. Both ways are described in this thread.
Ok, there is a 3rd way to fix this, is to reflash the thermostat with open source firmware, this is certainly the best way, but also the most complicated. (GitHub - fashberg/WThermostatBeca: Open Source firmware replacement for Tuya Wifi Thermostate from Beca and Moes with Home Assistant Autodiscovery)

@anverx @midstar
Could you help me?

Since Tuya become a standalone integration of Home assistant, you can’t install it through hacs anymore, right? This means there is no tuya folder in the custom_components folder. So option 2 described is not feasible, right?

Second method, that is patching components/tuya/base.py and components/tuya/climate.py worked just fine for me on 2022.09 I’m running supervised to the actual files were in

/var/lib/docker/overlay2/10acf1c65dc37fd43ce03f9c762a17fbd0d586d233f530a223158cff6a5d2a32/merged/usr/src/homeassistant/homeassistant/components/tuya/

1 Like

this saved me so many headaches. thanks!

I just bought a thermostat and try to install Tuya integration, but I got the same issue. Even if there is a conversion issue on Home Assistant, the problem is coming from Tuya site.
If you look at my screenshots, the Smart life app is displaying 23.5°C then on tuya site the value is showing 47°C so it is multiplied by two. Then it is divided by ten in HA.

So before trying to convert in HA, it would be better to open a change request to Tuya teams, but I didn’t found where to do that.

image

1 Like

That’s 4.7 not 47

Hi there,
My Tuya thermostates show the correct temp, but there is no indication if the boiler is heating or the termostate has cut out…is there any way to make that show :fire:?

Hi angusc
47 is the value seen by tuya’s site. 4.7 is the value seen by HA

1 Like

hvac_modes:
  - 'off'
  - heat_cool
min_temp: 1
max_temp: 7
target_temp_step: 0.5
friendly_name: thermostat
supported_features: 1
current_temperature: 4.5
temperature: 4.7

You should have two temperature values for the climate integration. current_temperature is the big display

1 Like

thanx,

Where would I edit that configuration?