DEV Community

張旭豐
張旭豐

Posted on

Before You Buy Arduino Modules: Answer These 3 Questions First

Before You Buy Arduino Modules: Answer These 3 Questions First

Maker workbench with Arduino modules and planning notebook

Most makers have been here:

You open Arduino project lists. You see ten recommended sensors. You buy them. You get home. You wire one up and make it blink.

Then you are stuck.

Not because you lack parts. Because you never started with a problem worth solving.

The difference between a box of modules and an interactive device is not the number of parts. It is whether those parts were chosen to serve a specific experience.

This guide reverses the order. We start with three questions. Each answer points to a specific module combination. If you already know what you want to build, this will help you pick the right modules faster.


Question 1: Does the object need to know someone is nearby?

If yes, you need a proximity or presence sensor.

HC-SR04 ultrasonic sensor — measures distance by sending sound pulses and timing their return. Range: 2 cm to 400 cm. Best for: sensing whether someone is within a specific distance range.

HC-SR501 PIR motion sensor — detects changes in infrared radiation. Best for: sensing when a warm body moves in front of your device, like a motion-activated light.

Which one?

  • Use HC-SR04 when you need to know how close someone is. A presence lamp that gets brighter as someone approaches.
  • Use HC-SR501 when you only need to know that someone arrived. An exhibit that activates when someone enters the room.

Affiliate disclosure: As an Amazon Associate, I earn from qualifying purchases.

Recommended affiliate search: HC-SR04 ultrasonic sensor on Amazon | HC-SR501 PIR motion sensor on Amazon


Question 2: What should the object do when it detects someone?

The response is your output layer. This is where interaction becomes experience.

WS2812B addressable LED strip — each LED can be set to a different color and brightness independently. Programmed via a single pin from Arduino. Best for: mood lighting, animations, color gradients that respond to sensor input.

Passive buzzer or passive speaker — plays tones or sound effects you program. Best for: audio feedback, ambient soundscapes, simple melodies that change with interaction.

Servo motor — rotates to a specific angle you command. Best for: physical movement responses, flags that raise, doors that open, elements that tilt or aim.

Most beginner projects use only LEDs. But adding sound or motion makes the interaction feel much more alive.

Which one?

  • Use WS2812B when the response should be visual and atmospheric. Light is the fastest way to signal "I noticed you."
  • Use a buzzer or speaker when the response should be heard. Sound reaches people even when they are not looking at your device.
  • Use a servo when the response should be physical and tangible. Movement creates a sense of cause and effect.

Recommended affiliate search: WS2812B LED strip on Amazon | Micro servo motor Arduino on Amazon


Question 3: Does the object need to remember what happened?

Some interactions only care about the present. Others need to track state — was someone here just now? How long have they been standing there? How many interactions today?

Simple state tracking does not need an SD card or internet connection. You can track most interaction states with variables in your Arduino code.

Common state questions:

  • Is someone currently present, or did they just leave?
  • How many times has this been triggered today?
  • What is the current mode — active, idle, sleep?

These are answered with if/else logic and counter variables, not extra hardware.

If you need to log data over time (daily counts, event history), then consider an SD card module. But for most interactive installations, code variables are enough.


Three common scenarios

Proximity lamp growing brighter as person approaches

"I want a lamp that reacts when someone walks by"
→ HC-SR04 or HC-SR501 + WS2812B LED strip

Plant pot with LED indicating soil moisture

"I want a plant pot that glows when the soil is dry"
→ Soil moisture sensor (YL-69) + WS2812B

"I want an art installation that responds to touch"
→ Touch sensor (capacitive) + servo or buzzer + LEDs

"I want to make music with gestures"
→ Sound sensor or ultrasonic + WS2812B or buzzer

"I want an exhibit piece that activates when visitors approach"
→ HC-SR501 + WS2812B + optional servo


The core loop

Every interactive device works the same way, no matter how complex it looks:

  1. Sense — input module detects something (proximity, touch, light, sound, moisture)
  2. Think — Arduino reads the signal and decides what it means based on your code
  3. Respond — output module does something (light, sound, movement)

Three scenarios: hallway lights, proximity lamp, interactive art

The modules recommended above are all built around this loop. Buy for the loop, not for the variety.

If you are unsure what to buy, ask yourself in order:

  1. What do I want to detect? (picks your input)
  2. What do I want to happen when detected? (picks your output)
  3. How complex is the detection logic? (picks your controller)

The Arduino Uno is enough for most of these. Move to ESP32 when you need Wi-Fi, Bluetooth, or more speed.

Recommended affiliate search: Arduino Uno starter kit on Amazon


Final thought

Modules are tools. Tools are not projects.

A HC-SR04 sensor on your desk is a party trick. A HC-SR04 mounted in a dark hallway, turning on WS2812B lights that follow a visitor's footsteps, is an interactive device.

The difference is not the parts. The difference is whether you started with a person and a situation, or whether you started with a component.

Start with the situation. The right modules will be obvious.


Need a personalized build plan?

If you know what you want to create but are not sure which modules to buy or how to wire them together, I offer a custom interactive device design guide on Fiverr.

👉 Get your custom Arduino interactive prototype guide on Fiverr

Top comments (0)