Turn your Wi‑Fi devices
into motion sensors

TOMMY transforms ordinary Wi‑Fi devices into motion sensors that detect movement through walls and obstacles. It's fully local and self-hosted with no cloud components. All processing happens on your network. Easy to install, integrates with Home Assistant or Matter, and creates zone-based motion sensors for smart home automations.

WORKS WITH
Home Assistant
ESPHome
Docker
Matter
PRIVACY & SECURITY
Self-Hosted
Fully Local
No Cloud

Supported Hardware

ESP32 Series

ESP32, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-S2, ESP32-S3

Supported

ESP32-C61

Expected in December 2025

Planned

Raspberry Pi B3+/B4

Expected in Q1 2026

Planned

Through-wall sensing

Motion is sensed through walls and obstacles, which allows devices to be hidden in closets, cupboards, or anywhere out of sight.

Flexible zone coverage

Create zones that span your entire house with a few devices, or divide areas like "upstairs" and "downstairs" regardless of room boundaries. No need for sensors in every room.

Direction-free setup

Unlike traditional sensors that need to "look" at specific areas, Wi-Fi sensing monitors the entire area within a zone without requiring careful positioning or aiming.

Fully local & self-hosted

It's fully local and self-hosted with no cloud components. All processing happens on your network.

How TOMMY works

TOMMY monitors disruptions in Wi‑Fi signals - movement between nodes changes wave patterns which the algorithm interprets as motion.

1
Mesh network formation

Devices within your defined zone form a mesh network, continuously transmitting small Wi-Fi packets to each other, creating invisible detection paths throughout your space.

2
Motion pattern analysis

When someone moves between nodes, they disrupt the Wi-Fi signal patterns in measurable ways that TOMMY can detect.

3
Real-time motion updates

TOMMY analyzes disruptions in real-time and reports motion in your defined zones. Each zone maps to a motion sensor entity for Home Assistant / Matter ecosystems.

2+
Devices Required Per Zone
ESP32ESP32ESP32ESP32Motion Detected

2026 Roadmap

Upcoming features planned for TOMMY

Filtering Non-Human Movements

Distinguish between human motion and other movement sources like pets, fans, robot vacuum cleaners, and environmental factors.

Q1 2026

Stationary Presence Detection

Detect when someone is present in a zone even when they're not moving, supporting room occupancy detection for sleeping, reading, or other stationary activities.

Q1 2026

Passive Devices as Sensors

Allow devices that are not flashed with TOMMY firmware to be used as passive sensors (e.g., Smart TVs, computers, gaming consoles). This will reduce the number of dedicated sensors needed.

Q2 2026

Get Started in Minutes

Choose your preferred installation method

Docker

Linux Only

For self-hosted setups and users who want standalone deployment
AMD64/ARM64 supported

Host networking is required for mDNS discovery of ESP32 devices. Ports can be configured through environment variables.

Terminal
docker run -d --name tommy \
--network host \
-v $HOME/.tommy:/data \
-e DASHBOARD_PORT=8089 \
-e FILE_SERVER_HTTP_PORT=8090 \
-e FILE_SERVER_HTTPS_PORT=8091 \
-e MQTT_PORT=1886 \
-e UDP_RELAY_PORT=8547 \
--restart unless-stopped \
tommysense/virtual-bridge:latest

After installation, access the dashboard at http://localhost:8089 to flash devices, define zones, and expose motion sensors to Matter ecosystems.

Standalone deployment

Choose Your Edition

Try Community Edition free, or go Pro for unlimited zones

Community Edition

Free

Great for trying out Wi-Fi motion sensing in one room

1 zone
Up to 3 devices
Fully local & self-hosted
Community support
Non-commercial use

Commercial

Custom

Custom licensing and dedicated support for businesses

Unlimited zones
Unlimited devices
Custom integrations
Dedicated support
Commercial license

Offline Activation

Activate your license offline. Server and devices don't need internet access.

Buy Once, Own Forever

Pay once and it's yours. No subscriptions or recurring fees.

Your Data Stays Home

Complete privacy protection. Works on isolated IoT VLANs. No data collection or tracking.

Join the TOMMY Community

Connect with other users, get support, and stay updated on the latest features

Product Updates

Get notified about new releases and features

Community Support

Get help from experienced users and developers

Feature Requests

Suggest new features and vote on community ideas

Join Discord Community
500+Active Members
24/7Community Support

Frequently Asked Questions

Everything you need to know about TOMMY

Wi-Fi motion sensing uses the disruption of Wi-Fi signals between devices to detect movement. When someone walks between two Wi-Fi nodes, they interrupt the signal path, creating a detectable pattern that TOMMY uses to identify motion.

Unlike PIR sensors that require line-of-sight and can miss motion behind furniture, Wi-Fi sensing detects movement through walls and obstacles. It provides whole-room coverage from two nodes.

The current version detects all movement including pets, curtains, fans, and other moving objects. Future versions will include filtering, but for now you can adjust the sensitivity slider to reduce small movement detection.

TOMMY currently only detects movement, not stationary presence. Stationary presence detection is expected in Q1 2026.

No hub required. TOMMY runs as a Home Assistant add-on or on a Linux host (Docker) and uses supporting devices to create a sensing network. Everything runs on your local network with no cloud dependencies.

Minimum 2 devices per zone. While more devices can provide better coverage, there are diminishing returns after 4 devices in most zones. Focus on placement for zone coverage rather than maximizing device count.

The devices do not need to be on the same router (e.g. in mesh setups), but they do need to be on the same network to communicate. Most home networks meet this requirement automatically.

Yes, TOMMY works as an external component and will run alongside your existing ESPHome components without conflict. You can continue using all your current sensors, switches, and other integrations.

Yes. TOMMY is fully local and self-hosted with no cloud components. Everything runs on your network, all processing happens locally, and no data ever leaves your home. You don't need an internet connection for it to work.