PIR logic shifting 6 volt low 12 volt high - help needed

  • I am trying to connect PIR motion sensor to a nano. The motion sensor is part of an existing alarm system which uses a 6 volt signal for logical 0 (no motion detected) and a 12 volt signal for logical 1 (Motion detected).

    So the question is how can I shift these voltage levels down to something that I can connected to the Arduino Nano. I have tried a voltage divider but couldn't get a wide enough range to get reliable detection of high or low signals. I have also tried a logic level shiftier. The problem with these is that they still require the input signal to go to zero to pull down the output signal.

    Any advise or suggestions would be most welcome.

  • Admin


    One option is to use a voltage divider, to get the voltages down to 2,5/5V, and then design a schmitt trigger, to convert the 2.5/5V to 0/5V output swing.

    For schmitt trigger design you could have a look at http://www.aaabbb.de/NonInvertingSchmittTrigger/NonInvertingSchmittTrigger_en.php

    Another option, is to have a virtual ground at 6V, that you connect your arduinos ground pin to.. (It can not share the same powersupply as the PIR sensors then). The arduino will then see a voltage swing of 0-6V (Can be limited with a resistor / zener diode on the input on the arduino). The virtual ground can be created with a simple resistor divider, between GND and 12V line of the pir sensor.

    I would probably go for option 1, as it allows you for detecting if the PIR sensor is online (is there 6V on the signal pin?) and trigger another pin, in case it disappears.

Log in to reply

Suggested Topics

  • 7
  • 1
  • 6
  • 12
  • 2
  • 10
  • 16
  • 4