Inkbird / ESP32 Displaying wrong temp when negative

Have a ibs-th2 and linked to to an ESP32 in ESPhome. The inkbird ibs-th1 is the only platform I can find in ESP Home. Reads and works well above 1 deg but HA is displaying a really high number when the th2 is reporting a neg temp. Example is th2 is at -3 degf and HA is reporting 1500 F I don’t think the th1 reads in the negative range. Any suggestions on how to modify the code to handle the negative temp that the 2 is able to read?

I look at the logs in esphome and this is what it is getting.
[17:06:54][D][sensor:127]: ‘Inside Frezzer Temp’: Sending state 640.65997 °C with 1 decimals of accuracy
[17:07:31][D][sensor:127]: ‘Inside Frezzer Temp’: Sending state 640.54999 °C with 1 decimals of accuracy
[17:07:49][D][sensor:127]: ‘Inside Frezzer Temp’: Sending state 640.40002 °C with 1 decimals of accuracy
[17:08:25][D][sensor:127]: ‘Inside Frezzer Temp’: Sending state 640.15002 °C with 1 decimals of accuracy

It’s probably not converting the negative numbers formatted as twos-compliment correctly. You could open a feature request (on the ESPHome github, not this forum) to get support for you model.

You’re right. It has to be in the platform coding. I got some tbh1’s and they are doing. Same as the 2’s. I will request on the GitHub. There isn’t a way for me to change the platform coding is there?

Were you ever able to get the IBS-TH2 working with ESPHome?

I played with it for a few more hours and then life got in the way. I may try again next weekend.

I’m bringing this to the top to see if anyone has a solution. I’ve found things that suggest the code was fixed and the BLE tracker code should be able to do negative temps. I’ve reloaded the code to the ESP32 that I have been using for this project. No change. Doesn’t matter if it’s a TH1 or TH2. I’d really like to figure this out. I have tried the new Bluetooth integration but the Inkbird sensors I want to monitor are just out of range.