How can I use a PIR sensor to trigger a solenoid valve?


I'm trying to use a PIR sensor to trigger a solenoid valve to open and release built-up pressure. What sort of code would I need?

Also, the solenoid I'm using requires 12 V and from what I understand, there's a way to output all (or almost all) of the input voltage by connecting the solenoid to certain pins on the Arduino. Can anyone confirm this?

Thanks in advance!

No, you can not connect the 12V solenoid directly to any Arduino output. You will need some kind of driver circuit.

Something about using the Vin and GND pin as terminals. "To get a 12V output from an Arduino Uno Board you need to use the Vin and GND pin as terminals. Vin would give the maximum voltage being provided to the board."

That connection just taps into any 12V source that you have connected to Vin to power the board. It isn't a digital output that you can turn on and off. You need a driver circuit to switch that 12V to control the solenoid.

Any recommendations?

What do you get when you Google “Arduino solenoid driver”? How much current does the solenoid need?

A relay module is often a good choice for handling higher power devices because it is simple to use.

You might not need an Arduino if that's all you want to do.
A PIR sensor has a 3.3volt digital output that can switch a mosfet (or maybe a relay module) directly.

So skip the Arduino and grab a relay module?

You will need a PIR and a solenoid driver (or relay) anyway.
Can always add an Arduino if you want to do more than what you said.

Don't forget the kickback diode across the solenoid valve.

How would I wire that?

A 12volt solenoid (inductor) will create a large voltage spike when switched off.
If you don't kill that spike (with a diode across the inductor), it could upset/damage electronics.

Google relay circuits, or inductor circuits.
Lots of info out there.

Thanks Leo!