August 12, 2026
Six months of Whisper OS
We spent most of the last six months making Whisper OS work better on the hardware we already support.
From March 1 to July 25, we shipped 10 stable releases: v1.3 through v1.4.3, plus the v1.4 beta, all in the changelog. A lot of that time went into measuring real devices and smoothing out the rough edges.
Performance boost
We swapped the overlapping crypto dependencies for Monocypher, a smaller implementation. That freed flash space and made crypto faster on ESP32-S3.
| Operation | Improvement |
|---|---|
| SHA-256 | 4.55× faster |
| Ed25519 verification | 3.53× faster |
| AES-128 | 1.34% faster |
Battery life
Power took the most testing. We changed when the CPU, display, BLE, GPS, and radio sleep.
| Device and state | Before | Whisper OS now | Reduction |
|---|---|---|---|
| Heltec V3, BLE advertising, display on | 88 mA | 65 mA | 26% |
| Heltec V4, BLE advertising, display on | 85 mA | 65 mA | 24% |
| Cardputer ADV, BLE advertising, display on | 102 mA | 74 mA | 27% |
| Heltec V3, display off, power save | n/a | 16 mA | n/a |
| Heltec V4, display off, power save | n/a | 16 mA | n/a |
Whisper OS is the first firmware to bring the Heltec V3 and V4 down to 16 mA in power save mode. We measured that on real boards.
Firmware size
Size matters on nRF52 boards with Simplified Chinese fonts in the build. In v1.4.1, we cut the average ESP32 image by 667.5 KB and the average nRF52 image by 92.4 KB.
| Architecture | v1.3.5 average | v1.4.1 average | Reduction |
|---|---|---|---|
| ESP32 | 1,622.9 KB | 955.4 KB | 41.13% |
| nRF52 | 1,209.4 KB | 1,117.0 KB | 7.64% |
The RAK4631 Simplified Chinese build used to exceed its flash limit by 29.3 KB. After the change, it had 60.4 KB free.
Release folders shrank. These numbers cover every device, language, and flashing format.
| Release | Published artifacts |
|---|---|
| v1.2.5 | 133 MB |
| v1.3.5 | 90 MB |
| v1.4 | 93 MB |
| v1.4.1 | 73 MB |
| v1.4.2 | 73 MB |
| v1.4.3 | 74 MB |
The rest of the work
We split the virtual keyboard, M5 keyboard, Morse input, and CardKB out of the Contacts screen into their own implementations. We added direct replies and better English word suggestions, and brought CardKB to more boards.
We rewrote the display layer for the OLED and TFT panels Whisper OS uses, fixing refresh, brightness, rotation, and sleep behavior, and adding support for the Heltec T096 and Tracker V2. We added the TinyLora C3 MV in v1.3.4 and the Heltec v4 4.3 board in v1.3.5.
In v1.3.4, we added GPS duty-cycle modes that save 11% to 34% of battery depending on how often the GPS reports. We added a real power off in v1.4.2: supported ESP32 devices drop into deep sleep until the user button wakes them. In v1.4.3, we added automatic receiver sensitivity tuning to the Heltec V4, Tracker V2, and T096, and we taught the mesh to drop relayed messages that fail routing checks.
We added GPS privacy controls and local backup and restore through Haikou in v1.4.3. You can move settings, contacts, and channels to another device without touching a cloud service.
Whisper OS is faster, uses less power, needs less flash, and is easier to recover after a reset. That was a good six months.