- New
Product Description: 8-Channel Electromagnet Driver - I2C - STEMMA QT / Qwiic - Adafruit 6318
The Adafruit 8-Channel Solenoid and Electromagnet Controller with I2C Interface is a module designed to conveniently control multiple inductive loads without the need for a large number of microcontroller pins. The MCP23017 GPIO expander allows for control of eight channels via the I2C bus , while each channel is equipped with an AO3406 MOSFET transistor, a surge protection diode, and an LED to indicate its operation . The module supports solenoid supply voltages from 3V to 24V DC , works with 3V and 5V logic, and features STEMMA QT / Qwiic connectors for quick, solderless connection.
Main features of the controller
- 8 control channels - allows operation of up to 8 solenoid valves or other inductive loads
- I2C interface - control of multiple outputs using only the SDA and SCL lines
- MCP23017 - 16-bit GPIO expander for easy project expansion
- 8 AO3406 MOSFET transistors - each channel is equipped with a separate transistor with parameters 30 Vds, 3.6 A peak and 70 mΩ RdsOn
- Flyback diodes - protect transistors against overvoltages generated by coils
- LED diodes - signaling the activity of each output
- 3V and 5V logic - compatible with Arduino, Raspberry Pi and other microcontrollers
- STEMMA QT / Qwiic - quick connection of the I2C bus without the need for soldering
- Connecting multiple modules - possibility of connecting up to 8 boards on one I2C bus
- Additional GPIO - port B of the expander provides 8 universal inputs and outputs
Solenoid valve controller pins
The module has separate power supplies for the logic and solenoid valves . The Vcc pin should be connected to the microcontroller's logic voltage – 3V or 5V , while the SDA and SCL pins are used for I2C communication . All system components should have a common ground connected to GND . The solenoid valves are powered from a separate voltage source ranging from 3V to 24V DC . The positive wire should be connected to the V+ terminal, and the negative wire to one of the outputs marked 0 to 7 (A0-A7). When the selected channel is activated, the MOSFET transistor shorts the load to ground, activating the solenoid valve . Additional pins B0-B7 can be used as universal inputs or outputs, for example, to operate buttons or LEDs.
Controller programming
The module is supported by the Arduino IDE, CircuitPython, and Python . Arduino uses the Adafruit MCP23017 library , while CircuitPython and Python use the Adafruit CircuitPython MCP230xx library for convenient control of all outputs via the I2C bus. The default device address is 0x20 , and jumpers A0, A1, and A2 allow you to change the I2C address and connect up to eight modules simultaneously. This allows you to control up to 64 solenoid valves using a single I2C bus, ideal for automation, robotics, and industrial applications.
Technical specifications of the 8-channel solenoid controller
- Number of channels for solenoid valves: 8
- GPIO expander chip: MCP23017
- Communication interface: I2C
- Default I2C address: 0x20
- Possibility to change the address: yes, jumpers A0, A1, A2
- Maximum number of modules on one bus: 8
- Maximum number of supported solenoid valves with 8 modules: 64
- Logic voltage: 3V or 5V
- Power supply voltage of solenoid valves: 3 V to 24 V DC
- Output Transistor: AO3406 N-Channel MOSFET
- MOSFET parameters: 30 Vds, 3.6 A peak, 70 mΩ RdsOn
- Channel protection: flyback diodes
- Channel operation indication: 8 red LEDs
- Power indication: green LED
- Additional GPIO: 8 port B pins, B0-B7
- Interrupt pin: INT for MCP23017 port B
- Bus connectors: STEMMA QT / Qwiic JST SH
- Dimensions: 51 x 28 x 10.2 mm
- Weight: 10.7 g
Kit contents
- 1x 8-Channel Solenoid Driver - I2C - STEMMA QT / Qwiic - Adafruit 6318
- 2x Goldpin strip
Useful links |




