Releases

Firmware and software updates

v0.7.19

firmware

Display & Dock Reliability Improvements

Update improving e-ink display quality and dock detection consistency.
What's New

Improved display refresh quality
The screen now uses smarter refresh cycles - faster updates for normal content changes, and automatic full clears every 15 minutes to prevent ghost images from building up over time.

Improvements
  • Dock identification retries at timed intervals when the chip takes a moment to become ready, preventing false "unrecognised dock" states
  • Dock state properly resets when you undock, so the next connection always starts fresh
  • "Busy..." status during menu operations now displays correctly without overlapping other text

v0.7.11

firmware

Automatic updates and reliability improvements

ambient one now updates more easily in the background, with safer update checks and better day-to-day reliability.
What's New

Automatic updates
ambient one can now check for and install firmware updates automatically, so your device stays up to date with less manual work.

Safer update flow
Update safety checks were improved to reduce the chance of failed updates and keep devices stable.

Improvements
  • Improved reliability for data reporting and integrations
  • More consistent behavior when syncing settings
  • Smoother overall update experience
Bug Fixes
  • Fixed an issue that could cause occasional identity mismatch in integrations
  • Fixed an edge case when saving empty values in settings

v0.7.6

firmware

Home Assistant Integration & Major Display Redesign

Major update bringing native Home Assistant integration via MQTT, completely redesigned display screens, improved device reliability with watchdog protection, and enhanced air quality data accuracy.
What's New

Home Assistant Integration (MQTT)
Native MQTT integration with auto-discovery. 12 sensors (PM1.0, PM2.5, PM4.0, PM10, Temperature, Humidity, VOC, NOx, CO₂, HCHO, IAQ Score, AQI) automatically register with Home Assistant. Cloud-synced settings with availability tracking and 1-minute averaged data for clean graphs.

Redesigned Display Screens
New per-pollutant detail screens with large, easy-to-read values and color-coded thresholds. Redesigned 2×2 overview grid replacing the old dense text list. New flip-calendar date screen. Cleaner layouts with more breathing room.

IAQ Data Quality Tracking
Every reading now includes provenance metadata showing whether data is provisional (single reading) or fully averaged (1-minute), with clear warm-up indicators across display, LED, and cloud dashboard.

Watchdog Timer Protection
Hardware watchdog monitors firmware during setup and operation. Automatically resets device if it hangs due to sensor or network issues. Seven diagnostic checkpoints tracked and persisted for troubleshooting.

HTTP Circuit Breaker
Detects consecutive cloud connection failures and temporarily stops retrying, preventing 9-second TCP timeouts from blocking display, sensors, and LED. Automatically re-enables when connectivity returns.

General MQTT Setup

MQTT on ambient one is not limited to Home Assistant — it works with any MQTT broker and client. The device publishes sensor data to standard MQTT topics, so you can consume it with Node-RED, Grafana, custom scripts, or any MQTT-compatible platform.

Defaults
Setting Default Notes
Broker homeassistant.local Change to any broker IP/hostname
Port 1883 Standard MQTT port
Discovery prefix homeassistant Only relevant for HA auto-discovery
Publish interval 60s
Configuration

Configure MQTT settings from the device settings in the Ambient Works App, or directly on the device via the Settings → MQTT menu.

Authentication (Optional)

By default, no credentials are required. If your broker requires authentication (e.g., Home Assistant's Mosquitto add-on), you can set a username and password via the Ambient Works App. Credentials are stored encrypted in secure NVS on the device and are never sent to the cloud.

Using with Non-HA Brokers

MQTT works with any standalone Mosquitto, EMQX, HiveMQ, or other MQTT 3.1.1 broker. Simply configure your broker's IP address and optional credentials via the app.

The device will publish sensor data to ambient/{device_id}/state regardless of the discovery prefix. You can subscribe with any MQTT client:

mosquitto_sub -h 192.168.1.50 -u myuser -P mypass -t "ambient/#" -v

Note: MQTT is currently publish-only. The device sends sensor data but does not accept commands via MQTT (e.g., you cannot trigger OTA updates or change settings over MQTT).

Improvements
  • VOC and NOx warm-up filtering: rejects readings above 500 during sensor warm-up to prevent false 'Severe' alerts
  • I2C timeout protection: 5-second timeout on all sensor communications prevents device freeze
  • Improved dock detection with widened ADC ranges and faster debounce (20→8 cycles)
  • WiFi icon now blinks when cloud is unreachable but WiFi is connected
  • Anti-ghosting refresh every 15 minutes to prevent e-ink display artifacts
  • Shorter network timeouts: SSL handshake 120s→15s, HTTP connect/request 3-5s
  • Button press reliability improved with fallback detection and 150ms deduplication
  • Reduced serial logging noise in production builds
Bug Fixes
  • Fixed battery charging icon not updating when docking device
  • Fixed voltage reference mismatch between battery reading and display code
  • Fixed sensor hang causing entire device freeze (now has I2C timeout)
  • Fixed VOC/NOx outputting garbage values during warm-up period

v0.7.3

software

MQTT Settings & Analytics

App update adding MQTT configuration support for Home Assistant, analytics integration, and improved data handling.
What's New

MQTT settings support
Configure your Home Assistant MQTT connection directly from the app.

Improved overview
Refreshed overview screen with better layout and readability.

Improvements
  • Better caching and historical data storage
  • Improved offline handling
  • Updated backend data schema for faster loading
  • Various styling refinements

v0.6.11

firmware

LED Control, Cloud Connectivity & WiFi Stability

Significant update focused on LED brightness control, cloud connectivity improvements, offline reliability, and critical WiFi stability fixes. Consolidates all changes from v0.5.0 through v0.6.11.
What's New

Independent LED Brightness Control
Four brightness levels (Off, Dim, Medium, Bright) fully independent from power modes. LED brightness is now cloud-synced and always respects your preference. Air quality colors work as before, but brightness never changes automatically.

Temperature Units Selection
Switch between Celsius and Fahrenheit directly from device menu. Setting syncs to cloud and applies to all temperature readings on display.

Cloud Settings Sync via Broadcast
Real-time settings sync between device and dashboard using Supabase Realtime Broadcast. Instant updates with confirmation feedback and 70% reduction in realtime message consumption.

WiFi Reconnection Fix (Critical)
Fixed critical bug where WiFi reconnection cleared ESP32's time system, causing NULL pointer crashes and loss of AQI calculations. Now preserves time system during reconnection.

Offline Data Queue Overhaul
Device ID caching prevents upload corruption when WiFi is down. Queue crash recovery, stale queue cleanup, and memory-safe processing. Note: Offline storage temporarily disabled in v0.6.9+ pending edge case fixes.

Improvements
  • HTTP timeouts added: 2s connect, 3s read (prevents main loop freezing)
  • Realtime websocket reconnection fixed - no longer stops after disconnection
  • Realtime message consumption reduced from 7.6M/month to 2M/month
  • Dock detection debounced with 5-second threshold to prevent flapping
  • LED breathing animation color accuracy improved at all brightness levels
  • AQI calculation now works without WiFi using millis()-based fallback
  • MainController runs in all device states for continuous cloud connectivity
  • OTA updates require confirmation dialog before applying
  • Production logging cleaned up - removed debug output and verbose messages
Bug Fixes
  • Fixed WiFi reconnection resetting RTC and causing 'Local mode (no time)' errors
  • Fixed AQI not calculating when booting without WiFi
  • Fixed threshold band calculation where scores 0.01-1.99 showed 'Severe' instead of 'Poor'
  • Fixed realtime websocket not reconnecting after disconnection
  • Fixed device ID corruption during offline storage (WiFi.macAddress() returns garbage when offline)
  • Fixed queue index not being deleted when empty
  • Fixed LED color shift to pure red at dim brightness

v0.6.0

software

Charging Status & LED Control

Added charging status display, LED brightness control from the app, and event alert sparklines.
What's New

Charging status
Battery icon now shows real-time charging state when docked.

LED brightness control
Adjust LED mode directly from the app.

Alert sparklines
Event alerts now show a 1-hour sparkline to give you quick context.

Bug Fixes
  • Fixed Wi-Fi password autofill issue
  • Fixed default chart hours display
  • Improved device scan reliability
  • Various styling and positioning fixes

v0.5.6

software

Improved Onboarding & IAQ History

Added ambient IAQ score to historical charts and streamlined the device onboarding experience.
What's New

IAQ score in history
View your ambient IAQ score over time in the historical charts.

Improved onboarding
Simplified setup flow for new devices with better step-by-step guidance.

Bug Fixes
  • Fixed Wi-Fi status mismatch during provisioning
  • Fixed device not appearing without location permissions
  • Fixed device not showing after provisioning completes

v0.5.5

software

Temperature Offset & Insights

Added temperature calibration offset, app auto-updates, and the insights tab.
What's New

Temperature offset
Fine-tune your temperature readings with a calibration offset in device settings.

App updates
The app can now update itself for a smoother experience.

Bug Fixes
  • Fixed space switching in device settings
  • Improved notification filtering for events
  • Better data handling after device provisioning

v0.5.4

software

Tab Bar, Dark Mode & Timeline

Major app redesign with new tab navigation, dark mode support, timeline view, and offline handling.
What's New

Tab bar navigation
New bottom tab bar for quick access to all app sections.

Dark mode
The app now matches your device theme — light or dark.

Timeline
View events and activities in a chronological timeline.

Offline mode
Better handling when your phone or device is offline.

Improvements
  • Uses thresholds from backend for consistent alerts
  • Temperature unit control in-app
  • Improved notification handling
  • Better date and time formatting

v0.5.3

software

Charts & AQI Standards

Better charts with minute-level data, line chart view, AQI standard selection, and temperature unit choice.
What's New

Detailed charts
Charts now support 15-minute intervals and line chart view for more detail.

AQI standard selection
Choose your preferred air quality index standard.

Temperature units
Switch between Celsius and Fahrenheit.

Bug Fixes
  • Improved notification permission handling
  • Better chart performance and scaling
  • Fixed BLE connection crash

v0.5.2

software

Night Mode & Activity Details

Charts now show night mode hours, activity editing, and animated AQI indicators.
What's New

Night mode on charts
Night mode hours are shown with lower opacity on graphs for context.

Edit activities
Change activity details after creation.

Animated AQI
Animated AQI icon on the home screen and device view.

Bug Fixes
  • Various styling improvements
  • Fixed time range and space selection on iOS
  • Fixed space name not updating on home screen

v0.5.1

software

Device Settings & Location Management

Improved device settings, ability to manage devices, locations, and spaces, and map view for locations.
What's New

Device management
Remove devices, locations, and spaces directly from the app.

Settings workflow
Device settings apply automatically. App settings require confirmation for safety.

Map view
View and set location details on an interactive map.

Improvements
  • Configurable chart hours
  • Minor visual refinements

v0.2.2

firmware

Small Fixes and OTA Improvements

Maintenance release with bug fixes and improvements to the over-the-air update system.
Improvements
  • Enhanced OTA update reliability
  • General stability improvements
Bug Fixes
  • Various minor bug fixes

v0.2.0

firmware

OTA Updates, Night Mode & Menu Improvements

Major feature release introducing OTA update system, night mode scheduling, improved menu system, and enhanced state machine with sensor duty cycling for significant power savings.
What's New

OTA Update System
Over-the-air firmware updates allow seamless device improvements without physical access. Automatic update delivery with rollback protection.

Night Mode Scheduling
Schedule display and LED dimming for nighttime hours. Customizable start/end times with automatic transitions for better sleep environment.

Menu System Improvements
Enhanced navigation with better visual feedback, clearer menu hierarchy, and more intuitive settings organization.

Sensor Duty Cycling
Intelligent power management cycles sensors on/off based on usage patterns, significantly extending battery life without compromising data quality.

Improvements
  • Refined state machine for more efficient operation
  • Better display mode transitions
  • Power consumption optimizations
  • Enhanced user experience through improved navigation

v0.1.1

firmware

Display Settings and OTA Tooling

Added cloud-synced display inversion setting and improved OTA automation infrastructure.
What's New

Display Inverted Setting
New cloud-synced setting to invert display colors. Changes persist across devices and sync automatically.

OTA Automation Tooling
Added prepare-ota.sh script for streamlined over-the-air update packaging and deployment.

Improvements
  • Fixed serial command to properly sync with cloud
  • Improved OTA preparation workflow

v0.1.0

firmware

MVP Release - First Production Version

First minimum viable product release with core device functionality, cloud connectivity, and alert system infrastructure.
What's New

Device Settings Shadow System
Real-time cloud-to-device synchronization allows settings changes from dashboard to instantly reflect on device and vice versa.

Alert System Infrastructure
Comprehensive alert system with 30+ configurable alert settings managed through cloud dashboard for personalized air quality notifications.

Device Status Architecture
Split architecture eliminates realtime echo and reduces traffic by 90%+, improving responsiveness and reducing bandwidth usage.

Power Switch Recovery
Improved power management handles unexpected power switches gracefully, ensuring device recovers to correct state.

Timezone Auto-detection
GeoIP-based timezone configuration automatically sets correct timezone based on device location, no manual setup required.

Improvements
  • Optimized boot sequence for faster startup
  • Enhanced power management and recovery
  • Reduced cloud traffic overhead