In July/August 2026 EMS-ESP firmware versions 3.8.4 and development version 3.9.0 came out.
Due to the changes in the firmware structure, automatic upgrades via the EMS-ESP WebUI may cause issues. Updates may fail.
Please consult the following two Github discussions for tips and tricks:
– Upgrading from 3.8.2 #3183
– Migrating to 3.9.0 first experience and observations #3181
Warnings
Updating to firmware 3.8.4 from any other older version via the web interface will fail.
More problematic is that updating to 3.9.0 requires a factory reset. You CANNOT do this remotely!
Gateways that have updated to 3.9.0 WILL GET A NEW MAC ADDRESS! Your DHCP reservation will thus not work anymore and the IP address will change as well.
Update guide
Below is a guide to upgrading. The EMS-ESP developers’ plan is for everyone to eventually get on the mainstream version, which the development branch leads, so they can continue to innovate as Espressif (the ESP microcontroller) continues to roll out new core libraries and hardware variants.
EMS Gateway E32 V2 and V2.2
These devices use firmware bin files ending with ESP32-16MB+
Direct update from versions 3.8.2, 3.8.3, 3.8.3-dev.x to any v3.9.x and newer fails.
Solution 1: Download the new firmware from the Github repository directly and update via drag-and-drop field in the web interface.
Solution 2: Update to 3.8.4, then update to 3.9.x.
BIN file firmware 3.8.4: https://github.com/emsesp/EMS-ESP32/releases/download/v3.8.4/EMS-ESP-3_8_4-ESP32-16MB+.bin
EMS Gateway S3
These devices use firmware bin files ending with ESP32S3-16MB+.
Direct update from versions 3.8.2, 3.8.3, 3.8.3-dev.x to any v3.9.x and newer fails.
Solution 1: Download the new firmware from the Github repository directly and update via drag-and-drop field in the web interface.
Solution 2: Update to 3.8.4, then update to 3.9.x.
BIN file firmware 3.8.4: https://github.com/emsesp/EMS-ESP32/releases/download/v3.8.4/EMS-ESP-3_8_4-ESP32S3-16MB+.bin
EMS Gateway S32 V1.0 and V2.0
These devices use firmware bin files ending with ESP32-4MB or ESP32-16MB.
Update from version 3.8.2 to all versions fails, also affected v3.8.2-dev23, v3.8.3-dev0, v3.8.3-dev1, v3.8.3-dev2).
Solution 1: enable settings/application/developer-options, in version page install the stored version, then update to the desired version.
Solution 2: Flash new version via USB and the EMS-ESP flash tool.
EMS Gateway S32 V1.0 has 4MB of Flash. Use the following BIN file:
https://github.com/emsesp/EMS-ESP32/releases/download/v3.8.4/EMS-ESP-3_8_4-ESP32-4MB.bin
EMS Gateway S32 V2.0 has 16MB of Flash. Use the following BIN file: https://github.com/emsesp/EMS-ESP32/releases/download/v3.8.4/EMS-ESP-3_8_4-ESP32-16MB.bin
