Hardware
The T in IoT stands for Things, referring to devices that interact with the physical world. Each project utilizes real-world hardware accessible to students and hobbyists. We offer two IoT hardware options based on personal preference, programming language knowledge, learning objectives, and availability. Additionally, a 'virtual hardware' version is available for those without access to physical hardware or who wish to learn more before making a purchase.
💁 No IoT hardware purchase is necessary to complete the assignments. All tasks can be accomplished using virtual IoT hardware.
The physical hardware options are Arduino and Raspberry Pi. Each platform has its own advantages and disadvantages, which are covered in one of the initial lessons. If you haven't chosen a hardware platform yet, review lesson two of the first project to determine which hardware platform interests you the most.
The specific hardware was selected to minimize the complexity of the lessons and assignments. While other hardware may work, we cannot guarantee that all assignments will be supported on your device without additional components. For instance, many Arduino devices lack WiFi, which is essential for cloud connectivity - the Wio terminal was chosen because it has built-in WiFi.
You will also need a few non-technical items, such as soil or a potted plant, and fruit or vegetables.
Buy the kits
Seeed Studios has kindly made all the hardware available as easy-to-purchase kits:
Arduino - Wio Terminal
IoT 01 for Beginners with Seeed and Microsoft - Wio Terminal Starter Kit
Raspberry Pi
IoT 01 for Beginners with Seeed and Microsoft - Raspberry Pi 4 Starter Kit
Arduino
All device code for Arduino is written in C++. To complete all assignments, you will need the following:
Arduino hardware
- Wio Terminal
- Optional - USB-C cable or USB-A to USB-C adapter. The Wio terminal has a USB-C port and comes with a USB-C to USB-A cable. If your PC or Mac only has USB-C ports, you will need a USB-C cable or a USB-A to USB-C adapter.
Arduino specific sensors and actuators
These are specific to the Wio terminal Arduino device and are not relevant to the Raspberry Pi.
- ArduCam Mini 2MP Plus - OV2640
- ReSpeaker 2-Mics Pi HAT
- Breadboard Jumper Wires
- Headphones or other speaker with a 3.5mm jack, or a JST speaker such as:
- microSD Card 16GB or less, along with a connector to use the SD card with your computer if you don't have one built-in. NOTE - the Wio Terminal only supports SD cards up to 16GB, it does not support higher capacities.
Raspberry Pi
All device code for Raspberry Pi is written in Python. To complete all assignments, you will need the following:
Raspberry Pi hardware
- Raspberry Pi
💁 Versions from the Pi 2B and above should work with the assignments in these lessons. If you plan to run VS Code directly on the Pi, a Pi 4 with 2GB or more of RAM is required. If you will access the Pi remotely, any Pi 2B and above will work.
- microSD Card (You can get Raspberry Pi kits that come with a microSD Card), along with a connector to use the SD card with your computer if you don't have one built-in.
- USB power supply (You can get Raspberry Pi 4 kits that come with a power supply). If you are using a Raspberry Pi 4, you need a USB-C power supply; earlier devices require a micro-USB power supply.
Raspberry Pi specific sensors and actuators
These are specific to the Raspberry Pi and are not relevant to the Arduino device.
-
Microphone and speaker:
Use one of the following (or equivalent):
- Any USB Microphone with any USB speaker, or speaker with a 3.5mm jack cable, or using HDMI audio output if your Raspberry Pi is connected to a monitor or TV with speakers
- Any USB headset with a built-in microphone
- ReSpeaker 2-Mics Pi HAT with
- Headphones or other speaker with a 3.5mm jack, or a JST speaker such as:
- Mono Enclosed Speaker - 2W 6 Ohm
- USB Speakerphone
Sensors and actuators
Most of the sensors and actuators needed are used by both the Arduino and Raspberry Pi learning paths:
- Grove LED x 2
- Grove humidity and temperature sensor
- Grove capacitive soil moisture sensor
- Grove relay
- Grove GPS (Air530)
- Grove Time of flight Distance Sensor
Optional hardware
The lessons on automated watering work using a relay. As an option, you can connect this relay to a water pump powered by USB using the hardware listed below.
- 6V water pump
- USB terminal
- Silicone pipes
- Red and black wires
- Small flat-head screwdriver
Virtual hardware
The virtual hardware route provides simulators for the sensors and actuators, implemented in Python. Depending on your hardware availability, you can run this on your normal development device, such as a Mac, PC, or run it on a Raspberry Pi and simulate only the hardware you don't have. For example, if you have the Raspberry Pi camera but not the Grove sensors, you can run the virtual device code on your Pi and simulate the Grove sensors while using a physical camera.
The virtual hardware will use the CounterFit project.
To complete these lessons, you will need a webcam, microphone, and audio output such as speakers or headphones. These can be built-in or external and must be configured to work with your operating system and available for use from all applications.