• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

MMM-xiaomi - Temperature and Humidity from your smarthome

Scheduled Pinned Locked Moved Utilities
141 Posts 27 Posters 171.0k Views 27 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    Albert2002
    last edited by Nov 5, 2017, 12:49 AM

    Hi Mirko! Thanks for your reply!

    Before and after I uncommented the line 51 and restartet MM.
    Still with the old Token

    pi@MagicMirror:~ $ miio --discover --sync
     INFO  Discovering devices. Press Ctrl+C to stop.
    
    Device ID: 52238776
    Model info: Unknown 
    Address: 192.168.2.107 
    Token: 6eea5ac1eb475bfedbfff98aab7c2bc7 via stored token
    Support: Unknown
    
    (node:25652) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: Call to device timed out
    
    

    But right now after uncommenting the line the error log is different. In the log i can already see the Temperature and humidity (_properties: { temperature: 19.51, humidity: 62.44 },)!! The next step!

    
    > magicmirror@2.1.3 start /home/pi/MagicMirror
    > sh run-start.sh
    
    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: calendar
    No helper found for module: currentweather.
    No helper found for module: weatherforecast.
    Initializing new module helper ...
    Module helper loaded: MMM-DWD-WarnWeather
    Initializing new module helper ...
    Module helper loaded: MMM-PNews
    Initializing new module helper ...
    Module helper loaded: newsfeed
    Initializing new module helper ...
    Module helper loaded: MMM-Remote-Control
    No helper found for module: MMM-Remote-Control-Repository.
    Initializing new module helper ...
    Module helper loaded: internet-monitor
    Initializing new module helper ...
    Module helper loaded: MMM-MovieListings
    Initializing new module helper ...
    Module helper loaded: MMM-Fuel
    Initializing new module helper ...
    Module helper loaded: MMM-NetworkScanner
    Initializing new module helper ...
    Module helper loaded: MMM-nasaastropic
    Initializing new module helper ...
    Module helper loaded: MMM-SystemStats
    Initializing new module helper ...
    Module helper loaded: MMM-Departures
    No helper found for module: MMM-Carousel.
    Initializing new module helper ...
    Module helper loaded: MMM-Events
    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: calendar
    Starting node helper for: calendar
    Connecting socket for: MMM-DWD-WarnWeather
    MMM-DWD-WarnWeather helper started...
    Connecting socket for: MMM-PNews
    Starting module: MMM-PNews
    Connecting socket for: newsfeed
    Starting module: newsfeed
    Connecting socket for: MMM-Remote-Control
    Starting node helper for: MMM-Remote-Control
    Connecting socket for: internet-monitor
    internet-monitor helper started ...
    Connecting socket for: MMM-MovieListings
    MMM-MovieListing helper started...
    Connecting socket for: MMM-Fuel
    Starting module helper: MMM-Fuel
    Connecting socket for: MMM-NetworkScanner
    Starting module: MMM-NetworkScanner
    Connecting socket for: MMM-nasaastropic
    Starting node helper: MMM-nasaastropic
    Connecting socket for: MMM-SystemStats
    Connecting socket for: MMM-Departures
    Connecting socket for: MMM-Events
    Starting node_helper for: MMM-Events
    Connecting socket for: MMM-xiaomi
    Starting xiaomi helper
    Sockets connected & modules started ...
    Launching application.
    Create new calendar fetcher for url: https://calendar.google.com/calendar/ical/htc.one.m2304%40gmail.com/private-;-)/basic.ics - Interval: 300000
    Create new news fetcher for url: http://www.haz.de/rss/feed/haz_schlagzeilen - Interval: 300000
    Create new news fetcher for url: http://www.spiegel.de/schlagzeilen/index.rss - Interval: 300000
    starting internet monitor node helper
    MMM-NetworkScanner received CONFIG
    astro helper: config received
    retrieveAndUpdate()
    Triggering Xiaomi Gateway upate
    MMM-Departures error: Error: getaddrinfo ENOTFOUND transportrest-sbiermann.rhcloud.com transportrest-sbiermann.rhcloud.com:80
    NASA Astro Pic of the Day URL: https://apod.nasa.gov/apod/image/1711/m5_hubblesmessier1024c.jpg
    Magnet {
      domain: null,
      _events: {},
      _eventsCount: 0,
      _maxListeners: undefined,
      model: 'lumi.magnet',
      id: '158d000119fcb2',
      type: 'magnet',
      capabilities: [],
      _properties: {},
      _propertiesToMonitor: [],
      _propertyDefinitions: {},
      _parent: 
       Gateway {
         domain: null,
         _events: {},
         _eventsCount: 0,
         _maxListeners: undefined,
         id: undefined,
         type: 'gateway',
         model: 'lumi.gateway.v3',
         capabilities: [ 'color:rgb', 'brightness', 'sensor', 'illuminance' ],
         address: '192.168.2.107',
         port: 54321,
         writeOnly: false,
         packet: 
          Packet {
            header: ,
            _serverStampTime: 1509842296639,
            _token: ,
            _tokenKey: ,
            _tokenIV: ,
            data: ,
            _serverStamp: 48587 },
         socket: 
          Socket {
            domain: null,
            _events: [Object],
            _eventsCount: 1,
            _maxListeners: undefined,
            _handle: [Object],
            _receiving: true,
            _bindState: 2,
            type: 'udp4',
            fd: -42,
            _reuseAddr: undefined,
            _queue: undefined },
         _id: 4,
         _promises: {},
         _hasFailedToken: false,
         _properties: { illuminance: 307, rgb: [Object], brightness: 0 },
         _propertiesToMonitor: [ 'illumination', 'rgb' ],
         _propertyDefinitions: { illumination: [Object], rgb: [Object] },
         _reversePropertyDefinitions: { illuminance: 'illumination' },
         _loadProperties: [Function: bound _loadProperties],
         management: DeviceManagement { device: [Circular] },
         debug: 
          { [Function: debug]
            namespace: 'miio.device.[192.168.2.107]',
            enabled: false,
            useColors: false,
            color: 1,
            inspectOpts: {} },
         _devices: 
          { '158d000119fcb2': [Object],
            '158d00013e28ee': [Object],
            '158d00015aa973': [Object],
            '158d00015736a8': [Object] },
         _monitorInterval: 60000,
         _propertyMonitor: 
          Timeout {
            _called: false,
            _idleTimeout: 60000,
            _idlePrev: [Object],
            _idleNext: [Object],
            _idleStart: 69767,
            _onTimeout: [Function: bound _loadProperties],
            _timerArgs: undefined,
            _repeat: 60000 },
         _lastToken: 1509842294044,
         _developerKey: 'xqbs1fvtsq6x4oby',
         devApi: 
          DeveloperApi {
            domain: null,
            _events: [Object],
            _eventsCount: 2,
            _maxListeners: undefined,
            address: '192.168.2.107',
            debug: [Object],
            socket: [Object],
            devices: [],
            ready: false },
         setRGB: [Function],
         setBrightness: [Function],
         _deviceListTimer: 
          Timeout {
            _called: false,
            _idleTimeout: 1800000,
            _idlePrev: [Object],
            _idleNext: [Object],
            _idleStart: 72417,
            _onTimeout: [Function: bound _updateDeviceList],
            _timerArgs: undefined,
            _repeat: 1800000 } },
      management: SubDeviceManagement { _device: [Circular] },
      debug: 
       { [Function: debug]
         namespace: 'miio.device.[192.168.2.107].158d000119fcb2',
         enabled: false,
         useColors: false,
         color: 1,
         inspectOpts: {} } }
    Switch {
      domain: null,
      _events: {},
      _eventsCount: 0,
      _maxListeners: undefined,
      model: 'lumi.switch',
      id: '158d00015aa973',
      type: 'controller',
      capabilities: [],
      _properties: {},
      _propertiesToMonitor: [],
      _propertyDefinitions: {},
      _parent: 
       Gateway {
         domain: null,
         _events: {},
         _eventsCount: 0,
         _maxListeners: undefined,
         id: undefined,
         type: 'gateway',
         model: 'lumi.gateway.v3',
         capabilities: [ 'color:rgb', 'brightness', 'sensor', 'illuminance' ],
         address: '192.168.2.107',
         port: 54321,
         writeOnly: false,
         packet: 
          Packet {
            header: ,
            _serverStampTime: 1509842296639,
            _token: ,
            _tokenKey: ,
            _tokenIV: ,
            data: ,
            _serverStamp: 48587 },
         socket: 
          Socket {
            domain: null,
            _events: [Object],
            _eventsCount: 1,
            _maxListeners: undefined,
            _handle: [Object],
            _receiving: true,
            _bindState: 2,
            type: 'udp4',
            fd: -42,
            _reuseAddr: undefined,
            _queue: undefined },
         _id: 4,
         _promises: {},
         _hasFailedToken: false,
         _properties: { illuminance: 307, rgb: [Object], brightness: 0 },
         _propertiesToMonitor: [ 'illumination', 'rgb' ],
         _propertyDefinitions: { illumination: [Object], rgb: [Object] },
         _reversePropertyDefinitions: { illuminance: 'illumination' },
         _loadProperties: [Function: bound _loadProperties],
         management: DeviceManagement { device: [Circular] },
         debug: 
          { [Function: debug]
            namespace: 'miio.device.[192.168.2.107]',
            enabled: false,
            useColors: false,
            color: 1,
            inspectOpts: {} },
         _devices: 
          { '158d000119fcb2': [Object],
            '158d00013e28ee': [Object],
            '158d00015aa973': [Object],
            '158d00015736a8': [Object] },
         _monitorInterval: 60000,
         _propertyMonitor: 
          Timeout {
            _called: false,
            _idleTimeout: 60000,
            _idlePrev: [Object],
            _idleNext: [Object],
            _idleStart: 69767,
            _onTimeout: [Function: bound _loadProperties],
            _timerArgs: undefined,
            _repeat: 60000 },
         _lastToken: 1509842294044,
         _developerKey: 'xqbs1fvtsq6x4oby',
         devApi: 
          DeveloperApi {
            domain: null,
            _events: [Object],
            _eventsCount: 2,
            _maxListeners: undefined,
            address: '192.168.2.107',
            debug: [Object],
            socket: [Object],
            devices: [],
            ready: false },
         setRGB: [Function],
         setBrightness: [Function],
         _deviceListTimer: 
          Timeout {
            _called: false,
            _idleTimeout: 1800000,
            _idlePrev: [Object],
            _idleNext: [Object],
            _idleStart: 72417,
            _onTimeout: [Function: bound _updateDeviceList],
            _timerArgs: undefined,
            _repeat: 1800000 } },
      management: SubDeviceManagement { _device: [Circular] },
      debug: 
       { [Function: debug]
         namespace: 'miio.device.[192.168.2.107].158d00015aa973',
         enabled: false,
         useColors: false,
         color: 3,
         inspectOpts: {} } }
    SensorHT {
      domain: null,
      _events: {},
      _eventsCount: 0,
      _maxListeners: undefined,
      model: 'lumi.sensor_ht',
      id: '158d00015736a8',
      type: 'sensor',
      capabilities: [ 'sensor', 'temperature', 'humidity' ],
      _properties: { temperature: 19.51, humidity: 62.44 },
      _propertiesToMonitor: [ 'temperature', 'humidity' ],
      _propertyDefinitions: 
       { temperature: { mapper: [Function] },
         humidity: { mapper: [Function] } },
      _parent: 
       Gateway {
         domain: null,
         _events: {},
         _eventsCount: 0,
         _maxListeners: undefined,
         id: undefined,
         type: 'gateway',
         model: 'lumi.gateway.v3',
         capabilities: [ 'color:rgb', 'brightness', 'sensor', 'illuminance' ],
         address: '192.168.2.107',
         port: 54321,
         writeOnly: false,
         packet: 
          Packet {
            header: ,
            _serverStampTime: 1509842296639,
            _token: ,
            _tokenKey: ,
            _tokenIV: ,
            data: ,
            _serverStamp: 48587 },
         socket: 
          Socket {
            domain: null,
            _events: [Object],
            _eventsCount: 1,
            _maxListeners: undefined,
            _handle: [Object],
            _receiving: true,
            _bindState: 2,
            type: 'udp4',
            fd: -42,
            _reuseAddr: undefined,
            _queue: undefined },
         _id: 4,
         _promises: {},
         _hasFailedToken: false,
         _properties: { illuminance: 307, rgb: [Object], brightness: 0 },
         _propertiesToMonitor: [ 'illumination', 'rgb' ],
         _propertyDefinitions: { illumination: [Object], rgb: [Object] },
         _reversePropertyDefinitions: { illuminance: 'illumination' },
         _loadProperties: [Function: bound _loadProperties],
         management: DeviceManagement { device: [Circular] },
         debug: 
          { [Function: debug]
            namespace: 'miio.device.[192.168.2.107]',
            enabled: false,
            useColors: false,
            color: 1,
            inspectOpts: {} },
         _devices: 
          { '158d000119fcb2': [Object],
            '158d00013e28ee': [Object],
            '158d00015aa973': [Object],
            '158d00015736a8': [Object] },
         _monitorInterval: 60000,
         _propertyMonitor: 
          Timeout {
            _called: false,
            _idleTimeout: 60000,
            _idlePrev: [Object],
            _idleNext: [Object],
            _idleStart: 69767,
            _onTimeout: [Function: bound _loadProperties],
            _timerArgs: undefined,
            _repeat: 60000 },
         _lastToken: 1509842294044,
         _developerKey: 'xqbs1fvtsq6x4oby',
         devApi: 
          DeveloperApi {
            domain: null,
            _events: [Object],
            _eventsCount: 2,
            _maxListeners: undefined,
            address: '192.168.2.107',
            debug: [Object],
            socket: [Object],
            devices: [],
            ready: false },
         setRGB: [Function],
         setBrightness: [Function],
         _deviceListTimer: 
          Timeout {
            _called: false,
            _idleTimeout: 1800000,
            _idlePrev: [Object],
            _idleNext: [Object],
            _idleStart: 72417,
            _onTimeout: [Function: bound _updateDeviceList],
            _timerArgs: undefined,
            _repeat: 1800000 } },
      management: SubDeviceManagement { _device: [Circular] },
      debug: 
       { [Function: debug]
         namespace: 'miio.device.[192.168.2.107].158d00015736a8',
         enabled: false,
         useColors: false,
         color: 6,
         inspectOpts: {} } }
    
    
    1 Reply Last reply Reply Quote 0
    • A Offline
      Albert2002
      last edited by Nov 5, 2017, 1:17 AM

      One more. When I run the MM as standalone server (node serveronly) I get this in the Browser console:

      MMM-xiaomi.js:28 received XIAOMI_DATA
      MMM-xiaomi.js:212 Uncaught TypeError: Cannot read property 'id' of null
          at Class. (MMM-xiaomi.js:212)
          at Function.each (jquery-2.2.3.min.js:2)
          at Class.renderText (MMM-xiaomi.js:210)
          at Class.render (MMM-xiaomi.js:100)
          at Class.socketNotificationReceived (MMM-xiaomi.js:29)
          at module.js:183
          at r. (socketclient.js:25)
          at r.emit (index.js:133)
          at r.onevent (socket.js:270)
          at r.MMSocket.self.socket.onevent (socketclient.js:19)
      (anonymous) @ MMM-xiaomi.js:212
      each @ jquery-2.2.3.min.js:2
      renderText @ MMM-xiaomi.js:210
      render @ MMM-xiaomi.js:100
      socketNotificationReceived @ MMM-xiaomi.js:29
      (anonymous) @ module.js:183
      (anonymous) @ socketclient.js:25
      r.emit @ index.js:133
      r.onevent @ socket.js:270
      MMSocket.self.socket.onevent @ socketclient.js:19
      r.onpacket @ socket.js:228
      (anonymous) @ index.js:21
      r.emit @ index.js:133
      r.ondecoded @ manager.js:345
      (anonymous) @ index.js:21
      r.emit @ index.js:133
      s.add @ index.js:241
      r.ondata @ manager.js:335
      (anonymous) @ index.js:21
      r.emit @ index.js:133
      r.onPacket @ socket.js:457
      (anonymous) @ socket.js:274
      r.emit @ index.js:133
      r.onPacket @ transport.js:145
      r.onData @ transport.js:137
      ws.onmessage @ websocket.js:147
      
      1 Reply Last reply Reply Quote 0
      • M Offline
        mirko3000
        last edited by Nov 5, 2017, 7:57 AM

        Try the latest update (git pull), I just checked for null items - even i that should not happen.

        1 Reply Last reply Reply Quote 0
        • A Offline
          Albert2002
          last edited by Nov 5, 2017, 9:54 AM

          I did so. Restarted MM.
          No errors in the logs.

          mm out:

          Triggering Xiaomi Gateway upate
          Found device with ID 158d000119fcb2 of type magnet
          Found device with ID 158d00015aa973 of type controller
          Found device with ID 158d00015736a8 of type sensor
          

          This I got from the Browser Debug:

          main.js:404 Initializing MagicMirror.
          translator.js:197 Loading core translation file: translations/de.json
          translator.js:219 Loading core translation fallback file: translations/en.json
          loader.js:182 Load script: modules/MMM-xiaomi//MMM-xiaomi.js
          module.js:406 Check MagicMirror version for module 'MMM-xiaomi' - Minimum version:  2.0.0 - Current version: 2.1.3
          module.js:408 Version is ok!
          module.js:414 Module registered: MMM-xiaomi
          loader.js:152 Bootstrapping module: MMM-xiaomi
          loader.js:182 Load script: modules/MMM-xiaomi/String.format.js
          String.format.js Failed to load resource: the server responded with a status of 404 (Not Found)
          loader.js:190 Error on loading script: modules/MMM-xiaomi/String.format.js
          script.onerror @ loader.js:190
          loader.js:182 Load script: https://code.jquery.com/jquery-2.2.3.min.js
          loader.js:157 Scripts loaded for: MMM-xiaomi
          loader.js:197 Load stylesheet: modules/MMM-xiaomi/MMM-xiaomi.css
          loader.js:159 Styles loaded for: MMM-xiaomi
          loader.js:161 Translations loaded for: MMM-xiaomi
          loader.js:197 Load stylesheet: css/custom.css
          MMM-xiaomi.js:35 Starting module: MMM-xiaomi
          main.js:422 All modules started!
          module.js:117 MMM-xiaomi received a system notification: ALL_MODULES_STARTED
          module.js:117 MMM-xiaomi received a system notification: DOM_OBJECTS_CREATED
          MMM-xiaomi.js:28 received XIAOMI_DATA
          MMM-xiaomi.js:242 Uncaught TypeError: this.html.col.format is not a function
              at Class. (MMM-xiaomi.js:242)
              at Function.each (jquery-2.2.3.min.js:2)
              at Class.renderText (MMM-xiaomi.js:210)
              at Class.render (MMM-xiaomi.js:100)
              at Class.socketNotificationReceived (MMM-xiaomi.js:29)
              at module.js:183
              at r. (socketclient.js:25)
              at r.emit (index.js:133)
              at r.onevent (socket.js:270)
              at r.MMSocket.self.socket.onevent (socketclient.js:19)
          
          1 Reply Last reply Reply Quote 0
          • M Offline
            mirko3000
            last edited by Nov 5, 2017, 12:43 PM

            Ok, now another try :) Forgot to add utility class which was already present from other modules on my instance. Please update from GIT.

            1 Reply Last reply Reply Quote 1
            • A Offline
              Albert2002
              last edited by Nov 5, 2017, 2:14 PM

              Sometimes a pictures tells you more than words…

              You did it!

              You did it! Great job! Thank you! :-)

              Next step are to integrate te Yeelights ;-)

              1 Reply Last reply Reply Quote 1
              • M Offline
                mirko3000
                last edited by Nov 5, 2017, 2:27 PM

                Good to hear! :)

                Suggestions welcome, I have just added ventilation recommendation(see latest update), will also add window sensors - but still unsure how to visualize all that information. Suggestions welcome!

                1 Reply Last reply Reply Quote 1
                • A Offline
                  Albert2002
                  last edited by Nov 5, 2017, 5:02 PM

                  Looking forward to see the window sensors! I would like to see the current state & the last change of it. Are you planing something like this?

                  Name     State     Last change 
                  Kitchen  closed   1.Nov. 18:01
                  

                  What I would like to see on my mirror as well are the sate of the Yeelights ( on / off)

                  1 Reply Last reply Reply Quote 0
                  • B Offline
                    barnosch
                    last edited by Nov 7, 2017, 6:32 AM

                    So, sadly the german customs took my whole order from China.
                    :(
                    No CE sign, no german manual, wirless connection needs to be tested…
                    i could puke.

                    Can someone recommend a company i can order from germany, without getting to the customs (EU-Warenlager) ?

                    ? 1 Reply Last reply Nov 7, 2017, 9:54 AM Reply Quote 0
                    • ? Offline
                      A Former User @barnosch
                      last edited by Nov 7, 2017, 9:54 AM

                      @barnosch
                      So sad. I want to know also, is there good IoT set for home in EU(Germany).
                      I’ve tested some “Jinvoo” (another Chinese product?), it works somehow, but API is not opened.

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 14
                      • 15
                      • 3 / 15
                      3 / 15
                      • First post
                        30/141
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy