
Bring your EMS heating gateway online locally first, then reach its web interface when you are away
EMS-ESP is open-source ESP32 firmware for communicating with compatible Bosch, Buderus, and related EMS heating equipment. This guide explains the prerequisites, installation boundaries, initial configuration, and local verification you should complete before enabling remote access. Once the EMS-ESP web interface works reliably on your LAN, we show how to expose that existing HTTP service with Localtonet from another device on the same network. No unverified flashing commands, default addresses, or assumed ports are used.
What EMS-ESP does
EMS-ESP is firmware for the Espressif ESP32 microcontroller. It communicates with EMS-compatible heating equipment, including supported boilers, thermostats, heat pumps, mixing units, solar modules, ventilation units, and related devices. The project documents compatibility with several bus families, including EMS, EMS+, EMS2, EMS Plus, Logamatic EMS, Junkers 2-wire, and Heatronic 3 and 4.
A typical installation combines an ESP32 with an additional interface circuit connected to the heating system’s EMS bus. This interface circuit is essential because the microcontroller is not connected directly to the bus without suitable interface hardware. The EMS-ESP project identifies prebuilt gateway hardware from BBQKees Electronics as tested for use with the firmware. If you choose different gateway hardware, confirm its electrical compatibility and follow the hardware manufacturer’s instructions.
After installation, EMS-ESP provides a multi-user, multilingual web interface for configuration, monitoring, and supported control operations. It also supports a console over Serial/USB or Telnet, along with integrations and interfaces such as MQTT, RESTful APIs, Modbus, Prometheus, and several home automation platforms. This article focuses specifically on the local web interface because it is the most appropriate evidenced service to place behind a Localtonet HTTP tunnel.
Prerequisites and important installation boundaries

Before beginning, confirm that your heating equipment is supported by the current EMS-ESP documentation. A brand name alone is not enough to establish compatibility. Product families can use different control buses, and even devices from the same manufacturer may require different wiring or gateway arrangements.
You will need an appropriate ESP32-based gateway and a circuit that interfaces it with the EMS bus. You will also need access to the official EMS-ESP installation and configuration documentation. The supplied project evidence directs users to its Installation Guide, but it does not establish a universal flashing command, host operating system, serial device path, browser address, default port, or credential set. Those details must therefore come from the current installation guide and the instructions for your selected gateway hardware.
Do not improvise wiring or connect an ESP32 directly to a heating-system bus. Use a compatible interface circuit and follow the gateway and heating-equipment documentation. If installation involves areas where mains voltage or other hazardous electrical conditions may be present, use a qualified installer.
| Requirement | Why it matters | How to validate it |
|---|---|---|
| Compatible heating equipment | EMS-ESP must understand the bus family and connected device types. | Check the current EMS-ESP compatibility documentation for the exact equipment. |
| ESP32 gateway | The firmware runs on an Espressif ESP32 microcontroller. | Confirm that the selected board or gateway is supported by the current installation guide. |
| EMS bus interface circuit | The circuit provides the required interface between the ESP32 and the heating bus. | Use documented gateway hardware and follow its wiring instructions. |
| Local network access | The web interface must work on the LAN before remote tunneling is attempted. | Open the interface from another local device and verify normal operation. |
| Separate Localtonet client device | The available evidence does not indicate that our client runs directly on EMS-ESP. | Use a supported computer or device on the same LAN that can reach the EMS-ESP interface. |
Install and verify EMS-ESP locally

The following sequence is a safe installation and validation workflow based on the established project requirements. It deliberately sends firmware-specific operations back to the current official guide because the exact flashing method and platform-specific commands were not supplied in the approved evidence. Do not substitute guessed commands or assume that instructions for another ESP32 project apply to EMS-ESP.
Confirm equipment and gateway compatibility
Identify the exact boiler, thermostat, heat pump, controller, or other EMS equipment you intend to connect. Compare it with the current EMS-ESP compatibility information, then confirm that your ESP32 gateway and EMS bus interface are suitable for that installation.
Follow the official EMS-ESP Installation Guide
Use the installation method documented for your hardware and current firmware. The available evidence does not establish one universal flashing command, installation operating system, serial path, or preparation procedure, so obtain those details directly from the current EMS-ESP Installation Guide.
Connect the gateway according to its hardware instructions
Install the EMS bus interface and gateway exactly as documented by the hardware provider and EMS-ESP project. Avoid guessed wiring arrangements. Complete any required network setup using the official configuration documentation.
Open and configure the local web interface
Use the address and access procedure shown by your installed gateway or the official documentation. Complete the applicable EMS-ESP configuration and confirm that the expected heating devices and data appear. The address, port, and HTTP or HTTPS behavior should not be assumed because they are not established by the supplied evidence.
Verify operation from another LAN device
From a computer or other device on the same network, open the EMS-ESP web interface and sign in. Confirm that pages load consistently and that the information shown is plausible for your system. Resolve device discovery, wiring, firmware, authentication, and local networking problems before adding Localtonet.
For the next stage, you need the local IP address or hostname and port that successfully reached EMS-ESP during LAN testing. Use the values observed in your installation. This article does not assign a default address or port because the approved EMS-ESP evidence does not establish one.
Why local verification comes before remote access
A tunnel forwards traffic to an existing service. It does not install EMS-ESP, repair bus wiring, discover heating devices, or correct local authentication. If the web interface cannot be reached from another device on the same LAN, a public tunnel will not solve the underlying issue.
Local testing also tells you which device should run our client. The EMS-ESP evidence confirms that the firmware runs on an ESP32, but it does not say that a Localtonet client can run on the microcontroller itself. The practical architecture is therefore to run our client on another supported device that remains powered on, is connected to the same network, and can reach the EMS-ESP web interface.
This separation is useful operationally. EMS-ESP continues handling the heating bus and local web service, while the second device establishes an outbound connection to a Localtonet relay server. That outbound model means you do not need inbound router port forwarding, firewall changes, VPN setup, or a public IP address.
Expose the EMS-ESP web interface with Localtonet

Begin this section only after the local interface has passed the checks above. An HTTP tunnel is appropriate for the evidenced web interface. Although EMS-ESP also documents a Telnet console, we do not recommend publishing Telnet for this workflow. A management console can provide advanced operational access, and the supplied evidence does not establish its port or remote-exposure safeguards.
Our normal tunnel workflow is shown below. Available relay servers or regions must be selected from the current dashboard rather than copied from an article. Device authentication tokens are device-specific and must remain private.
Install and run our client on a reachable LAN device
Use a supported computer or device on the same local network as EMS-ESP. Confirm from that device that the EMS-ESP web interface opens successfully before continuing.
Authenticate the client device
Select or authenticate the device using its Localtonet token. Treat the token as a secret. Do not place it in screenshots, public configuration examples, logs, or shared documentation.
Select an available relay server
Choose a currently available server or region from our dashboard. Availability can vary, so use the values presented by the current product rather than relying on a hardcoded server code.
Create an HTTP tunnel to EMS-ESP
Configure the tunnel’s local target with the verified LAN address and port of the EMS-ESP web interface. Use the exact target that worked during local testing. HTTP tunnels can use a random subdomain, a custom subdomain where supported, or a custom domain, with the same content served at a public HTTPS address.
Start the tunnel
Creating a tunnel does not start it. Press Start and confirm that the selected client device remains connected and the tunnel is running.
Test the assigned public URL
Open the assigned URL from a network outside your LAN and verify that the EMS-ESP sign-in experience and expected pages load. When remote access is no longer required, stop or delete the tunnel.
For the current product workflow and available fields, consult our HTTP tunnel documentation . Exact domain and DNS instructions should always be checked against the current documentation before configuring a custom domain.
Treat the EMS-ESP interface as an administrative service. Keep its authentication enabled, use strong and unique credentials where the installed version supports them, and grant access only to people who need it. Review the heating controls available through the interface before publishing it, test from an external network, and stop the tunnel when remote access is unnecessary.
Troubleshooting the complete connection path
EMS-ESP does not load locally
Stop before changing the tunnel. Recheck the EMS bus gateway, firmware installation, network configuration, and the address supplied by the official EMS-ESP setup process. Confirm that another LAN device can reach the interface. If non-BBQKees hardware is involved, the EMS-ESP project notes that hardware-specific support may need to come from its manufacturer.
The client device cannot reach EMS-ESP
Verify that both devices have a valid network path. Network segmentation, guest Wi-Fi isolation, local firewall rules, or an incorrect target address can prevent access even when both devices appear to use the same internet connection. Test the exact target from the machine running our client.
The tunnel exists but the URL is unavailable
Confirm that the selected client device is connected and that the tunnel has been started. A created tunnel is not automatically running, and it remains available only while the selected device is connected and the tunnel is active. Then verify that EMS-ESP still responds locally at the configured target.
The public page opens but sign-in or data is incorrect
Compare the result with the local interface. If the same behavior occurs locally, investigate EMS-ESP configuration rather than the tunnel. If the local and remote results differ, recheck that the tunnel points to the intended IP address and port rather than another web service on the LAN.
Frequently asked questions
Can Localtonet install EMS-ESP on the ESP32?
No. Install and configure EMS-ESP by following its current official installation documentation and the instructions for your gateway hardware. Our role begins after the local service is working and reachable from the device running our client.
Can the Localtonet client run directly on EMS-ESP?
The supplied EMS-ESP evidence does not establish that our client can run on its ESP32 firmware. Use another supported device on the same LAN that can reach the EMS-ESP web interface.
Which local port should I enter?
Enter the port that your actual EMS-ESP installation uses and that you verified from the Localtonet client device. The approved project evidence does not state a universal default web port, so we do not guess one.
Do I need router port forwarding or a public IP address?
No. Our client establishes an outbound connection to a Localtonet relay server, so this workflow does not require inbound router port forwarding, firewall changes, VPN setup, or a public IP address.
Should I expose the EMS-ESP Telnet console too?
This guide recommends exposing only the web interface required for the stated task. Telnet provides advanced console access, and the supplied evidence does not establish its port or sufficient safeguards for public exposure. Keep unnecessary management services private.
Will the remote URL remain available if the client device goes offline?
No. The tunnel is available only while the selected client device is connected and the tunnel is running. EMS-ESP must also remain powered, connected, and reachable from that device.
Connect your verified EMS-ESP interface with Localtonet
Once EMS-ESP is installed, configured, and working across your LAN, run our client on a reachable device and create an HTTP tunnel to the verified local target. Keep the endpoint protected and stop the tunnel whenever remote administration is not needed.
Get Started Free →