Skip to content

Home

An ESP32-based presence detection node designed for localized device tracking.

Reasons to use this over other solutions:

  • ESP32 nodes are cheaper and easier to use than Raspberry Pis
  • Extensive fingerprint-based IDs instead of MAC addresses for tracking or counting devices others can’t
  • IRK-based enrollment of Apple devices to passively locate them uniquely, even with private random addresses
  • Home Assistant MQTT Discovery for easy HA configuration
  • Auto-updates by downloading GitHub-released binaries (optional, with a preference to disable if desired)
  • Filters measured distance with both a median pre-filter and a 1Euro filter (reduces jitter for greater accuracy)

ESPresense supports two fundamentally different approaches. Choosing the right one upfront will save you confusion and hardware costs.

Choose mqtt_room if:

  • You want simple room-based automations
  • You have 1 node per room
  • You don’t need a floor plan

Choose Companion if:

  • You need precise X,Y coordinates
  • You can deploy 5-8+ nodes per floor
  • You have/want a floor plan

Connect ESPresense to your favorite automation platform:

If you’re having trouble getting things set up or working properly, visit the troubleshooting page before opening an issue.

Have an idea or a request? Share it on ESPresense Featurebase.

This project builds on the hard work of a number of people.