I am trying to detect movement for a project and have a DYP-ME003DD PIR sensor. It has 4 pins, +,-,CDS (I think this is what it says, it's hard to read) & OUT.

When I connect it to my Arduino and it detects movement it set the CDS to HIGH. However it stays HIGH for ~10 seconds.

The OUT pin also goes HIGH on movement and seems to match the CDS pin in waiting for ~10 seconds before returning to a LOW state.

I see online that there is a couple of triggering modes for this PIR but I have been unable to find how to change between them.

Why does this PIR have two output pins, and how do I get an immediate reading? I.e. if I move it detects but if I stop it also detects and doesn't wait for the ~10 second delay it currently seems to be stuck on.

Link to specifications and image:

Image of PCB of DYP-ME003DD

  • 1
    \$\begingroup\$ It looks as though they have a few small pots to adjust sensitivity and the delay. Maybe if you could post a clear photo of the PCB someone could spot them, the documentation I found didn't seem to have a clear indication of where they are. \$\endgroup\$
    – PeterJ
    Commented May 18, 2014 at 2:25
  • \$\begingroup\$ @PeterJ I can't see any pots on it. I know the DYP-ME003 does have them but the DYP-ME003DD version just mentions Optional trigger methods between repeatable trigger (default) and non-repeatable trigger. \$\endgroup\$
    – dibs
    Commented May 18, 2014 at 3:53
  • \$\begingroup\$ Can't spot one either, the different options might be what they load onto the board in the way of resistors etc at the time of manufacture. It'd be worth carefully probing around the board between ground and some of the IC pins to see if you can find the signal in a non-delayed state. \$\endgroup\$
    – PeterJ
    Commented May 18, 2014 at 4:08
  • \$\begingroup\$ @PeterJ Good idea. Do you think I could just use a 220 Ohm resistor in series with an LED for that? \$\endgroup\$
    – dibs
    Commented May 18, 2014 at 4:13
  • \$\begingroup\$ That should be fine although the Arduino input will have a high input impedance (less likely to interfere with the circuit) so that may even be better. \$\endgroup\$
    – PeterJ
    Commented May 18, 2014 at 4:15

1 Answer 1


That module is based on the common BISS0001 PIR sensor IC. That specific module is not common, especially with 4 pin outs, but since the IC is the same, it all applies.

The On Time, Off Time, and Trigger Mode are handled by a few pins on the IC.

enter image description here

On Time is handled by pin 3. The resistor(s) and capacitor connected to it determine the time. The Formula is Tx in Seconds ~= 24576 * Rx in kΩ * Cx in µF * 0.001.

Off Time is similar, and handled by pin 6. Ti = 24 * Ri * Ci * 0.001.

Most Likely, Rx is R14 while Ri is R13, on your board. Cx is C9 and should be 0.01 µF, while Ci is C10, and should be 0.1 µF. Check with a multimeter or magnifying glass, it shouldn't be hard to trace this circuit.

Next is Pin 1, A (Trigger Mode). If connected to Ground/Low, it will not retrigger while it has already detected motion, It ignores further movement until the IC goes through it's On AND Off time. If connected to VCC/High, it will retrigger, so it will restart the ON time. It stays on until movement stops.

If you want to use the module to just detect movement for you, on a quick read, you need to do 3 things:

  1. Change Rx to a lower value. Something like 1kΩ should give a 0.2 seconds On Time.
  2. Change Ri to a lower value. Something like 100kΩ should give 0.24 seconds Off Time.
  3. I recommend setting the Trigger Mode Low, so that it will only detect motion once every (On Time + Off Time). If it's set to high and continues to detect motion, your Arduino will need to figure out that it's continuous motion instead. More logic.

As for the CDS Pin, a CDS is a Photoresistor. A photoresistor is typically used to bring pin 9 Inhibit low when there is sunlight. It's normally used as the lower part of a voltage divider. Why it's changing state when the module detects motion is WEIRD. This means it's either wired to something else, there is a short or break in the module, or it's mislabeled. You will need to check the circuit for it. Here is a general schematic for these types of modules, but not your specific one, for reference.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.