Boards and essentials

Computer and local network

Use a computer you already own to program boards or run automation software.

What it does

A desktop or laptop can provide the editor, serial monitor, and local server. A permanently running hub is only necessary when you want automations to continue after that computer is turned off.

Connections and compatibility

USB is sufficient for the introductory Arduino builds. Network exercises use your own computer and router; some require a supported Linux environment or virtual machine.

Choosing one

Try the software on existing equipment before buying a dedicated hub. Check current operating-system and memory requirements in the project documentation.

Common mistakes

Sleep mode stops a host from running automations. A browser interface does not mean the server is running inside your browser.

Use it in a tutorial

  • Analog and PWM signals — Use a potentiometer to control an indicator, and learn how analog measurements differ from PWM outputs.
  • Introduction to Arduino — Upload your first sketch, blink the built-in LED, and use Serial Monitor to see what the board is doing.
  • Buttons and switches — Wire a button with an internal pull-up, debounce it, and toggle an indicator once per press.
  • Communication between devices — Send commands and readings over USB serial, then choose between UART, I²C, SPI, and networking.
  • Blinking an LED — Wire a low-current status indicator and blink it without blocking the rest of your program.
  • Passive infrared (PIR) motion sensors — Read an HC-SR501 motion sensor and learn why movement detection is different from occupancy.
  • Infrared receiver modules — Decode an old remote with a 38 kHz receiver and distinguish new presses from held-key repeats.
  • Servo motors — Move a lightweight pointer with two buttons while powering a micro servo independently of the controller.
  • Convert a servo to continuous rotation — Understand a servo conversion, calibrate neutral, and control continuous rotation with a short timed run.
  • Stepper motors — Move a 5 V 28BYJ-48 with a ULN2003 driver, starting slowly and accounting for missed steps and backlash.
  • Shift registers — Use a 74HC595 to drive eight low-current indicators with three controller pins.
  • Transistors — Build a low-side transistor switch, then learn what changes when the load becomes a motor or relay.
  • Ultrasonic distance sensors — Measure distance with an HC-SR04, reject missing echoes, and compare raw readings with a small median filter.
  • Local voice assistants: Rhasspy and Assist — Understand a local voice pipeline, Rhasspy’s legacy role, and a practical first experiment using Home Assistant Assist.
  • Node-RED — Build a temperature reminder with simulated readings, readable debug output, and a rule that does not chatter near its threshold.
  • Home Assistant — Build and test a door-left-open reminder using two virtual switches before buying any sensors.
  • Security for your smart home and IoT network — Give a small connected project clear permissions, visible failure states, and a repeatable security check before relying on it.
  • Using an LED matrix module — Show readable status symbols on a MAX7219 matrix instead of adding a full screen.
  • MQTT security — Run a loopback-only Mosquitto practice broker, give a sensor and reader different permissions, and test the denied cases.
  • Using an analog joystick module — Read a thumb stick, calibrate its resting center, and add a dead zone for stable controls.
  • Using rotary encoders — Decode a mechanical knob’s direction and count complete quadrature cycles without mistaking every bounce for a turn.
  • Using an RFID module — Read an RC522 tag identifier with correct voltage translation, and understand why a UID is not a secure key.