• 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-GroveGestures

Scheduled Pinned Locked Moved System
51 Posts 8 Posters 18.8k Views 12 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.
  • B Offline
    bolish
    last edited by Jan 22, 2019, 10:42 AM

    Thanks for the answer and the additional “sequence” tip. Let’s follow up on GitHub post if needed.

    1 Reply Last reply Reply Quote 0
    • B Offline
      Benjaminh86
      last edited by Mar 23, 2019, 8:43 AM

      Hello World,

      I love your module!
      I use MMM-page-selector to switch between 2 pages. I wanted to use grove gesture to change pages, but I can not adapt the script.
      I can see my gestures in the Magic Mirror when I pass my hand in front of the grove gesture; after, i do not know what to put in config.js
      Can you help me?
      For information, my english is bad, and I do not know anything about programming!

      Thank you

      BenH

      ? 1 Reply Last reply Mar 23, 2019, 3:52 PM Reply Quote 0
      • ? Offline
        A Former User @Benjaminh86
        last edited by Mar 23, 2019, 3:52 PM

        @Benjaminh86
        Let’s assume You have page 1 and 2.

        You can assign gesture LEFT to 1, RIGHT to 2.
        At that case, you can add this to your command set(default or any other you want).

        "LEFT": {
          notificationExec: {
            notification: "PAGE_SELECT",
            payload: "1",
          }
        },
        "RIGHT": {
          notificationExec: {
            notification: "PAGE_SELECT",
            payload: "2",
          }
        },
        

        The problem is, MMM-page-selector has no feature of “NEXT PAGE” or “PREVIOUS PAGE”. so when there be more than 2 pages, you should assign gestures per each page.

        B 1 Reply Last reply Mar 23, 2019, 5:58 PM Reply Quote 0
        • B Offline
          Benjaminh86 @Guest
          last edited by Mar 23, 2019, 5:58 PM

          @Sean as I said, I’m a beginner, and I do not understand everything in programming.
          In addition, I have a synthaxe error on the line “exec: (module, gestures) => {”
          it indicates a problem with the symbol =>.
          Can you help me?

          ? 2 Replies Last reply Mar 23, 2019, 6:11 PM Reply Quote 0
          • ? Offline
            A Former User @Benjaminh86
            last edited by Mar 23, 2019, 6:11 PM

            @Benjaminh86
            Show me your configuration.

            B 1 Reply Last reply Mar 23, 2019, 6:16 PM Reply Quote 0
            • B Offline
              Benjaminh86 @Guest
              last edited by Mar 23, 2019, 6:16 PM

              @Sean

              here is my configuration for your module :

              {
              module: “MMM-GroveGestures”,
              position: “top_right”,
              pages: {‘all’: ‘top_right’},
              config: {
              autoStart: true, //When Mirror starts, recognition will start.
              verbose:false, // If set as true, useful messages will be logged.
              recognitionTimeout: 1000, //Gesture sequence will be ended after this time from last recognized gesture.
              cancelGesture: “WAVE”, //If set, You can cancel gesture sequence with this gesture.
              visible: true, //Recognized gesture sequence will be displayed on position

              idleTimer: 1000*60*30, // `0` for disable, After this time from last gesture, onIdle will be executed.
              onIdle: { // See command section
                moduleExec: {
                  module: [],
                  exec: (module, gestures) => {
                    module.hide(1000, null, {lockstring:"GESTURE"})
              	}
                   }
                    },
              onDetected: {
                notificationExec: {
                  notification: "GESTURE_DETECTED",
                },
                /* You can make Mirror to wake up the modules which were hidden by onIdle with any gestures.
                moduleExec: {
                  module: [],
                  exec: (module) => {
                    module.show(1000, null, {lockstring:"GESTURE"})
                  }
                }
                */
              },
              
              gestureMapFromTo: { //When your sensor is installed with rotated direction, you can calibrate with this.
                "Up": "UP",
                "Down": "DOWN",
                "Left": "LEFT",
                "Right": "RIGHT",
                "Forward": "FORWARD",
                "Backward": "BACKWARD",
                "Clockwise": "CLOCKWISE",
                "anti-clockwise": "ANTICLOCKWISE",
                "wave": "WAVE"
              },
              commandSet: {
                   "LEFT": {
              	notificationExec: {
              		notification: "PAGE_SELECT",
              		payload: "main",
              	}
                   },
                    "RIGHT": {
              	notificationExec: {
              		notification: "PAGE_SELECT",
              		payload: "2",
                    }
                  },
                },
              },
              

              }
              },

              ? 1 Reply Last reply Mar 23, 2019, 6:21 PM Reply Quote 0
              • ? Offline
                A Former User @Benjaminh86
                last edited by Mar 23, 2019, 6:21 PM

                @Benjaminh86
                Your configuration about commandSet has something wrong.

                commandSet: {
                  "default" : {
                    "LEFT": {
                      notificationExec: {
                        notification: "PAGE_SELECT",
                        payload: "main",
                      }
                    },
                    "RIGHT": {
                      notificationExec: {
                        notification: "PAGE_SELECT",
                        payload: "2",
                      }
                    },
                  },
                },
                
                1 Reply Last reply Reply Quote 0
                • ? Offline
                  A Former User @Benjaminh86
                  last edited by Mar 23, 2019, 6:23 PM

                  @Benjaminh86
                  And Have you syntax error? How did you know? Have you used npm check:config? That knows old-fashioned style javascript grammar. So it might not understand new trendy ES6 style grammar.
                  Try this to check your javascript syntax.
                  http://esprima.org/demo/validate.html

                  B 2 Replies Last reply Mar 23, 2019, 6:26 PM Reply Quote 0
                  • B Offline
                    Benjaminh86 @Guest
                    last edited by Mar 23, 2019, 6:26 PM

                    @Sean

                    I used the command “npm run config: check”

                    1 Reply Last reply Reply Quote 0
                    • B Offline
                      Benjaminh86 @Guest
                      last edited by Mar 23, 2019, 8:06 PM

                      @Sean I modified my JavaScript and corrected the errors.
                      On my Magic Mirror, I can see my left right scan, but the page does not change.
                      an idea…

                      ? 1 Reply Last reply Mar 23, 2019, 8:09 PM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 1 / 6
                      • 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