Is this custom component fixing the non-updating data issue ?
Yes so far everything is runs smooth. No issues.
Yes, it is fixing because there is no need for polling, the sensor originaly sends the data in every seconds.
I must be a total noob, but I can’t run your command. I tried both with a SSH session on port 22 and 22222, but each time, it returns
'bash: sudo: command not found"
I am on a Raspberry Pi 3B+, with an hassio image. Is this command supposed to work on Raspbian only ?
I did it this way
works great
even got
one of these
looking to add this to it
If you are running Hassio you don’t have to run any sudo commands ( at least for me I didn’t ),
Just put the mitemp_bt
folder into your custom_components
folder in config
, and add
sensor:
- platform: mitemp_bt
to your configuration.yaml
and you’re all set.
Restart HA and you will see sensors like mi t_582D3432CFTR
Hope this helps! Huge thanks to @tsymbaliuk
Thanks, worked like a charm. But I can’t see battery level, is it normal?
The battery level in the tsimbalyuk code is presented not as a sensor, but as a sensor attribute, which can be seen on the status page or in details by clicking on the sensor card.
If you need a separate sensor, then you can try something like this (replace senor’s name with yours):
- platform: template
sensors:
batt_582D3432CFTR:
friendly_name: "Mitemp battery level"
entity_id: sensor.mi_t_582D3432CFTR
unit_of_measurement: '%'
device_class: battery
value_template: "{{ state_attr('sensor.mi_t_582D3432CFTR', 'battery_level') }}"
I’ve tried your code (with the right sensor name), but I obtain “None” in the state value.
I’m not even able to see the battery value through the sensor status:
Interesting. Battery readings are really missing… I assume two options: either the sensor does not send this data at all (it may be a firmware issue, or the hw of the sensor), or the packets with the battery level data do not reach due to a weak signal (my sensors sends battery information less often than temperature and humidity).
I can offer to connect the sensor to the official program from Xiaomi (Mi Home), and check the relevance of the firmware in it. You can also try to place the sensor closer to the Home assistant host, and see if the situation changes (as an option, you can take the code from my post, then look at the sensor’s status, where the median number will be equal to the number of packets received between sensor updates - a small number (smaller than 5, may be) will indicate poor reception conditions). If it turns out to be a bad reception, then either improve the conditions or just wait in the hope that the battery data will come one day…
I wonder whether the battery status is not broadcast for a few hours after boot time of the sensor? This is the case (as I recently found out) for the Aqara human body sensor
I’ve came back home and found my Hassio totally down… rebooted (from the main power)… all messed up!!! Reboot again (via software)… all up and running!
And now I can see battery level in all 3 images linked above.
Let’s see what will happen tomorrow…
Thank you, it was that simple !
The custom component from @tsymbaliuk makes Hassio on Raspberry Pi significantly slower, especially if you plot the data on a graph card. CPU usage and temperature is higher than usual (I have frequent load peaks above 30%).
The update of @Magalex seems to fix this issue (CPU is now running as usual again), but I haven’t tested long enough to confirm that data does not randomly stop updating.
i replaced the sensor.py file with your script. i had to change the name of your script from mitemp_bt_sensor.py to sensor.py, than i manged to save the config.
that’s the only thing that i need to do in order to avoid the database issue?
Yes, nothing else is needed.
working great! i have only one issue, log file updates constantly with the following errors:
2019-08-19 18:16:47 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:16:58 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:17:09 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:17:20 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:17:30 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:17:41 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:17:52 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:18:03 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:18:14 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:18:25 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:18:36 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:18:47 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:18:58 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:19:09 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:19:20 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:19:31 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:19:42 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:19:53 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:20:04 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:20:14 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:20:25 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:20:36 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
2019-08-19 18:20:47 ERROR (MainThread) [googledevices] ClientError contacting http://192.168.0.196:8008/setup/bluetooth/scan_results - 0, message='Attempt to decode JSON with unexpected mimetype: '
Thank you for your help
Seems like these errors are not related to the work of the discussed integration… I suspect this is something from the google home integration… Presence detection, maybe?
How can I set the interval scan time? In my graph it seems to be a point every minute (sometimes 2-3 points in 1 minute). Is there a way to have a point plotted every 5 minutes (for example)?
Unfortunately, I am completely newbie to the Home assistant, and do not have (yet) sufficient knowledge to make proper integration with the options. I look forward to when @tsymbaliuk has time for us)
I don’t have time yet to study the issue, so for now we can only change in my sensor.py in line 221 the text seconds = 60
to the text seconds = 300
(“minutes = 5” should also work, as it seems to me). And restart HA.