Read the statement by Michael Teeuw here.
MMM-xiaomi - Temperature and Humidity from your smarthome
-
@mirko3000 Thank you for this!! Exactly what I have been looking for… this is truly awesome!
I would like about 9 of these sensors… do I also need the gateway as well?
-
@cowboysdude : As i read, the Gateway is mandatory.
But as always Xiaomi is really cheap. GW is about 25$ i guess.I ordered some temp sensors. Can’t wait to test the stuff.
-
@mirko3000 Well, I have temp&hum sensor and it works well with Home Assistant and Homebridge. So I think the API itself is OK. I will check the log. Nice plugin anyway. Maybe we can extend it to more Xiaomi devices.
-
@barnosch said in MMM-xiaomi - Temperature and Humidity from your smarthome:
@cowboysdude : As i read, the Gateway is mandatory.
But as always Xiaomi is really cheap. GW is about 25$ i guess.I ordered some temp sensors. Can’t wait to test the stuff.
I saw the gateway was inexpensive so if I can find a US plug adapter for this I will be ordering the gateway and about 9 of the temp sensors :)
-
How to figure out the id of the sensor?
-
Well the IDs show up in your magic mirror - the problem is to identify which ID belongs to which sensor. I guessed them by checking the temperature, still I agree that this is not very convenient so far. Looking out for a better solution…
-
Thank you for your replay!
When I do so I get a “Connecting to XIAOMI gatway…”
As far as I understand "ENETUNREACH " means Network unreachable. I can successfully ping the Gatway at 192.168.2.107 via VNC & LX Terminal.
Do I have to set up something on my Gateway first?
Any idea what to do?This is what my error log says:
ERROR! Could not find main module js file for RepositoryForRC ERROR! Could not find main module js file for async { Error: send ENETUNREACH 192.168.2.107:54321 at Object.exports._errnoException (util.js:1050:11) at exports._exceptionWithHostPort (util.js:1073:20) at SendWrap.afterSend [as oncomplete] (dgram.js:402:11) code: 'ENETUNREACH', errno: 'ENETUNREACH', syscall: 'send', address: '192.168.2.107', port: 54321 }
My mm out:
Starting MagicMirror: v2.1.3 Loading config ... Loading module helpers ... No helper found for module: alert. No helper found for module: clock. Initializing new module helper ... Module helper loaded: MMM-Remote-Control Initializing new module helper ... Module helper loaded: MMM-xiaomi All module helpers loaded. Starting server on port 8080 ... Server started ... Connecting socket for: MMM-Remote-Control Starting node helper for: MMM-Remote-Control Connecting socket for: MMM-xiaomi Starting xiaomi helper Sockets connected & modules started ... Launching application. Triggering Xiaomi Gateway upate
-
I’ve made a completely new Raspian & MM installation. No other modules installed. the default modules disabled in the config.js.
I Still get no connection. Im running the Home Gatewy V3 in Dev mode. Do I have to change any settings on my router or somewhere else?
Right now I get different error messages. Maybe it helps. I would love to see this module running!
mm-out:
> magicmirror@2.1.3 start /home/pi/MagicMirror > sh run-start.sh Starting MagicMirror: v2.1.3 Loading config ... Loading module helpers ... Initializing new module helper ... Module helper loaded: MMM-xiaomi All module helpers loaded. Starting server on port 8080 ... You're using a full whitelist configuration to allow for all IPs Server started ... Connecting socket for: MMM-xiaomi Starting xiaomi helper Sockets connected & modules started ... Whoops! There was an uncaught exception... MagicMirror will not quit, but it might be a good idea to check why this happened. Maybe no internet connection? If you think this really is an issue, please open an issue on GitHub: https://github.com/MichMich/MagicMirror/issues Launching application.
MagicMirror error log:
Error: Token could not be auto-discovered at Device._tokenResolve (/home/pi/MagicMirror/modules/MMM-xiaomi/node_modules/miio/lib/device.js:141:13) at Device._onMessage (/home/pi/MagicMirror/modules/MMM-xiaomi/node_modules/miio/lib/device.js:80:9) at emitTwo (events.js:106:13) at Socket.emit (events.js:194:7) at UDP.onMessage [as onmessage] (dgram.js:545:8)
MagicMirror out:
magicmirror@2.1.3 start /home/pi/MagicMirror > sh run-start.sh Starting MagicMirror: v2.1.3 Loading config ... Loading module helpers ... Initializing new module helper ... Module helper loaded: MMM-xiaomi All module helpers loaded. Starting server on port 8080 ... You're using a full whitelist configuration to allow for all IPs Server started ... Connecting socket for: MMM-xiaomi Starting xiaomi helper Sockets connected & modules started ... Launching application. Triggering Xiaomi Gateway upate Triggering Xiaomi Gateway upate
mm error log:
{ Error: listen EADDRINUSE 127.0.0.1:8080 at Object.exports._errnoException (util.js:1050:11) at exports._exceptionWithHostPort (util.js:1073:20) at Server.setupListenHandle [as _listen2] (net.js:1263:14) at listenInCluster (net.js:1304:12) at doListen (net.js:1428:7) at GetAddrInfoReqWrap.asyncCallback [as callback] (dns.js:62:16) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:78:10) code: 'EADDRINUSE', errno: 'EADDRINUSE', syscall: 'listen', address: '127.0.0.1', port: 8080 }
-
Hey Albert,
I think I have solved your issue: not all gateways seem to allow auto-discovery without authentification via a security token. I have added an additional configuration parameter now where you can provide your token:
https://github.com/mirko3000/MMM-xiaomiUpdate the module and follow the description at the bottom:
https://github.com/mirko3000/MMM-xiaomi#authentificationHope that works.
Best regards.
-
Hi Mirko,
thank you for your work! I really appreciate this!
I’ve updated the module and installed the miio command line tools (with sudo)in the same directory. Or do I Have to install the miio command line tools in a different directory?
How ever, when am running miio command line tools i getpi@raspberrypi:~/MagicMirror/modules/MMM-xiaomi $ miio --discover INFO Discovering devices. Press Ctrl+C to stop. Device ID: 52238776 Model info: Unknown Address: 192.168.2.107 Token: ??? Support: Unknown
My id I’ve discovered seams to be a different style then the one in your example.
After this I added the device id to my config:devices: [{ id: '52238776', name: 'Wohnzimmer' }]
I still see the same as before.
mm error:
Error: Token could not be auto-discovered at Device._tokenResolve (/home/pi/MagicMirror/modules/MMM-xiaomi/node_modules/miio/lib/device.js:141:13) at Device._onMessage (/home/pi/MagicMirror/modules/MMM-xiaomi/node_modules/miio/lib/device.js:80:9) at emitTwo (events.js:106:13) at Socket.emit (events.js:194:7) at UDP.onMessage [as onmessage] (dgram.js:545:8)
mm-out:
> magicmirror@2.1.3 start /home/pi/MagicMirror > sh run-start.sh Starting MagicMirror: v2.1.3 Loading config ... Loading module helpers ... Initializing new module helper ... Module helper loaded: MMM-xiaomi All module helpers loaded. Starting server on port 8080 ... You're using a full whitelist configuration to allow for all IPs Server started ... Connecting socket for: MMM-xiaomi Starting xiaomi helper Sockets connected & modules started ... Launching application. Triggering Xiaomi Gateway upate Triggering Xiaomi Gateway upate
MagicMirror error:
{ Error: listen EADDRINUSE 127.0.0.1:8080 at Object.exports._errnoException (util.js:1050:11) at exports._exceptionWithHostPort (util.js:1073:20) at Server.setupListenHandle [as _listen2] (net.js:1263:14) at listenInCluster (net.js:1304:12) at doListen (net.js:1428:7) at GetAddrInfoReqWrap.asyncCallback [as callback] (dns.js:62:16) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:78:10) code: 'EADDRINUSE', errno: 'EADDRINUSE', syscall: 'listen', address: '127.0.0.1', port: 8080 }
MagicMirror out:
> magicmirror@2.1.3 start /home/pi/MagicMirror > sh run-start.sh Starting MagicMirror: v2.1.3 Loading config ... Loading module helpers ... Initializing new module helper ... Module helper loaded: MMM-xiaomi All module helpers loaded. Starting server on port 8080 ... You're using a full whitelist configuration to allow for all IPs Server started ... Connecting socket for: MMM-xiaomi Starting xiaomi helper Sockets connected & modules started ... Whoops! There was an uncaught exception... MagicMirror will not quit, but it might be a good idea to check why this happened. Maybe no internet connection? If you think this really is an issue, please open an issue on GitHub: https://github.com/MichMich/MagicMirror/issues Launching application.