MMM-GroveGestures



  • Hi everybody,@Sean and @Benjaminh86
    I use this module just for change pages with MMM-Pages and MMM-Pages indicator but after a while, my sensor is unknown.
    when i just want to test the sensor with “python gesture_print.py”, i have:

    Error with sensor
    Paj7620 initialize register finished.

    my matrix is good i think:

    sudo i2cdetect -y 1
    0 1 2 3 4 5 6 7 8 9 a b c d e f
    00: 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
    10: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f
    20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f
    30: 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f
    40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f
    50: 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f
    60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
    70: 70 71 72 73 74 75 76 77

    and i have 5 file in /home/pi/MagicMirror/modules/MMM-GroveGestures/py
    I restart Raspberry but the result is the same

    Can aybody help me please ?


  • Module Developer

    @MisterT
    0_1561398753466_GX90uKR.png
    If you get one similar with this (All address are shown), It would be something wrong.
    Only 73 should be shown. There might be dead pin or H/W failure.



  • @Sean thanks for your answer it was a H/W failure I2C was not activate and i don’t know why ? I enabled I2c with raspi-config and shutdown the pi. I pluged my sensor again and it works



  • @Sean Hi mate, just dipping my toe in to the whole Magic Mirror world and loving it. Was just wondering if there’s any way to control MMM-Carousel and MMM-CECControl using the output from MMM-GroveGestures?

    I’m thinking

    • Clockwise for next slide
    • Anti clockwise for previous slide
    • UP to send the wake up signal on HDMI
    • Down to send the sleep signal on HDMI

  • Module Developer

    @jim-dw
    Well, I’m not the author of those modules, so Ask these to the creator of MMM-Carousel / MMM-CECControl ;(Or need to check by yourself)

    • Are there notifications for that purpose?
    • Or Are there method of module class for that purpose?
    • Or controllable by external shell script or HTTP API?

    At least one of them possible, it could.



  • @Sean lol. Good point.

    I guess what confused me is this code below. I understand ‘clock’ or ‘newsfeed’ can be swapped out for ‘mmm-ceccontrol’ or ‘mmm-carousel’ it’s just figuring out how I send the command.

    Is it “module.hide()” that needs to be replaced?

    Sorry for this. Still learning

    moduleExec: {
    module: [“clock”, “newsfeed”], // [] will be all modules.
    exec: (module, gestures) => {
    module.hide()
    }
    }


  • Module Developer

    @jim-dw
    right. “.hide()” is a common method of every module should have. Usually, module developer need to implement that method by his own or just leave it as inheritance from parent class. So, every module will have that “hide()” method definitely.
    Now, let’s see your needs.
    For example;
    If MMM-Carousel has specific method like “changePage(pageNo)”(IDK whether really it exists o not), you can call that method with “moduleExec”
    However I’m not the author of MMM-Carousel, so don’t know it supports or not. Ask to the author.



  • @Sean hide() technically turns into a suspend function call in the module
    show() turns into resume()



  • @Sean You know what, I think I understood that mate. Thank you. I guess I’m gonna have to learn a little bit of python. Thank you