Inkbird IBS-M1 with IBS-P01

I will give this another go! thanks for the confirmation.

@del13r
I belive i got it in Home Assistant!! But not sure what to do after that…Did you configure it as a battery? hot? Cold?

1 Like

I will keep trying but somehow im setting up as wrong “sensor”

OK! i got it in! but can you explain how do you get it in fahrenheit? THANK YOU so much for the help BTW!

1 Like

Ok, here we go from the top.

image

image

image

image

image

The scaling factor was only needed for the 104 temp sensor as the value is 1452 which is 4 digits, the scaling factor moves the decimal place over 2 digits to make it 14.52 °C

I think you might just be missing the ° symbol in your unit of measurement for the temperature sensor

So, even if you want the value to be shown in °F, If the 104 temp sensor value is similar to a low number like 1500 or 2000 or 2500, I would still use °C as the Unit of measurement for the temp sensor and let Home Assistant Automatically convert it to °F.

If the value of the 104 temp sensor value is similar to a high number like 5900 or 6800 or 7700, only then would I use °F as the unit of measurement for the temp sensor.

How a value with ° will display will depend on what your system is set to under Configuration / General / Unit System.

Home Assistant will automatically convert values from °C to °F and vice versa.

image

I know this because
I added this to my
/config/configuration.yaml

template:
  - sensor:
      - name: Pool Temp in F
        unit_of_measurement: °F
        state: >
          {{ ((( states('sensor.pool_temperature') | float ) *9/5) +32) }}

And my system still showed the value in °C
You are just better off letting home assistant do the conversion rather than creating a template

My HA unit of measure is set to imperial already but I set location and unit of measure in YAML so those options in UI are not selectable but my thermostats as example are in “f” so it is working for those. What’s weird is in the tuya app it’s in Celsius too and in the tuya app I also cannot change the setting. Very strange. Thanks again for helping I’m sure your explaining will help others too!

Can I ask what the value of 104 is showing up as for you?
image
Is it above 3200 or below 3200?
If it is below 3200 (which is what water freezes at in °F), you absolutely need to set the unit of measurement to °C and the Scaling Factor 0.01

image

Dont stress about using °C for now as HA will convert it.
For that automatic conversion to happen, its very important that you dont forget to use ° symbol.

It doesnt matter what the Tuya app shows or whether you can change it in the app as its in °C for me in the app and I can’t change it either. What does matter is what the value of the 104 temperature sensor is and what you tell Home Assistant to do with it by setting the unit of measurement for just the sensor, not your whole system. Once you get the data into Home Assistant properly formatted, you’ll never need to open the Tuya app ever again. :slight_smile:

Here is value of 104:

Here is what how it displays on dashboard:

1 Like

AH HA! i put unit of measure as °C and NOW it shows °F! ha ha! ok so thats great! now i need to figure out how to add the other sensors to tuya as it seems i cannot go back and add more the option is gone. only way i can add more is delete local tuya and on first install i can select all sensors one by one but that option is gone after first setup. Also the temp is about 4-5 degrees low compared to actual temp inkbird shows…How would you add some sort of correction or offset to the temp? Pool is actually like 86°F

1 Like

I see local tuya currently don’t support adding new entities to existing devices so at least i know i need to add all at first install. so just need to figure out the offset correction on temp and finally got this working! thanks to @del13r

edit: looks like i need to add a “float” to the sensor. will look into this tonight after work

1 Like

If you are absolutely convinced that the sensor should be 86°F / 30°C (which is very warm by the way), you can do a low tech test of putting the thermometer in a glass of cold water and see if the value changes to make sure you are polling the right sensor ID.

If the value changes to a lower value, and you are still convinced the thermometer is inacccurate, i would start fresh with tuyalocal and look for a value that is closer to 3000 in the ID list. Your IBS-M1 might behave differently to mine.
If you dont see any values closer to 3000, then i would do the conversion on the sensor this way.
I know that 86°F = 30°C
30°C - 27.55°C = 2.45°C difference

add the following lines to
/config/configuration.yaml

template:
  - sensor:
      - name: Pool Temp adjusted
        unit_of_measurement: °C
        state: >
          {{ (( states('sensor.pool_temperature') | float ) +2.45) }}

You truly are amazing help. Yes pool is warm! I’m in Minnesota and need it warm :slight_smile: I will try these tonight and report back. I do have analog gauge in pool and with InkBird app I had about 2.4 correction to match analog thermometer which the analog actually matches the digital reading on heater so for whatever reason the InkBird is off a bit for sure

1 Like

@del13r Tried the adjusted temp code and the value i get is very strange. Any ideas?
Attaching a photo:
edit:

So i spent most of the evening going through over 20 devices that i could see from the M1 gateway and got all working but the “adjusted” pool temp. Very neat to have these Inkbird devices in home assistant! thanks @del13r for all the help i never would have got this without your help! Hope it helps others willing to take on the challenge.

Hmm, the adjusted temp looks fine on mine when I test using the following method.
You can test by going to developer tools / template

Current Value = 14.35 (uncorrected value, as shown on the right in the picture)

Then i add the +2.45 and get 16.8 (templated corrected value, as shown on the right in the picture)

Can you please show what you entered in the template section?

For whatever reason I had to change unit of measure in your code to F instead of C and it then it worked! Seems by the time it adds 2.45 it’s no longer in Celsius? Weird or what? But it does work

template:
  - sensor:
      - name: Pool Temp adjusted
        unit_of_measurement: °F
        state: >
          {{ (( states('sensor.104') | float ) +2.45) }} 

  # Sprinkler System
1 Like

Ah ok, well, as long as it shows the corrected result that you want and it’s now accurate, then that’s all that matters.

Perhaps you needed to use °F in your sensor template because your Home Assistant system is set to °F and the template is being applied to the value your system has already converted for your preference.

All of this is just an assumption as I am still really new to Home Assistant (only discovered it and installed it this week) and have had to solve some little issues like the issue in this topic for example and it feels good when you solve it.

1 Like

I do have one issue with InkBird in tuya…
In InkBird app I had set upper/lower limits on devices and if these limits were hit I would get notifications. Well Since switching to tuya it seems these limits were set to defaults and I’m getting notifications now in tuya app and even in InkBird app(even though I removed device) and I don’t see any option in tuya app to change limits or disable notifications. I assume only solution would be to delete apps since I now have these in HA? These limits stores in the devices? Or the apps? Obviously I can do a notification trigger in HA but that won’t stop apps notifications.

I would
pair the ibs-m1 with ink bird app,
then remove the notifications you setup,
then remove the device from the Inkbird app
then pair it with the tuya app (I use smart life)
and rely on localtuya to talk to device directly
and setup notifications in Home Assistant so it can use your corrected value

Been a week and i just wanted to report back that the Inkbird devices have been working perfectly! So cool to have all my temps in such i slick interface with everything in my “smart” home. Huge thanks to @del13r and to Home assistant Devs for such a customizable program.

1 Like

Glad I could help @randr