From BitWizard Wiki
Jump to navigation Jump to search
The 7FETs PCB (SPI version)

This is the documentation page for the SPI_7FETs and I2C_7FETs boards. That you can buy in the BitWizard shop.


The board has 7 fets that allow you to pull a pin of a load low. You would normally tie the other end of your load directly to the powersupply.

About 1A per output should be possible. Maximum voltage is 20V. Contact us if you require a larger voltage.

You will have to provide your own protection circuits (freewheeling diodes) if you are going to drive inductive loads (like a motor).

Assembly instructions

None: the board comes fully assembled.


The 7FETS board is capable of sinking about 1A per output. We have tested 1.25A and the FET became slightly warm, as predicted by theory.

Although the specifications for the FETs allow a larger current, it is not recommended to exceed the 1A as the contacts of the connectors are not rated for so much, also the PCB is not equipped for such large currents. But if you need to drive several loads in sequence 1A per port is comfortably possible.

The manufacturer specifies the maximum current for the case where each fet has the whole board available as a heatsink.

Possible Configurations

External resources


The FETs

Additional software

Related projects


For the SPI connector see: SPI_connector_pinout.

The output connector is connected as follows:

pin function
2 OUT0
4 OUT1
6 OUT2
8 OUT3
10 OUT4
12 OUT5
14 OUT6

The jumper has: 1: GND, 2: DEV POWER, 3: 5V (from SPI).

Put the jumper on 2-3 to use the SPI power (from the arduino? i.e. from USB? -> max at most 400 mA!)

Use a connector on 1-2 to provide a more powerful power source for the devices that the board drives.


Power connector

The connector SV2 allows you to connect the "power source".

You can chose two configurations: You can use pin 1-2 as ground and power. You can connect up to 15V (*) to pin 2 referenced to GND on pin 1.

(*) The datasheet for the used transistors mentions "20V", but is is always prudent to keep some margin.

If you want 5V as the power source, you could put a jumper on pin 2-3. In that case you will have to be aware that you're using the 5V power from the rest of the system. This will be limited by e.g. USB power limits, other devices on the SPI bus, cable thickness and connector capability. But for low-current 5V applications this might be useful.

Jumper settings

See solder jumpers on how to change the solder jumper.

By changing the solder jumper SJ1, you can make the connector nearest the board edge into the ICSP programming connector for the attiny44 on the board.

Powering 7fets

Although some BitWizard boards will work with 3.3V as the power supply, the 7fets board needs to be supplied with 5V as this voltage is used to drive the FETs. If you need operation at 3.3V, contact us: we can find FETs to populate the boards with that work at 3.3V.


To make the 7FETS PCB do things, you need to send things over the SPI or I2C bus to the PCB.

The general overview of the protocol is here.

The specific commands for the 7fets PCB are explained on the page about the spi_dio board, as the two boards share the same protocol: DIO_protocol . Where the SPI_DIO drives an output high, the 7fets board will drive the output pin LOW when the pin is driven active.

For arduino, a sample PDE is available, called ardemo_lcd.pde, also at the BitWizard software download directory .

This is a demo to send things using SPI to the lcd board. The SPI routines there are applicable for the dio and 7fets boards as well.

The software

Default operation

Future hardware enhancements

Future software enhancements

TODO: write a library to make handling this board easy.



  • Initial public release

Useful links

The 7FETs BitWizard shop page
The FETs datasheet
DIO protocol
SPI connector pinout