Azimuth — Firmware Flasher

Flash your
Azimuth.

Flash the latest Azimuth firmware to your Heltec WiFi LoRa 32 V4 directly from your browser using Web Serial. No Arduino IDE required.

Requirements: Google Chrome on desktop (Windows, macOS or Linux). Web Serial is not supported in Safari, Firefox or on mobile browsers. Connect your Azimuth device via USB-C before proceeding.
Heltec WiFi LoRa 32 V4
ESP32-S3 · SX1262 · AT6558R GPS · SSD1306 OLED
Loading…
Select firmware
Loading available versions…
01
Connect
02
Download
03
Flash
04
Done
Not connected
Flashing…0%
How to flash
01 — PREPARE
Connect via USB-C
Connect your Heltec device to your computer using a USB-C cable. Make sure it's a data cable, not charge-only. The device should power on.
02 — CONNECT
Select the serial port
Click Connect device. Chrome shows a port picker — select the USB JTAG/serial debug unit or CP210x port. On Windows it appears as a COM port.
03 — SELECT
Choose firmware version
Select the firmware version to flash. We recommend the latest stable release. Pre-release versions are available for testing but may have bugs.
04 — FLASH
Click Flash firmware
The flasher downloads the three binary files and writes them to the device. Takes about 60 seconds. Don't disconnect during flashing.
Flashing problems? If the device doesn't appear in the port list, try holding the BOOT button on the device while clicking Connect — this forces the ESP32 into download mode. On Windows you may need to install the CP210x USB driver.

Building your own binaries

If you've modified the firmware source code, you'll need to compile and upload your own binaries. Here's how to build and release them for use with this flasher.

Step 1 — Set up Arduino IDE
Install Arduino IDE 2.x. Add the Heltec ESP32 board package via File → Preferences → Additional Board Manager URLs: https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/releases/download/0.0.9/package_heltec_esp32_index.json

Step 2 — Configure board settings

SettingValue
BoardWiFi LoRa 32(V4)
USB CDC On BootEnabled
Partition Scheme16M Flash (3MB APP/9.9MB FATFS)
Flash ModeDIO 80MHz
Flash Size16MB
Upload Speed921600

Step 3 — Export compiled binary
In Arduino IDE go to Sketch → Export Compiled Binary. This creates three files in the sketch folder:

FileFlash addressDescription
bootloader.bin0x0000ESP32 bootloader
partitions.bin0x8000Partition table
firmware.bin0x10000Azimuth application

Step 4 — Create a GitHub Release
Push your changes to the main branch on GitHub. Then go to Releases → Create a new release. Tag it as v3.x.x following semantic versioning. Upload the three .bin files as release assets. Mark it as Latest release when it's ready.

Tip: The flasher page fetches the release list from the GitHub API and automatically shows the latest version. You don't need to update this page when you release a new version.

Step 5 — Test before publishing
Flash a device using the pre-release tag first. Only mark a release as Latest once you've confirmed it boots correctly, connects over BLE and the GPS initialises.

A note on licensing: The Azimuth firmware is released under the MIT License. This means anyone can use, modify and distribute it — including commercially — as long as the original copyright notice is retained. If you distribute a modified version, you must keep the LICENSE file in your repository. You do not have to open-source your changes, but you're encouraged to contribute them back.