Why You Might Want to Set Zoom in ESPresense
When you view your ESPresense floor-plan or map in Home Assistant, you may notice:
-
The map shows your entire building even when you just want one room.
-
The view looks tiny on a large display or phone — you have to pinch-zoom manually.
-
Your nodes and rooms appear too small relative to the visible area.
By adjusting zoom (via configuration rather than manual pinch zoom) you can:
-
Focus the view on the area you care about.
-
Ensure the floor plan fits the screen (desktop, tablet, mobile) in a friendly way.
-
Avoid visual distortion or odd stretching of rooms.
Setting zoom in ESPresense essentially means adjusting the bounds of your map (and optionally the display scale) so that the map view shows just what you want, at a comfortable size.
How to Set Zoom in ESPresense: Step by Step
1. Locate Your Floor Configuration Bounds
In your config.yaml file for ESPresense (for the companion/floor-plan setup) you will typically find a section like:
Here bounds is defined as [[left, bottom, z], [right, top, z]]. According to the documentation:
“bounds: [[0, 0, 0], [10, 8, 3]] — Bounds (x,y,z) of map in meters, in this example: 10 m wide, 8 m deep, 3 m high.” ESPresense+1
What that means is: the visual map will cover a rectangular region from x = 0 to x = 10 metres, y = 0 to y = 8 metres (in that example).
2. Adjust Bounds to Control Zoom
If your map is too “zoomed out”, meaning the visible area is much larger than your actual room, you can change the bounds to a smaller region. For example:
That will focus the map on the first 5 m by 4 m area — causing the dashboard view to appear more “zoomed in”.
In a community forum one user described:
“My default view is very much zoomed out. I think I read somewhere that the X, Y, Z settings of the bounds in the yaml should zoom this in without distorting my floorplan shape.” Home Assistant Community
So adjusting the bounds is how you effectively set the zoom.
3. Maintain Proper Aspect Ratio to Prevent Stretching
When you shrink your bounds, pay attention to the ratio of width to depth. If walls that are east–west become longer than north–south in the display while in real life they are shorter, you’ve probably skewed the aspect ratio.
The forum advice:
“Keep your bounds square in order to avoid distortion.” Home Assistant Community
That means if your house is, say, 8 m wide and 4 m deep, you might use bounds [[0,0,0],[8,4,3]]. If you change it to [[0,0,0],[4,2,3]] you’re maintaining the same ratio (2:1 width:depth). Avoid changing to something like [[0,0,0],[8,2,3]] because that will compress the depth visually and make rooms look squashed.
4. Reload and Test Live
The good news: the config.yaml supports live reloading. The documentation says:
“Changes to the config file update in real-time … No need to restart the companion after changes.”
So after editing the bounds you should save and let ESPresense update. Then open your dashboard and verify the zoom level looks right. On mobile devices test pinch-zoom and that the background map fills the screen comfortably.
5. Further Fine-Tuning: Room-by-Room or Multi-Floor
If you have a house with multiple floors or rooms of very different sizes, you may want different zoom/focus settings per floor. In your floors: section you may have multiple entries:
Set each bounds value individually so each floor appears optimally. Also, if your nodes are placed in corners or close to walls, you might need to reposition them for better visual balance — because the zoom/visible area must still contain all relevant nodes.
Tips & Practical Examples
-
Example: Suppose your living room is 6 m wide and 4 m deep. Set bounds as
[[0,0,0],[6,4,3]]so that the living room fills most of the view. -
Tip: On a large tablet dashboard, you may want to expand bounds a little beyond actual room size so that peripherals (corridor, entrance) are visible too.
-
Tip: Use the “floorplan creator” tool provided by ESPresense (on GitHub) to generate YAML coordinates from a visual plan — this can help you choose appropriate bounds. GitHub+1
-
Avoid: Changing just one dimension dramatically (for example, decreasing y but not x) — this leads to distortion.
-
Test: Walk around your home with a tracked device (phone, watch) and view the map at the new zoom — ensure nodes stay visible and no clipping occurs.
Common Mistakes & How to Fix Them
| Problem | Cause | Fix |
|---|---|---|
| Rooms look squashed or stretched | Bounds ratio doesn’t match real aspect ratio | Adjust bounds to match actual width : depth ratio |
| Map still shows full house even though you want one room | Bounds are too large | Reduce the bounds values to focus smaller area |
| Nodes appear off-screen or partially hidden | Bounds exclude peripheral area containing nodes | Expand bounds slightly to include all nodes |
| Dashboard appears blank or incorrectly zoomed | Configuration not applied or cached old version | Trigger hot-reload or restart the companion after changes |
Conclusion
Getting the zoom right in ESPresense really comes down to correctly configuring the bounds in your config.yaml for each floor. By adjusting those numbers thoughtfully — matching actual room proportions, focusing the visible area, and testing on your dashboard device — you’ll end up with a clean, readable view that works across phone, tablet, or desktop. You’ll avoid distortion, manual pinch-zooming, and unclear visuals. With a bit of tweaking, your ESPresense floor-plan will look polished and professional, making your Home Assistant dashboard much more enjoyable to use.
FAQs
1. Can I zoom in/out dynamically on the map in ESPresense?
Not in the sense of a built-in “zoom level” slider. The “zoom” is determined by the bounds you set in config. You can pinch-zoom manually on some dashboards, but to control default view you must edit the config.
2. Does changing bounds affect BLE tracking accuracy?
No. The bounds setting only affects the visual map. BLE tracking (node placement, RSSI trilateration) is separate. So you’re safe to adjust bounds without worrying about tracking performance.
3. How often can I change bounds or zoom settings?
As often as you like — the config supports live reloading. Once you save the config.yaml, ESPresense will reflect changes quickly. Just test afterward.
4. What if I have an irregular-shaped house (L-shaped, etc.)?
You still define bounds that cover the extents of your house. The bounds rectangle may include some unused space, but you can keep that minimal and ensure rooms don’t appear stretched by matching aspect ratio. Use room definitions to carve out actual shapes within that bounds.
5. My floor-plan still looks too small on mobile — what else can I adjust?
Besides bounds, check your dashboard layout (e.g., card width, padding). You could increase the card size or switch to full-screen mode for your floor-plan view. On mobile you might set a tighter bounds so the map appears larger in the available space.

