Most virtual window builds I have come across rely on a button panel or a phone app to switch feeds, and that always felt like the weak point of the idea. This one takes a different route: a framed world map mounted in the hallway acts as the control surface, and a model airplane placed on the map picks the location. The window frame itself sits on a door, so the selection and the display live in separate spots, which is a layout I had not seen before.
Under the map are five magnetometer modules, each with an indicator LED, and the D1 Mini behind it is an ESP8266 development board fed by micro-USB. Since the sensors run at 5V and the microcontroller at 3.3V, an eight-channel bidirectional logic level converter bridges the two. Move the plane to a spot, the magnetometers pick it up, the LED at that location blinks, and the stream changes to that city's live feed and audio. The five presets are Las Vegas, Florida, Amsterdam, Verbier and Shinjuku.
The part that stands out to me is the thermal sensor, tucked into a small framed picture labeled FLAMBOROUGH HEAD LIGHTHOUSE above the control area. It tracks where the viewer stands and applies a perspective parallax shift to the image, which should make the illusion far more convincing than a flat fixed feed.
On the software side, a Linux server scales and hosts the streams, VLC handles scaling and rotation through a Python script, MQTT carries the messages, and an Android app on a TV plays everything back. All the code is in a GitHub repository, with a process flow diagram on the maker's website. One open point: adding a stream is reportedly a couple of lines of code, but the maker says the hardest part was cutting a hole in the map, so scaling up the location count may be limited by that step.
Project by Alex Shakespeare. Watch it on their YouTube channel: