Arduino Nano 33 IoT - Control Fan
This guide explains how to use the Arduino Nano 33 IoT board to control a fan.

Hardware Preparation
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
Additionally, some of these links are for products from our own brand, DIYables .
Overview of DC Fan
Pinout

A DC fan normally has two pins:
- Negative pin (black): Connect this to the negative wire of the DC power supply.
- Positive pin (red): Connect this to the positive wire of the DC power supply.
The DC power supply's voltage must be the same as what the fan needs. In this lesson, we will use fans that operate on 12VDC and 5VDC.
How to Control Fan
- When a DC fan gets power from a 12V/5V power supply, it runs at full speed.
- When a DC fan gets a 12V/5V PWM signal, you can control its speed.
This guide shows you how to use the Arduino Nano 33 IoT to turn a fan on and off. Another guide will explain how to control the fan’s speed.
Since the fan uses high voltage, you cannot hook it up directly to the Arduino Nano 33 IoT. Instead, you need to connect the fan to the Arduino through a relay. We have detailed guides about relays—including wiring, operation, and programming—in our Arduino Nano 33 IoT - Relay tutorial.
Wiring Diagram

This image is created using Fritzing. Click to enlarge image
Remember, if you use a fan that runs on 5V, you should use a 5V power adapter.
Arduino Nano 33 IoT Code
The code below switches the fan on and off every 10 seconds.
Detailed Instructions
If you are new to the Arduino Nano 33 IoT, be sure to check out our Getting Started with Arduino Nano 33 IoT tutorial. Then, follow these steps:
- Connect the components to the Arduino Nano 33 IoT board as depicted in the diagram.
- Use a USB cable to connect the Arduino Nano 33 IoT board to your computer.
- Launch the Arduino IDE on your computer.
- Select the Arduino Nano 33 IoT board and choose its corresponding COM port.
- Copy the code above and paste it into the Arduino IDE.
- Click the Upload button in the Arduino IDE to compile and send the code to your Arduino Nano 33 IoT board.
- Check the fan's status.
Line-by-line Code Explanation
The Arduino Nano 33 IoT code above explains every line. Please read all the comments in the code!