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.

    DHT22 Sensor

    Scheduled Pinned Locked Moved Unsolved Requests
    16 Posts 3 Posters 11.6k Views 6 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.
    • strawberry 3.141S Offline
      strawberry 3.141 Project Sponsor Module Developer @Bangee
      last edited by

      @Bangee go into the directory of your new module e.g. ~/MagicMirror/modules/MMM-Temperature/ and type npm init and follow the instructions, after that type npm install --save node-dht-sensor

      Please create a github issue if you need help, so I can keep track

      1 Reply Last reply Reply Quote 1
      • BangeeB Offline
        Bangee Module Developer
        last edited by

        @strawberry-3-141 thank you! that worked for me.
        But now i’ve got this error:

        mm-0 App threw an error during load
        mm-0 Error: Module version mismatch. Expected 49, got 48.
        mm-0     at Error (native)
        mm-0     at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:167:20)
        mm-0     at Object.Module._extensions..node (module.js:568:18)
        mm-0     at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:167:20)
        mm-0     at Module.load (module.js:458:32)
        mm-0     at tryModuleLoad (module.js:417:12)
        mm-0     at Function.Module._load (module.js:409:3)
        mm-0     at Module.require (module.js:468:17)
        mm-0     at require (internal/module.js:20:19)
        mm-0     at Object.<anonymous> (/home/pi/MagicMirror/modules/temperature/node_helper.js:2:17)
        mm-0 Whoops! There was an uncaught exception...
        mm-0 Error: Module version mismatch. Expected 49, got 48.
        mm-0     at Error (native)
        mm-0     at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:167:20)
        mm-0     at Object.Module._extensions..node (module.js:568:18)
        mm-0     at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:167:20)
        mm-0     at Module.load (module.js:458:32)
        mm-0     at tryModuleLoad (module.js:417:12)
        mm-0     at Function.Module._load (module.js:409:3)
        mm-0     at Module.require (module.js:468:17)
        mm-0     at require (internal/module.js:20:19)
        mm-0     at Object.<anonymous> (/home/pi/MagicMirror/modules/temperature/node_helper.js:2:17)
        mm-0 MagicMirror will not quit, but it might be a good idea to check why this happened. Maybe no internet connection?
        mm-0 If you think this really is an issue, please open an issue on GitHub: https://github.com/MichMich/MagicMirror/issues
        mm-0 Launching application.
        

        On line 2:

        var sensorLib = require("node-dht-sensor");
        

        Node Version

        pi@raspberrypi:~/MagicMirror/modules $ node -v
        v6.3.1
        
        strawberry 3.141S 1 Reply Last reply Reply Quote 0
        • strawberry 3.141S Offline
          strawberry 3.141 Project Sponsor Module Developer @Bangee
          last edited by

          @Bangee depending on your other post about this problem in a different thread I assume you have a newer node version installed as you had on your old sd card, so maybe this will help you https://docs.npmjs.com/cli/rebuild

          Please create a github issue if you need help, so I can keep track

          1 Reply Last reply Reply Quote 0
          • BangeeB Offline
            Bangee Module Developer
            last edited by

            @strawberry-3-141 I’ve tried this before, but did not work for me. I’ve also made a reboot.

            Will i need to have a downgrade?

            strawberry 3.141S 1 Reply Last reply Reply Quote 0
            • strawberry 3.141S Offline
              strawberry 3.141 Project Sponsor Module Developer @Bangee
              last edited by

              @Bangee never had such an issue before, did a clean install instead of copying images on sdcard, is there a reason why you copied an old image?

              Please create a github issue if you need help, so I can keep track

              1 Reply Last reply Reply Quote 0
              • BangeeB Offline
                Bangee Module Developer
                last edited by

                ah no, I’ve made a new installation on a brand new sd card.
                I moved my own moduls. the temperature module is a new one.

                But I’ve got the same with @paviro PIR moudle… :-(

                1 Reply Last reply Reply Quote 0
                • strawberry 3.141S Offline
                  strawberry 3.141 Project Sponsor Module Developer
                  last edited by

                  did you copy all the node_modules directories? if so this is propably the issue go to the module remove the directories and run npm install

                  Please create a github issue if you need help, so I can keep track

                  1 Reply Last reply Reply Quote 0
                  • BangeeB Offline
                    Bangee Module Developer
                    last edited by

                    No, I’ve installed the node_modules with npm install.

                    https://github.com/paviro/MMM-PIR-Sensor/issues/9

                    1 Reply Last reply Reply Quote 0
                    • strawberry 3.141S Offline
                      strawberry 3.141 Project Sponsor Module Developer
                      last edited by

                      then I have no clue sry

                      Please create a github issue if you need help, so I can keep track

                      1 Reply Last reply Reply Quote 0
                      • BangeeB Offline
                        Bangee Module Developer
                        last edited by Bangee

                        I could fix this with the same workaround as the PIR Sensor.

                        now its runnig but electron start up everything and crashes after loading all data.

                        Any idea howto debug this? ther is nothing in my error logs…

                        /var/log/messages:

                        pi@raspberrypi:~/MagicMirror/modules/temperature $ tail -f /var/log/messages
                        Sep 14 13:16:05 raspberrypi kernel: [706942.834881] gpiomem-bcm2835 3f200000.gpiomem: gpiomem device opened.
                        Sep 14 13:16:32 raspberrypi kernel: [706969.575020] gpiomem-bcm2835 3f200000.gpiomem: gpiomem device opened.
                        Sep 14 13:17:00 raspberrypi kernel: [706997.192894] gpiomem-bcm2835 3f200000.gpiomem: gpiomem device opened.
                        

                        thats all… :-(

                        node_helper.js:

                        'use strict';
                        
                        /* Magic Mirror
                         * Module: temperatur.js
                         *
                         * By Benjamin Angst 
                         * MIT Licensed.
                         */
                        
                        const NodeHelper = require('node_helper');
                        const sensorLib = require('node-dht-sensor');
                        
                        module.exports = NodeHelper.create({
                        		 start: function () {
                        			 console.log('Temperatur helper started ...');
                        		 },
                        		 
                        		 // Subclass socketNotificationReceived received.
                        		 socketNotificationReceived: function(notification, payload) {
                        		   const self = this;
                        		   if (notification === 'REQUEST') {
                        			 var sensor = {
                        			     initialize: function () {
                        			         return sensorLib.initialize(22, 27);
                        			     },
                        			     read: function () {
                        			         var readout = sensorLib.read();
                        			         console.log('Temperature: ' + readout.temperature.toFixed(2) + 'C, ' +
                        			             'humidity: ' + readout.humidity.toFixed(2) + '%');
                        			         setTimeout(function () {
                        			             sensor.read();
                        			         }, 2000);
                        			         // Send Temperatur
                        			         self.sendSocketNotification('DATA',{
                        							temp: readout.temperature.toFixed(2),
                        							humidity: readout.humidity.toFixed(2)
                        					 });
                        			     }
                        			 };
                        			
                        			 if (sensor.initialize()) {
                        			     sensor.read();
                        			 } else {
                        			     console.warn('Failed to initialize sensor');
                        			 }
                        		   }
                        		 }
                         
                        });
                        

                        temperature.js

                        /* Magic Mirror
                         * Module: temperatur.js
                         *
                         * By Benjamin Angst 
                         * MIT Licensed.
                         */
                        
                        Module.register("temperature",{
                            // Default module config.
                            defaults: {
                                gpioPIN: 27,
                                sensorType: 22, // Can be 22 or 11
                                prependString: "Temperatur ",
                            },
                        
                            // Override dom generator.
                            getDom: function() {
                                var wrapper = document.createElement("div");
                                wrapper.innerHTML = "T: " + this.temperature + " °C / H: " + this.humidity + " %";
                                return wrapper;
                            },
                            
                            start: function() {
                                this.temperature = 'fetching...';
                                this.sendSocketNotification('REQUEST');
                            },
                        
                        
                            socketNotificationReceived: function(notification, payload) {
                            if (notification === 'DATA') {
                                this.temperature = payload.temp;
                                this.humidity = payload.humidity;
                                this.updateDom();
                            }
                            },
                        });
                        
                        
                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 1 / 2
                        • First post
                          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