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-Buttons] Connect multiple buttons to send configurable notifications

    Scheduled Pinned Locked Moved System
    40 Posts 15 Posters 33.8k Views 14 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
      Burner911
      last edited by

      This sounds awesome! Do you think there is a relatively easy way to output from the GPIO instead? I would like to turn my TV off using a transistor being it does not support HDMI-CEC like a monitor does. I’m thinking this might be best discussed with regards to MMM-Remote-Control.

      1 Reply Last reply Reply Quote 0
      • tosti007T Offline
        tosti007 Module Developer
        last edited by

        Nice! I think many people will be able to use this for their mirror

        If there is anything don't hesitate to contact me!
        ProfileSwitcher, TouchNotifications

        1 Reply Last reply Reply Quote 0
        • istepgueuI Offline
          istepgueu
          last edited by istepgueu

          Hi @Jopyth !

          Thanks for your module.

          I would like to use an on / off button instead of a push button
          for my garage door project (https://forum.magicmirror.builders/topic/1620/garage-door-detectors)

          Is there a way to send a notification on “button_up” and an other notification on “Button_down” ?

          Thank you very much ;-)

          1 Reply Last reply Reply Quote 0
          • istepgueuI Offline
            istepgueu
            last edited by

            Does anyone know how to read the initial value of a button (GPIO) before it is run ?

            Thanks.

            1 Reply Last reply Reply Quote 0
            • M Offline
              Mar
              last edited by

              @Jopyth Moved my post here out from another thread.

              I am having one more issue though. Using a python test program i can see every single instance of my button press is registered instantly. But in the mirror it seems MMM-Buttons doesnt register pushes unless sometimes I double or triple click…then sometimes the button registers 5-6 times. I’m not really sure how to debug this sort of thing.

              Also would it be right to assume the pull up/down resistors were not enabled with MMM-Buttons?

              istepgueuI 2 Replies Last reply Reply Quote 0
              • istepgueuI Offline
                istepgueu @Mar
                last edited by

                @Mar all is here https://forum.magicmirror.builders/topic/211/button

                ;-)

                M 1 Reply Last reply Reply Quote 0
                • istepgueuI Offline
                  istepgueu @Mar
                  last edited by

                  @Mar i have same problem. I run my little script button.py before start MM and its solve the problem

                  M 1 Reply Last reply Reply Quote 0
                  • M Offline
                    Mar @istepgueu
                    last edited by Mar

                    @istepgueu Ive taken your button.py program and modified it for me two buttons 5/6. And while the program reads my button presses perfectly, MM-Buttons doesnt at all. I pretty much have to double click each time to make a button register. It switches my profiles just fine … but just takes lots of clicks to register.

                    import RPi.GPIO as GPIO
                    import time
                    
                    GPIO.setmode(GPIO.BCM)
                    GPIO.setup(5, GPIO.IN, pull_up_down=GPIO.PUD_UP)
                    GPIO.setup(6, GPIO.IN, pull_up_down=GPIO.PUD_UP)
                    
                    tries = 0
                    
                    while (tries < 200000):
                        if GPIO.input(6):
                            print("Open 6")
                        else:
                            print("Close 6")
                        if GPIO.input(5):
                            print("Open 5")
                        else:
                            print ("Close 5")
                        time.sleep(0.5)
                        tries = tries + 1
                    
                    1 Reply Last reply Reply Quote 0
                    • M Offline
                      Mar @istepgueu
                      last edited by Mar

                      @istepgueu Will take a look through this now, but i already have a 1k resistor between pins 5/6 and the respective button. Hopefully something else comes up here.

                      Yes my problem seems a bit opposite of what was posted in your link. I dont have any erroneous button presses, it just takes a few clicks until MMM-Buttons registers the click. You button.py registers every click instantly. So must be something in the buttons code?

                      1 Reply Last reply Reply Quote 0
                      • J Offline
                        Jopyth Moderator
                        last edited by Jopyth

                        @Mar @istepgueu The library (onoff) I am currently using does not directly allow configuring pull up and pull down resistors, and I was not able to make it consistently work (see Readme).

                        Therefore I myself made use of the “right” pins for my setup, as the readme says:

                        The defaults can be seen in Table 6-31 on pages 102 and 103 of the BCM2835 ARM Peripherals documentation.

                        There I simply used buttons with the correct default pull-up/pull-down resistor configuration (second column of that table), and I wanted a few pins close together on the board, so I chose GPIO 22,23,24 and 25 (connected 4 buttons), since they all have the default of a low input.

                        Helpful sticky: How to troubleshoot

                        M 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 4 / 4
                        • 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