{"id":221,"date":"2020-04-23T22:02:13","date_gmt":"2020-04-23T15:02:13","guid":{"rendered":"https:\/\/prosindo.com\/blog\/?p=221"},"modified":"2020-04-24T01:06:35","modified_gmt":"2020-04-23T18:06:35","slug":"monitor-temperatures-using-bluetooth-xiaomi-mijia-thermostat-mj_ht_v1-linux-python-bash","status":"publish","type":"post","link":"https:\/\/prosindo.com\/blog\/2020\/04\/23\/monitor-temperatures-using-bluetooth-xiaomi-mijia-thermostat-mj_ht_v1-linux-python-bash\/","title":{"rendered":"Monitor Temperatures using Bluetooth Xiaomi Mijia Thermostat MJ_HT_V1 Linux (Python &#038; Bash)"},"content":{"rendered":"<p>With Bash:<\/p>\n<p>1. Create checktemp.sh:<br \/>\n<code>#!\/bin\/bash<\/code><br \/>\n<code>RES=$(timeout 30 gatttool --device=AA:AA:AA:AA:AA:AA --char-write-req -a 0x0010 -n 0100 --listen)<\/code><br \/>\n<code>echo $RES<\/code><\/p>\n<p>2. Run it:<br \/>\n<code>chmod +x checktemp.sh<\/code><br \/>\n<code>.\/checktemp.sh<\/code><\/p>\n<p>With Python:<\/p>\n<p>1. Download script: https:\/\/github.com\/pFenners\/mijia-sensor-domoticz\/blob\/master\/mijia\/mijia_poller.py<\/p>\n<p>2. Download script: https:\/\/github.com\/pFenners\/mijia-sensor-domoticz\/blob\/master\/domoticz_mijia.py<\/p>\n<p>3. Comment out script:<br \/>\n<code>domoticzrequest(\"http:\/\/\" + domoticzserver ...<\/code><br \/>\nto<br \/>\n<code># domoticzrequest(\"http:\/\/\" + domoticzserver ...<\/code><\/p>\n<p>4. Change with your device mac:<br \/>\n<code>update(\"AA:AA:AA:AA:AA:AA\",\"1\")<\/code><\/p>\n<p>5. Run:<br \/>\n<code>python3 domoticz_mijia.py<\/code><\/p>\n<p>Another info:<br \/>\n<code>#dev name<\/code><br \/>\n<code>for c in $(gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x0003 | cut -c 34-); do echo '0x'$c|xxd -r; done<\/code><br \/>\n<code>#battery<\/code><br \/>\n<code>printf \"%d\\n\" \"0x\"$(gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x0018 | cut -c 34-)<\/code><br \/>\n<code>#manufacturer<\/code><br \/>\n<code>for c in $(gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x001c | cut -c 34-); do echo '0x'$c|xxd -r; done<\/code><br \/>\n<code>#model<\/code><br \/>\n<code>for c in $(gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x001e | cut -c 34-); do echo '0x'$c|xxd -r; done<\/code><br \/>\n<code>#sn<\/code><br \/>\n<code>gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x0020 | cut -c 34-<\/code><br \/>\n<code>#hw rev<\/code><br \/>\n<code>for c in $(gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x0022 | cut -c 34-); do echo '0x'$c|xxd -r; done<\/code><br \/>\n<code>#sw rev<\/code><br \/>\n<code>for c in $(gatttool --device=AA:AA:AA:AA:AA:AA --char-read -a 0x0024 | cut -c 34-); do echo '0x'$c|xxd -r; done<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>With Bash: 1. Create checktemp.sh: #!\/bin\/bash RES=$(timeout 30 gatttool &#8211;device=AA:AA:AA:AA:AA:AA &#8211;char-write-req -a 0x0010 -n 0100 &#8211;listen) echo $RES 2. Run it: chmod +x checktemp.sh .\/checktemp.sh With Python: 1. Download script: https:\/\/github.com\/pFenners\/mijia-sensor-domoticz\/blob\/master\/mijia\/mijia_poller.py 2. Download script: https:\/\/github.com\/pFenners\/mijia-sensor-domoticz\/blob\/master\/domoticz_mijia.py 3. Comment out script: domoticzrequest(&#8220;http:\/\/&#8221; + domoticzserver &#8230; to # domoticzrequest(&#8220;http:\/\/&#8221; + domoticzserver &#8230; 4. Change with your device mac: &hellip; <a href=\"https:\/\/prosindo.com\/blog\/2020\/04\/23\/monitor-temperatures-using-bluetooth-xiaomi-mijia-thermostat-mj_ht_v1-linux-python-bash\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Monitor Temperatures using Bluetooth Xiaomi Mijia Thermostat MJ_HT_V1 Linux (Python &#038; Bash)&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-221","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/posts\/221","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/comments?post=221"}],"version-history":[{"count":3,"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/posts\/221\/revisions"}],"predecessor-version":[{"id":224,"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/posts\/221\/revisions\/224"}],"wp:attachment":[{"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/media?parent=221"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/categories?post=221"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prosindo.com\/blog\/wp-json\/wp\/v2\/tags?post=221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}