A modular, Wi-Fi-connected wooden model steam engine powered by an ESP32 dev board. This repo documents the hardware setup, wiring diagrams, sound effects, and smart automation logic — blending vintage charm with modern control.
This project transforms a stationary wooden steam engine into a smart, interactive display using:
- Motor control with variable speed patterns
- Sound playback synced to motion
- RGB lighting effects
- OLED status display
- Rotary encoder feedback
- Home Assistant integration
- Optional voice and mobile control
| Module | Purpose |
|---|---|
| ESP32 Dev Board | Central controller (Wi-Fi/Bluetooth) |
| L298N Driver | Motor control (PWM + direction) |
| LM386 Amplifier | Sound playback to speaker |
| 50FR Speaker | Steam engine sound effects |
| Rotary Encoder | Wheel rotation feedback |
| RGB LEDs | Visual effects |
| OLED Display | Status and mode display |
| Proximity Sensor | Motion-triggered effects (optional) |
| USB Battery Pack | Portable power (optional) |
- Motion control with encoder feedback
- Sound effects triggered by motor activity
- RGB lighting synced to engine state
- OLED display for runtime status
- MQTT endpoints for Home Assistant
- Optional voice control via Alexa/Google
- Home Assistant YAML
- MQTT topics:
motor/startmotor/stopsound/playstatus/report
- Flash ESP32 with your preferred firmware (ESPHome, Arduino, etc.)
- Wire modules per wiring-diagram.md
- Upload sound files to ESP32 storage
- Connect to Wi-Fi and verify MQTT endpoints
- Test motor, sound, and display modules
- Integrate with Home Assistant or mobile app
- Printable pinout diagram included
- STL files for speaker/amplifier enclosure (coming soon)
- Optional build box label with GPIO callouts
- Designed for collaborative tinkering
- Sound effects and lighting customizable by kids
- Modular layout for easy upgrades and repairs
MIT License.
Created by Terry — with love for smart homes, modular docs, and family geocaching.
Would you like me to generate a matching CONTRIBUTING.md or help you set up GitHub Pages for visual hosting?