• 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-Swipe - Hand gestures

Scheduled Pinned Locked Moved Troubleshooting
45 Posts 17 Posters 39.6k Views 16 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.
  • P Offline
    paviro Admin @mochman
    last edited by paviro Jun 10, 2016, 10:04 AM Jun 4, 2016, 7:00 PM

    @mochman to use GPIOs without root try exporting them via a shell command within node. The user than only has to be part of the gpio-group‘ :) check my MMM-PIR-Sensor` for an example!

    We're all stories in the end. Just make it a good one, eh?

    – The Doctor

    M 1 Reply Last reply Jun 4, 2016, 7:26 PM Reply Quote 1
    • M Offline
      mochman Module Developer @paviro
      last edited by Jun 4, 2016, 7:26 PM

      @paviro Does that only work with setting pins directly? I am using a helper_node that takes care of all of the pin setting and timing for the sensors. It looks like your code sets pins directly with the exec command. I’m not sure how to do that with the npm usonic functions.

      1 Reply Last reply Reply Quote 0
      • M Offline
        Mitchfarino Module Developer
        last edited by Jul 29, 2016, 9:33 PM

        @mochman I’m a complete amateur here mate

        I’ve got this far, but no idea what to do next :(

        Now what?

        I didn’t understand in the readme what it meant by pins etc.

        1 Reply Last reply Reply Quote 0
        • M Offline
          mochman Module Developer
          last edited by mochman Jul 30, 2016, 12:42 PM Jul 30, 2016, 12:41 PM

          @Mitchfarino Looks almost all good. I’m not sure if you have your trigger pin hooked up to ground from this picture. The pins in the config are not the actual pin #'s of the header. It uses the GPIO#. I use this picture as a reference.
          RP3 GPIO

          As an example you can see that pin 32 is called GPIO12. If you connected your Trig wire to that and your Echo wire to GPIO16 (physical pin 36). In the config.js you would use :

          echoLeftPin: 12,
          triggerLeftPin: 16,

          and then a similar setup for your other sensor.
          If you are still having issues with the setup, please let me know.

          As a reference point, your red wire is connected to physical pin #2.

          M 1 Reply Last reply Sep 2, 2016, 9:43 PM Reply Quote 0
          • B Offline
            BeLuGe
            last edited by Sep 1, 2016, 8:14 PM

            @mochman I have a problem when installing the modules. When I enter the module in the config. When I start the Magic Mirror I get the following error message and a white screen.

            Loading config ...
            Loading module helpers ...
            No helper found for module: alert.
            WARNING! Could not load config file. Starting with default configuration. Error found: Error: Module version mismatch. Expected 49, got 48.
            Loading module helpers ...
            No helper found for module: alert.
            App threw an error during load
            Error: Module version mismatch. Expected 49, got 48.
                at Error (native)
                at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:167:20)
                at Object.Module._extensions..node (module.js:568:18)
                at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:167:20)
                at Module.load (module.js:458:32)
                at tryModuleLoad (module.js:417:12)
                at Function.Module._load (module.js:409:3)
                at Module.require (module.js:468:17)
                at require (internal/module.js:20:19)
                at Object.<anonymous> (/home/pi/MagicMirror/node_modules/mmm-usonic/lib/usonic.js:5:14)
            Whoops! There was an uncaught exception...
            Error: Module version mismatch. Expected 49, got 48.
                at Error (native)
                at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:167:20)
                at Object.Module._extensions..node (module.js:568:18)
                at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:167:20)
                at Module.load (module.js:458:32)
                at tryModuleLoad (module.js:417:12)
                at Function.Module._load (module.js:409:3)
                at Module.require (module.js:468:17)
                at require (internal/module.js:20:19)
                at Object.<anonymous> (/home/pi/MagicMirror/node_modules/mmm-usonic/lib/usonic.js:5:14)
            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.
            ´´´
            1 Reply Last reply Reply Quote 0
            • M Offline
              mochman Module Developer
              last edited by Sep 2, 2016, 5:17 PM

              @BeLuGe Have you run npm install in the MMM-Swipe folder? Are you running the mirror with sudo? If so would you mind posting your config.js file. Thanks.

              1 Reply Last reply Reply Quote 0
              • B Offline
                BeLuGe
                last edited by BeLuGe Sep 2, 2016, 7:38 PM Sep 2, 2016, 7:38 PM

                @mochman Yes I have run npm install in the MMM-Swipe folder. I running the mirror without sudo.
                Error Message without sudo:

                Loading config ...
                Loading module helpers ...
                No helper found for module: alert.
                Initializing new module helper ...
                WARNING! Could not load config file. Starting with default configuration. Error found: Error: Module version mismatch. Expected 49, got 48.
                Loading module helpers ...
                No helper found for module: alert.
                Initializing new module helper ...
                App threw an error during load
                Error: Module version mismatch. Expected 49, got 48.
                    at Error (native)
                    at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:167:20)
                    at Object.Module._extensions..node (module.js:568:18)
                    at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:167:20)
                    at Module.load (module.js:458:32)
                    at tryModuleLoad (module.js:417:12)
                    at Function.Module._load (module.js:409:3)
                    at Module.require (module.js:468:17)
                    at require (internal/module.js:20:19)
                    at Object.<anonymous> (/home/pi/MagicMirror/modules/MMM-Swipe/node_modules/mmm-usonic/lib/usonic.js:5:14)
                Whoops! There was an uncaught exception...
                Error: Module version mismatch. Expected 49, got 48.
                    at Error (native)
                    at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:167:20)
                    at Object.Module._extensions..node (module.js:568:18)
                    at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:167:20)
                    at Module.load (module.js:458:32)
                    at tryModuleLoad (module.js:417:12)
                    at Function.Module._load (module.js:409:3)
                    at Module.require (module.js:468:17)
                    at require (internal/module.js:20:19)
                    at Object.<anonymous> (/home/pi/MagicMirror/modules/MMM-Swipe/node_modules/mmm-usonic/lib/usonic.js:5:14)
                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.
                

                Error Message with sudo:

                No protocol specified
                
                npm ERR! Linux 4.4.19-v7+
                npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "start"
                npm ERR! node v6.4.0
                npm ERR! npm  v3.10.3
                npm ERR! code ELIFECYCLE
                npm ERR! magicmirror@2.0.0 start: `electron js/electron.js`
                npm ERR! Exit status 1
                npm ERR!
                npm ERR! Failed at the magicmirror@2.0.0 start script 'electron js/electron.js'.
                npm ERR! Make sure you have the latest version of node.js and npm installed.
                npm ERR! If you do, this is most likely a problem with the magicmirror package,
                npm ERR! not with npm itself.
                npm ERR! Tell the author that this fails on your system:
                npm ERR!     electron js/electron.js
                npm ERR! You can get information on how to open an issue for this project with:
                npm ERR!     npm bugs magicmirror
                npm ERR! Or if that isn't available, you can get their info via:
                npm ERR!     npm owner ls magicmirror
                npm ERR! There is likely additional logging output above.
                
                npm ERR! Please include the following file with any support request:
                npm ERR!     /home/pi/MagicMirror/npm-debug.log
                

                config.js

                /* Magic Mirror Config Sample
                 *
                 * By Michael Teeuw http://michaelteeuw.nl
                 * MIT Licensed.
                 */
                
                var config = {
                        port: 8080,
                
                        language: 'de',
                        timeFormat: 24,
                        units: 'metric',
                
                        modules: [
                                {
                                        module: 'alert',
                                },
                    {
                        module: 'motiondetector',
                        config: {
                            timeout: 600000 // time in milliseconds for to switch off the display after last movement is detected.
                        }
                    },
                    {
                        module: 'MMM-Swipe',
                        position: 'bottom_left',    // Doesn't matter after it's setup.  It should be blank.
                                                    // Best results in one of the side regions like: bottom_left
                        config: {
                            // See 'Configuration options' for more information.
                            echoLeftPin: 24,        //Left Sensor's BCM Numbered Echo pin - REQUIRED
                            triggerLeftPin: 23,     //Left Sensor's BCM Numbered trigger pin - REQUIRED
                            echoRightPin: 26,       //Right Sensor's BCM Numbered Echo pin - REQUIRED
                            triggerRightPin: 25,    //Right Sensor's BCM Numbered trigger pin - REQUIRED
                            useAsButton: false,     //Enable a GPIO output when you "press".
                            buttonPin: 8,
                            verbose: true,
                            calibrate: true
                        }
                    },
                                {
                
                                        module: 'clock',
                                        position: 'top_left'
                                },
                                {
                                        module: 'calendar',
                                        header: 'Feiertage',
                                        position: 'top_left',
                                        config: {
                                                calendars: [
                                                        {
                                                                symbol: 'calendar-check-o ',
                                                                url: ''
                                                        }
                                                ]
                                        }
                                },
                    {
                        module: 'MMM-FRITZ-Box-Callmonitor',
                        position: 'top_right',  // This can be any of the regions. Best results in left or right regions.
                        header: "Letzte Anrufe", // This is optional
                
                        config: {
                            // See 'Configuration options' for more information.
                        }
                    },
                                {
                                        module: 'compliments',
                                        position: 'lower_third'
                                },
                                {
                                        module: 'currentweather',
                                        position: 'top_right',
                                        config: {
                                                location: '',
                                                locationID: '',  //ID from http://www.openweathermap.org
                                                appid: ''
                                        }
                                },
                                {
                                        module: 'weatherforecast',
                                        position: 'top_right',
                                        header: 'Wettervorhersage',
                                        config: {
                                    location: '',
                                                locationID: '',  //ID from http://www.openweathermap.org
                                    appid: ''
                                        }
                                },
                                {
                                        module: 'newsfeed',
                                        position: 'bottom_bar',
                                        config: {
                                                feeds: [
                                                        {
                                                                title: "N24 News",
                                                                url: "http://feeds.n24.de/n24/homepage.xml"
                                                        }
                                                ],
                                                showSourceTitle: true,
                                                showPublishDate: true
                                        }
                                },
                        ]
                
                };
                
                /*************** DO NOT EDIT THE LINE BELOW ***************/
                if (typeof module !== 'undefined') {module.exports = config;}
                
                
                M 1 Reply Last reply Sep 2, 2016, 11:06 PM Reply Quote 0
                • MitchfarinoM Offline
                  Mitchfarino Module Developer @mochman
                  last edited by Sep 2, 2016, 9:43 PM

                  @mochman I’m only just back looking at this

                  Any tutorial I find online says I need a breadboard too - is that correct?

                  What pins should put these in? Or where can I find resource on how to do it?0_1472852546333_IMG_20160902_223136.jpg

                  1 Reply Last reply Reply Quote 0
                  • mochmanM Offline
                    mochman Module Developer @BeLuGe
                    last edited by Sep 2, 2016, 11:06 PM

                    @BeLuGe So I just tried this myself. When I created the module, I was connected to the pi to test. I just tried using SSH to start the program and got the same error you’re getting. Looks like it’s a issue with running a sudo command over SSH, the workaround I found was to run sudo cp ~/.Xauthority /root/ then run DISPLAY=:0 sudo npm start. The problem with this is that everytime you restart your mirror you will need to run the copy command again.

                    @Mitchfarino You don’t need a breadboard. I just used one to test out my configuration. You can hook it up directly to the pi using those wires you have already connected. When I tested out my setup, I used these pins.

                    echoLeftPin: 24,       
                    triggerLeftPin: 23,     
                    echoRightPin: 26,      
                    triggerRightPin: 25,   
                    

                    Remember that those are the GPIO #'s and not the physical pin #.

                    MitchfarinoM 1 Reply Last reply Sep 2, 2016, 11:46 PM Reply Quote 0
                    • MitchfarinoM Offline
                      Mitchfarino Module Developer @mochman
                      last edited by Sep 2, 2016, 11:46 PM

                      @mochman I have vcc, trig, echo and gnd on my sensor - how do they map to the config you have posted?

                      mochmanM 1 Reply Last reply Sep 3, 2016, 11:21 AM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 1 / 5
                      • 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