Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Troubleshooting
  3. Motion Sensor triggering on its own

Motion Sensor triggering on its own

Scheduled Pinned Locked Moved Troubleshooting
39 Posts 19 Posters 24.9k Views 13 Watching
  • 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.
  • bjacobseB Offline
    bjacobseB Offline
    bjacobse
    wrote on last edited by
    #5

    A tutorial how a PIR sensor is detecting, using the Fresnel lens. To understand that the PIR is detect areas of "heat" and "cold"
    http://www.instructables.com/id/PIR-Motion-Sensor-Tutorial/

    1 Reply Last reply
    0
    • ErrKE Offline
      ErrKE Offline
      ErrK
      Plugin Developer
      wrote on last edited by
      #6

      I have just find out the same problem with one of my nodes that have a HC-SR501 motion sensor.
      It is a Arduino 5v with the same sketch as 3 other nodes.

      It updates every second and i have it right now in a closed box so it shuld not trigger any motion.
      I have tried to clearEEPROM and tried again, but i get the same result.

      What can i do?

      M 1 Reply Last reply
      0
      • sundberg84S Offline
        sundberg84S Offline
        sundberg84
        Hardware Contributor
        wrote on last edited by
        #7

        @ErrK try to rewire the node - you can also measure if the signal pin from motion sensor is high all the time.

        Controller: Proxmox VM - Home Assistant
        MySensors GW: Arduino Uno - W5100 Ethernet, Gw Shield Nrf24l01+ 2,4Ghz
        MySensors GW: Arduino Uno - Gw Shield RFM69, 433mhz
        RFLink GW - Arduino Mega + RFLink Shield, 433mhz

        ErrKE 1 Reply Last reply
        0
        • sundberg84S sundberg84

          @ErrK try to rewire the node - you can also measure if the signal pin from motion sensor is high all the time.

          ErrKE Offline
          ErrKE Offline
          ErrK
          Plugin Developer
          wrote on last edited by
          #8

          @sundberg84 thanks. I will try it.

          1 Reply Last reply
          0
          • ErrKE ErrK

            I have just find out the same problem with one of my nodes that have a HC-SR501 motion sensor.
            It is a Arduino 5v with the same sketch as 3 other nodes.

            It updates every second and i have it right now in a closed box so it shuld not trigger any motion.
            I have tried to clearEEPROM and tried again, but i get the same result.

            What can i do?

            M Offline
            M Offline
            Maciej Kulawik
            wrote on last edited by
            #9

            @ErrK I had similar problem with my hc-sr501 pir. It seems that some pirs are very sensitive to any electromagnetic noise. For me pir was reporting false positives each time nrf was sending data. You can easily test it: just remove any gw.send commands and solder led to pir output (of course through 1k resistor). When pir is detecting a motion output goes high so led will go on for the time set by pir potentiometer. In my case each sending (when for example battery level was reported each 30 min) resulted in false pir trigger.
            It seems that this depends on specific device. I switched pirs between my sensors and this false triggering went to other node :-)
            Finally I solved this problem in software. I can share my sketch that is working well for two of my nodes.

            Btw: there are many discussions on the web about those pir false triggering concerning remote radio nodes. I took the idea of software solution from there.

            Of course in your case reasons can be different...

            ErrKE 1 Reply Last reply
            1
            • M Maciej Kulawik

              @ErrK I had similar problem with my hc-sr501 pir. It seems that some pirs are very sensitive to any electromagnetic noise. For me pir was reporting false positives each time nrf was sending data. You can easily test it: just remove any gw.send commands and solder led to pir output (of course through 1k resistor). When pir is detecting a motion output goes high so led will go on for the time set by pir potentiometer. In my case each sending (when for example battery level was reported each 30 min) resulted in false pir trigger.
              It seems that this depends on specific device. I switched pirs between my sensors and this false triggering went to other node :-)
              Finally I solved this problem in software. I can share my sketch that is working well for two of my nodes.

              Btw: there are many discussions on the web about those pir false triggering concerning remote radio nodes. I took the idea of software solution from there.

              Of course in your case reasons can be different...

              ErrKE Offline
              ErrKE Offline
              ErrK
              Plugin Developer
              wrote on last edited by
              #10

              @Maciej-Kulawik Thanks.

              Today my second node started to do this too.
              I have tried to change the HC-SR501 and the problem seams to be on the node and not on the sensor.
              Can i see how you fixed this in the sketch?

              M 1 Reply Last reply
              0
              • J Offline
                J Offline
                Jan Gatzke
                wrote on last edited by
                #11

                I have solved this by reading the status of the HC-SR501 twice. Works finde for me.

                 boolean tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH; 
                        
                  Serial.println(tripped);
                  if (tripped==1){
                    //wait
                    delay(100);
                    //read the pin again
                    tripped = digitalRead(DIGITAL_INPUT_SENSOR) == HIGH; 
                     if (tripped==1){
                  gw.send(msg2.set(tripped?"1":"0"));  // Send tripped value to gw 
                  }
                  }
                
                1 Reply Last reply
                0
                • R Offline
                  R Offline
                  robosensor
                  wrote on last edited by
                  #12

                  The same problem for me. Different HC-SR501 sensors (connected to one of three nodes with this sensors) periodically entering "flood mode" with continuous sending 1/0 values. I suspect that this is power supply related problems.

                  J 1 Reply Last reply
                  0
                  • bjacobseB Offline
                    bjacobseB Offline
                    bjacobse
                    wrote on last edited by
                    #13

                    I have for a sonar sensor (Ultrasonic Module HC-SR04) used in RPI and written in Python, used to measure 3 times and if all 3 measurements are same, then result is valid and data send. This is working perfect for me. You can create something similar for your Arduino

                    intdistance = 0

                            distance = -1
                            continueLoop = True
                            log.debug("Loop until distance1 = distance2 = distance3")
                            while(continueLoop):
                                #distance = ser.read(size=3)
                                distance = ser.readline()
                                getValue1 =  distance.rstrip('\r\n')
                                log.debug("distance1: %s", getValue1)
                    
                                distance = ser.readline()
                                getValue2 =  distance.rstrip('\r\n')
                                log.debug("distance2: %s", getValue2)
                    
                                distance = ser.readline()
                                getValue3 =  distance.rstrip('\r\n')
                                log.debug("distance3: %s", getValue3)
                    
                                distance == getValue1
                    
                                if  getValue1 == getValue2 and getValue2 == getValue3 :
                                    continueLoop = False
                    
                            intdistance = int(distance)
                            log.info("distance: %d to be sent to Agocontrol", intdistance)
                    
                    1 Reply Last reply
                    0
                    • R robosensor

                      The same problem for me. Different HC-SR501 sensors (connected to one of three nodes with this sensors) periodically entering "flood mode" with continuous sending 1/0 values. I suspect that this is power supply related problems.

                      J Offline
                      J Offline
                      Jan Gatzke
                      wrote on last edited by
                      #14

                      @robosensor Have you tried to enable the ibternal pullup for the pin?

                      R 1 Reply Last reply
                      0
                      • J Jan Gatzke

                        @robosensor Have you tried to enable the ibternal pullup for the pin?

                        R Offline
                        R Offline
                        robosensor
                        wrote on last edited by
                        #15

                        @Jan-Gatzke said:

                        @robosensor Have you tried to enable the ibternal pullup for the pin?

                        Didn't read biss0001 datasheet, so I don't know is output pin 5V-compatible (for pullup) or not, so I didn't tried to enable internal pullup.

                        In any case I will try to check what happens with OUT pin of module during this 1/0 flood.

                        1 Reply Last reply
                        0
                        • ErrKE Offline
                          ErrKE Offline
                          ErrK
                          Plugin Developer
                          wrote on last edited by
                          #16

                          Thanks @Jan-Gatzke it did not work for me this time.

                          I'm using a 5v Arduino Pro mini and when i measure the power on the HC-SR501 i get 3.71v.
                          When i measure the power on the VCC i get 3.69v and when i measure the RAW i get 5.43v.

                          Here you can se how everything is wired, I use the Easy/Newbie PCB by @sundberg84.
                          1_1457118103690_IMG_6345 copy.jpg
                          0_1457118103689_IMG_6346 copy.jpg

                          First i used the 5v cable to the raw on the PCB and then it did't work.
                          When I change to connect to the PWR then it works. Don't know why. Maybe @sundberg84 know why?

                          1 Reply Last reply
                          0
                          • sundberg84S Offline
                            sundberg84S Offline
                            sundberg84
                            Hardware Contributor
                            wrote on last edited by sundberg84
                            #17

                            Hi @ErrK.

                            Work your way backwards with the multimeter. Are you powering with 5v there shouldnt be a drop to 3v. Check volt over arduino and then vcc output. As i said work you way backwards in the circuit.

                            I suspect a faulty hardware somewhere, measure the input and output on the voltage regulator on the arduino.

                            Controller: Proxmox VM - Home Assistant
                            MySensors GW: Arduino Uno - W5100 Ethernet, Gw Shield Nrf24l01+ 2,4Ghz
                            MySensors GW: Arduino Uno - Gw Shield RFM69, 433mhz
                            RFLink GW - Arduino Mega + RFLink Shield, 433mhz

                            1 Reply Last reply
                            0
                            • ErrKE ErrK

                              @Maciej-Kulawik Thanks.

                              Today my second node started to do this too.
                              I have tried to change the HC-SR501 and the problem seams to be on the node and not on the sensor.
                              Can i see how you fixed this in the sketch?

                              M Offline
                              M Offline
                              Maciej Kulawik
                              wrote on last edited by
                              #18

                              @ErrK In my case PIR switches into HIGH for some seconds (depending on potentiometer), so reading after 100ms will give the same value.

                              @ErrK Unfortunately my solution is not 100% reliable. For 2 of my nodes it works well, but for 3rd node (the same hardware, the same sketch, only PCB is a little bi different - previous version, but difference only in dimension) - pir is false triggerring almost each minute (sometimes with 2 minutes delay with false triggering). And I checked - it is not caused by NRF sending. I have no idea whats going on.

                              1 Reply Last reply
                              0
                              • rvendrameR Offline
                                rvendrameR Offline
                                rvendrame
                                Hero Member
                                wrote on last edited by
                                #19

                                @Maciej-Kulawik , how are you powering the node? I had once a PIR false-triggering due power instabilities...

                                Home Assistant / Vera Plus UI7
                                ESP8266 GW + mySensors 2.3.2
                                Alexa / Google Home

                                M 1 Reply Last reply
                                0
                                • fifipil909F Offline
                                  fifipil909F Offline
                                  fifipil909
                                  wrote on last edited by
                                  #20

                                  Hi,

                                  i'm wanted to share my experience also with those sensor.
                                  I had a lot of issue with false trigger when running on 3.3V. In my case the power was definitely the issue.
                                  it's looks like sleeping the radio/mcu cause some noise on the voltage line.

                                  I solve 100% of my false trigger issue when doing a small sleep, before enabling the sleep with interrupt.

                                  gw.sleep(500);
                                  gw.sleep(INTERRUPT,RISING, SLEEP_TIME);
                                  
                                  1 Reply Last reply
                                  0
                                  • rvendrameR rvendrame

                                    @Maciej-Kulawik , how are you powering the node? I had once a PIR false-triggering due power instabilities...

                                    M Offline
                                    M Offline
                                    Maciej Kulawik
                                    wrote on last edited by
                                    #21

                                    @rvendrame I'm powering all with 2xAA baterries. On PIR I removed regulator. The problem with false trigerring is independent from voltage level. It is the same if I put old baterries (2,8V) or brand new (3,2V).
                                    @fifipil909 I also suspect that it is somehow connected to powering noises and mcu sleeping. In my one case PIR is triggering each minute - and sleep time is also one minute.

                                    1 Reply Last reply
                                    0
                                    • rvendrameR Offline
                                      rvendrameR Offline
                                      rvendrame
                                      Hero Member
                                      wrote on last edited by
                                      #22

                                      @Maciej-Kulawik , maybe if you try to power the PIR with +5V for a while and watch the results? Don't forget to keep all GNDs inter-connected...

                                      Home Assistant / Vera Plus UI7
                                      ESP8266 GW + mySensors 2.3.2
                                      Alexa / Google Home

                                      1 Reply Last reply
                                      0
                                      • SweebeeS Offline
                                        SweebeeS Offline
                                        Sweebee
                                        wrote on last edited by
                                        #23

                                        I'm also having this issue at 3V. It gets triggered if there is a (little) voltage drop. All my pirs only wake with an interrupt and no timer, then it works fine. But with a sleep timer it won't work the normal way.

                                        At 5V everything works fine.

                                        Maybe @fifipil909 's solution works.

                                        1 Reply Last reply
                                        0
                                        • ahmedadelhosniA Offline
                                          ahmedadelhosniA Offline
                                          ahmedadelhosni
                                          wrote on last edited by
                                          #24

                                          I was testing the below sensor with 3.3v and it was reporting false status. It worked well with 5v. Although the site claims it works between 3 to 5 volts.
                                          Maybe power issues

                                          http://store.fut-electronics.com/products/pir-motion-sensor-module-adjustable-range

                                          M 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          22

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular