12V solenoid not responding with ESP32microcontroller


With the attached circuit the 12V solenoid activates when the button is manually pushed however when the ESP32 Adafruit Feather microcontroller is attached to the circuit, when the input is sent to the microcontroller the solenoid does not operate even though a voltage reading is shown coming out of the pin. Does this have something to do with the MOSFET or are there missing components with my circuit?
Additional notes: I am using a wi-fi communication with the microcontroller and therefore using the 5V regulator to power the board without the use of the USB cable. The 5V regulator is placed on the BAT pin of the microcontroller

Circuit: https://www.circuito.io/app?components=513,10456,10456,10456,10456,360217


Hey Steve,

First, you should start with one solenoid and make sure that it works.
Here are a few things to check:

  • Is the button connected to the MOSFET exactly the same as the ESP32 pin?
  • What is the button’s output voltage going to the MOSFET?
  • Try removing the diode, does it change anything?
  • Try a different pin on the ESP32
  • What happens if you connect the ESP32 3.3v pin to the MOSFET instead of the digital pin?

Let us know the results of these tests,
Anat from circuito.io


I have another suggestion. Could you see if your mosfet transistors are of model FQP30N06 or FQP30N06L

without the L it won’t really work for 3.3v based microcontrollers such as the ESP32
with the L it will
The L stands for “Logic input”
Good luck!
Ziv from circuito.io


Thank you for your response our mosfet does NOT have the L but when we hook up the circuit without the solenoid and input the command to the microcontroller the mosfet switches to 12V.

Howerver, when the solenoid is hooked up to the circuit the mosfet only switches to 0.1V output .

Does the L matter in this case even though a voltage switch occurs when no solenoid is applied