A Smart TARDIS Built Around Raspberry Pi, ESP32 and Home Automation
What started as a model became a complete automation project combining lighting, audio, GPIO control, MQTT, Node-RED and Home Assistant.
This page brings the whole build together and links to the individual guides, hardware notes and experiments behind it.
How the TARDIS Works
The Main TARDIS Project
Building the Smart TARDIS
The main project combines a Raspberry Pi, Node-RED, MQTT, Home Assistant and custom lighting and audio control into one physical model.
Raspberry Pi Controller
The Pi handles direct GPIO, lighting and audio while higher-level automation runs elsewhere.
Home Assistant Integration
Home Assistant provides the central interface for controlling and scheduling the TARDIS alongside the rest of the smart home.
Raspberry Pi at the Core
Configuring the Pi Controller
Setting up the Raspberry Pi to handle physical I/O, lighting, audio and local control tasks.
Read guide →LED Effects and Fades
Smooth fades, breathing effects and timed light sequences make the model feel far more alive than simple on/off switching.
Browse Raspberry Pi guides →Sound and Playback
Local audio playback adds take-off, landing and ambient sound effects as part of the automated sequences.
Explore hardware guides →Node-RED, MQTT and Home Assistant
Automation Logic
Node-RED coordinates timed events, lighting sequences, audio and state changes without loading the Pi with all of the decision-making.
Explore Node-RED content →Messaging Between Devices
MQTT provides a lightweight messaging layer between Home Assistant, Node-RED, Raspberry Pi and ESP32 devices.
Explore MQTT guides →Smart Home Integration
Home Assistant turns the TARDIS into part of the wider Realm Labs smart-home environment rather than an isolated project.
Explore Home Assistant →ESP32 Lighting Effects
Independent LED Control
The ESP32 provides lightweight, responsive control for LED effects, receiving commands over MQTT while running the actual fade and animation logic locally.
Breathing Effects
PWM-driven fades create smooth breathing and idle animations without relying on constant commands from the main controller.
MQTT Commands
Simple commands can trigger states such as on, off, breathe, idle and fast effects from the wider automation system.
