Context & Background
Lorem ipsum dolor sit amet, consectetur adipiscing elit. The IoT Haunted House project
was born from my curiosity about the hardware side of computing — specifically, how
microcontrollers and sensors can be used to create interactive, physical experiences.
I built this project independently as a personal challenge to bridge the gap between
software and hardware. The concept was simple but engaging: design a miniature haunted
house model where motion from a visitor triggers a chain of spooky automated events —
lights, sounds and movement — all orchestrated by an Arduino microcontroller.
🏚️
Photo — Haunted House Model Overview (add your photo here)
What Was Built
The project consists of a physical model (a small cardboard house) with the following
electronic components integrated and programmed:
- A PIR motion sensor that detects when someone approaches the house and triggers the sequence
- Addressable LED strips (WS2812B) that flicker and change colour to simulate lightning and candle effects
- A servo motor attached to the front door that slowly opens when motion is detected
- A passive buzzer that plays an eerie melody using tone generation in C++
- An ultrasonic distance sensor (HC-SR04) to detect how close the visitor is and adjust the intensity of effects accordingly
- A state machine implemented in C++ that manages transitions between idle, triggered and reset states
⚡
Photo — Wiring & Circuit Diagram (add your photo here)
What I Learned
This project was a valuable hands-on introduction to embedded systems and electronics —
areas that complement my software skills and are directly relevant to the Electronics–ICT
track of my programme.
- Writing C++ code for Arduino — loops, conditionals, functions and timing
- Working with sensors and actuators (PIR, ultrasonic, servo, LED strips)
- Understanding electrical circuits — power distribution, resistors, wiring layouts
- Implementing a finite state machine in an embedded context
- Debugging hardware — solving issues with power, noise and timing
- Self-directed learning: reading datasheets, watching tutorials, troubleshooting independently
🎬
Video Demo — Arduino Haunted House in Action (add your video link here)