Zephyr RTOS Development

Production Zephyr firmware — BLE provisioning, WiFi, LoRa, OTA, crash reporting, storage, displays, and multi-year battery life, proven in the OGLAS v2 platform.

Zephyr RTOS — production firmware, not tutorial code

The full connected-device stack on Zephyr — BLE configuration, WiFi, LoRa, over-the-air updates, crash reporting, storage, displays, and multi-year battery life — shipping today in the second-generation OGLAS firmware across nRF52840, ESP32, and STM32.

See it in OGLAS →

Overview

Zephyr is my RTOS of choice for serious connected products. It is vendor-neutral — the same codebase runs on Nordic, Espressif, and ST silicon — with devicetree and Kconfig keeping board differences out of application code, west managing builds and dependencies, and first-class subsystems for Bluetooth, networking, power management, storage, and firmware update.

These are not isolated demos. Every capability below is shipping in the second-generation OGLAS firmware — hubs and sensors deployed to off-grid sites where a truck roll to fix a locked-up device is not an option. That constraint drives everything: devices must configure themselves in the field, update themselves remotely, report their own crashes, and run for years on a battery.

Capabilities

BLE configuration & provisioning

Custom GATT services for on-site commissioning — set WiFi credentials, radio settings, and site parameters from a phone, with secure pairing. No serial cable, no reflash, no laptop in a paddock.

WiFi

Station and access-point provisioning flows, credential storage, and robust reconnect handling for networks that come and go — including BLE/WiFi coexistence on ESP32-class parts.

LoRa & long-range radio

Zephyr LoRa on SX126x-class radios (RAK4631 / nRF52840) — the radio layer under the OGLAS sensor network, backed by the Mesh & LoRa and Gateway work.

Long-term battery management

Zephyr device power management, sleep states, and duty-cycling for multi-year field life — plus battery telemetry so the data tells you a device is fading long before it goes quiet. Ultra-low-power deep-sleep design is a speciality.

OTA updates

MCUboot dual-slot images with signed firmware and safe rollback — updates delivered over BLE or WiFi to devices you may never physically touch again. A failed update falls back; it never bricks.

Crash reporting

Fault handlers, coredumps, and persisted crash and reboot-reason logging, so a field failure comes home with the data instead of vanishing into a reset. Rare bugs get found and fixed, not shrugged at.

Storage & settings

NVS and the Zephyr settings subsystem for configuration and calibration, and flash filesystems for data logging — all designed to survive power loss, because off-grid power fails without warning.

Displays

OLED, eInk, and LCD panels under Zephyr’s display subsystem and LVGL — from always-on status screens to ultra-low-power eInk that costs nothing between refreshes. See Custom Displays.

RTC & timekeeping

Battery-backed RTC and time synchronisation across sensors and hubs, so data from an off-grid site is correctly timestamped even after weeks with no uplink and no NTP.

Platforms

One application codebase, per-board devicetree overlays and Kconfig fragments — that is the point of Zephyr, and it is how the OGLAS v2 firmware is structured.

Platform Boards Strengths
nRF52840 RAK4631, SenseCAP T1000-E BLE + SX1262 LoRa, exceptional sleep currents
ESP32 / ESP32-S3 Heltec V3 and custom boards WiFi + BLE, displays, plenty of headroom
STM32 Custom and off-the-shelf boards Wide part range, industrial peripherals, RTC

Proven in OGLAS v2

The second-generation OGLAS hub and sensor firmware is built on Zephyr and exercises everything on this page in production: BLE-commissioned, LoRa-connected, OTA-updatable devices that log locally, report their own faults, and run unattended for years. If your product needs the same, this is exactly what I do.