
Build and verify your local BLE floor-plan workspace before enabling remote access
padspanHA adds room-level BLE presence tracking, interactive floor plans, calibration tools, and dedicated views to Home Assistant. This guide starts with the installation method documented by the project, explains how to verify the integration without assuming undocumented URLs or ports, and then shows how to expose the existing Home Assistant web service through a Localtonet HTTP tunnel. Because padspanHA runs inside Home Assistant rather than as a separately documented web server, remote access normally exposes the broader Home Assistant interface and must be handled carefully.
What padspanHA adds to Home Assistant
padspanHA is a self-hosted Home Assistant integration focused on Bluetooth Low Energy room-presence tracking. Instead of reporting only whether a device is home, it can represent which room a tracked device occupies and display that information through floor plans and other dedicated views. The project describes room-level updates, interactive two-dimensional and three-dimensional maps, floor-plan editing, scanner placement, calibration, follow mode, and movement-related tools.
The integration works with BLE information already available to Home Assistant. The documented project information mentions Home Assistant Bluetooth proxies and Bermuda proxies as directly detected inputs. ESPresense nodes can be used through MQTT when the corresponding PadSpan option is enabled and Home Assistant's MQTT integration has been configured. These scanner-specific choices are separate from installing padspanHA itself, so readers should first establish a working integration before attempting detailed map or radio calibration.
Plan the installation before changing Home Assistant
The recommended installation route documented by the padspanHA project is HACS, using the padspanHA repository as a custom repository with the repository type set to Integration. The supplied project evidence does not establish the remaining HACS screens, the integration's package identifier, a restart requirement, or the exact Home Assistant configuration-flow sequence. Those details can change between releases, so this guide does not guess them.
Before making changes, confirm that the Home Assistant instance you intend to modify is working locally and that you have administrative access appropriate for installing a custom integration. If your Home Assistant deployment has an established backup or change-management process, use it before adding custom code. Also check the current padspanHA release notes and installation documentation for compatibility information that applies to your Home Assistant version.
A custom integration can change its package layout, setup flow, and restart requirements between releases. Follow the current instructions displayed by HACS and the current padspanHA documentation after adding the repository. Do not infer a repository identifier, configuration entry name, directory path, or restart sequence from an older tutorial.
Install padspanHA through HACS

Open HACS in the target Home Assistant instance
Sign in to the local Home Assistant interface with an account permitted to manage custom integrations. Confirm that you are working on the intended instance before changing its HACS configuration.
Add the padspanHA repository as a custom repository
Use HACS to add the official padspanHA repository supplied by the project. Select Integration as the custom repository type, which is the installation method explicitly documented by padspanHA.
Continue with the current project and HACS instructions
Follow the installation actions presented by the current HACS interface and padspanHA documentation. Check the current project instructions for any required Home Assistant restart or configuration flow because those remaining details are not established by the evidence available for this draft.
This deliberately limited sequence reflects what is documented without manufacturing missing actions. If the current project documentation requires a restart, configuration entry, migration, or other post-installation operation, complete it exactly as documented for the version you selected.
Verify padspanHA locally before creating a tunnel

Remote access should not be the first test. Begin from a device on the same trusted network as Home Assistant and sign in through the Home Assistant URL that already works for your installation. Confirm that Home Assistant loads normally and that the padspanHA interface or views expected from the completed installation are available. The project describes dedicated views and a standalone calibration panel, but the supplied evidence does not define a universal PadSpan URL path. Use the navigation and configuration created by your installed version instead of assuming a route.
Next, open the PadSpan interface and confirm that it renders without an obvious integration error. If you have not connected BLE scanners or configured tracked devices yet, do not treat an empty map as proof that the installation failed. Installation verification and presence-data verification are different tests. First establish that the integration loads. Then configure supported scanner inputs and map data according to the project's current documentation.
For a meaningful functional check, verify only the features you have actually configured. A floor-plan test requires a floor plan and relevant geometry. Scanner placement requires detected or configured scanners. Calibration requires suitable BLE observations and a defined physical environment. Avoid using remote access to diagnose an incomplete local installation, since doing so adds DNS, tunnel state, relay selection, and public access behavior to the troubleshooting path.
padspanHA is presented inside the existing Home Assistant web interface. No dedicated PadSpan listening address or port is established by the supplied project evidence. Record the local IP address and port from the Home Assistant configuration that already works in your environment. Do not copy a port from an unrelated tutorial.
Choose the correct Localtonet target

With Localtonet, the client application on your device establishes an outbound connection to one of our relay servers. This allows you to expose a reachable local service without configuring inbound router port forwarding, changing the firewall to accept unsolicited internet traffic, setting up a VPN, or requiring a public IP address. For a browser-based Home Assistant interface containing padspanHA, an HTTP tunnel is the natural tunnel family.
The Localtonet client must run on the Home Assistant host or another device that can reach the Home Assistant web service over the local network. The tunnel target is the existing Home Assistant IP address and port, not a guessed padspanHA endpoint. The assigned public HTTPS address serves the selected local HTTP target while the chosen Localtonet client is connected and the tunnel is running.
| Access component | Value to use | How to verify it |
|---|---|---|
| Localtonet client device | A device that can reach Home Assistant locally | Open the Home Assistant service from that device or otherwise confirm local network reachability. |
| Local target address | The actual local IP address used by your Home Assistant installation | Use the address from the working local Home Assistant connection or deployment configuration. |
| Local target port | The configured Home Assistant web-service port | Read it from your working URL or Home Assistant configuration rather than assuming a default. |
| Public address | The HTTPS address assigned to the running HTTP tunnel | Obtain it from the Localtonet dashboard after the tunnel has been created and started. |
Access padspanHA remotely with a Localtonet HTTP tunnel
Install and run the Localtonet client
Install our client on the device that can reach the working Home Assistant web service. Keep Home Assistant local access working before proceeding. The client uses an outbound connection, so no inbound router port-forwarding rule is required.
Authenticate or select the client device
Use the device-specific authentication token associated with the client that will run the tunnel. Keep the token private and never place it in screenshots, shared configuration examples, logs, or public documentation.
Select an available relay server
Choose a currently available server or region from the Localtonet dashboard. Availability can vary, so obtain the valid value from the current product interface rather than copying a server code from an article.
Create an HTTP tunnel to Home Assistant
Select an HTTP tunnel and enter the local IP address and port of the Home Assistant web service that you verified earlier. Do not enter an assumed PadSpan-specific port or path because padspanHA is accessed through Home Assistant.
Start the tunnel
Creating the tunnel does not make it active. Use the Start button and confirm that the selected Localtonet client remains connected. The public endpoint is available only while the tunnel is running and the selected device is connected.
Test the assigned public HTTPS address
Open the assigned public address from a separate connection and verify that the expected Home Assistant sign-in interface appears. Authenticate normally, navigate to the installed padspanHA views, and stop the tunnel after testing if continuous remote access is unnecessary.
For the current product workflow and available options, consult our Localtonet HTTP tunnel documentation . HTTP tunnels can use a generated subdomain, a selected subdomain where supported, or a custom domain. Exact custom-domain DNS instructions should always be checked against the current documentation before making DNS changes.
Protect the remote Home Assistant interface
An HTTP tunnel aimed at Home Assistant has a broader security impact than exposing an isolated PadSpan application. Anyone who reaches the public address is reaching the Home Assistant web service, not only a floor-plan page. Home Assistant may control devices, display household information, expose automation state, and provide administrative functions according to the signed-in user's permissions.
Keep Home Assistant authentication enabled, use strong unique credentials, apply least-privilege account permissions where available, and review the access controls appropriate to your installation. Do not publish credentials in a dashboard URL. Avoid displaying authentication tokens, private local addresses, personal device identities, BLE keys, or household floor plans in public screenshots.
Treat the tunnel lifecycle as an access control decision. If remote PadSpan access is needed only during calibration or testing, start the tunnel for that task and stop it afterward. A stopped tunnel is no longer serving the assigned endpoint through that tunnel. You can also delete a tunnel that is no longer required.
Floor plans, room names, tracked-device labels, movement history, and scanner locations can expose details about a home and its occupants. Share remote access only with authorized users, limit account privileges, and avoid leaving an administrative interface publicly reachable longer than necessary.
Troubleshooting the setup in the right order
padspanHA does not appear locally
Return to the current HACS and padspanHA installation instructions. Confirm that the repository was added as an Integration and complete any version-specific action required by the project. Do not troubleshoot Localtonet until padspanHA is visible and usable through the local Home Assistant interface.
Home Assistant works locally but not through the tunnel
Confirm that the Localtonet client device can reach the exact local Home Assistant address and port configured as the target. Then confirm that the device token is associated with the intended client, the selected client is connected, and the tunnel has been started. Remember that saving or creating a tunnel alone does not start it.
The public address loads Home Assistant but not a PadSpan page
This generally separates networking from application navigation. If the Home Assistant interface loads, the HTTP target is responding. Sign in and use the navigation provided by your installed padspanHA version. Do not append an undocumented PadSpan URL path, since the project evidence does not establish a universal path.
Tracking data is empty or inaccurate
Tunnel connectivity does not create BLE observations or calibrate a physical space. Verify supported scanner inputs, device identity configuration, room geometry, map scale, scanner placement, and calibration locally according to current padspanHA documentation. Network exposure and BLE positioning are independent layers.
Frequently asked questions
Does padspanHA run on a separate web port?
The supplied project evidence does not document a dedicated PadSpan listening address or port. Its views and calibration interface are presented through Home Assistant, so the Localtonet target should be the Home Assistant web service that already works locally.
What is the recommended padspanHA installation method?
The project recommends HACS. Add the official padspanHA repository as a custom repository and select Integration as its type. Follow the current project and HACS instructions for all subsequent version-specific actions.
Do I need router port forwarding for Localtonet?
No. Our client establishes an outbound connection to a Localtonet relay server, so exposing the configured service does not require an inbound router port-forwarding rule, a public IP address, or VPN setup.
Is the tunnel active immediately after I create it?
No. Creating a tunnel and running it are separate lifecycle actions. You must use the Start button, and the selected Localtonet client must remain connected for the public endpoint to stay available.
Does an HTTP tunnel expose only the padspanHA floor plan?
Not when the target is the general Home Assistant web service. In that configuration, the public address reaches Home Assistant, and padspanHA is one part of that interface. Protect Home Assistant with appropriate authentication and least-privilege access.
Can I stop remote access without uninstalling padspanHA?
Yes. padspanHA continues to run locally within Home Assistant when you stop its Localtonet HTTP tunnel. Stopping or deleting the tunnel affects the public route, not the local integration installation.
Access your verified Home Assistant service with Localtonet
Once padspanHA works locally, create an HTTP tunnel to the real Home Assistant address and port, start it only when needed, and use the assigned public HTTPS address with your normal Home Assistant authentication.
Get Started Free β