v2.6.0 - BME280 Diagnostics & Bug Fixes (2026-06-04)¶
What Changed?¶
This release adds BME280 sensor availability diagnostics to GET_STATUS and GET_BME280 responses.
Users can now check whether the sensor was successfully initialized without inspecting boot-time serial output.
It also fixes a field name inconsistency (temp_c → tmp_c) and several detection-related bugs.
What's New¶
Main Feature: BME280 Availability Flag¶
What it does:
GET_STATUS and GET_BME280 responses now include an available field indicating whether the BME280 sensor was successfully initialized at boot.
How to use it:
Send GET_STATUS or GET_BME280 via the serial monitor and check the available field:
{
"type": "response",
"status": "ok",
"bme280": {
"available": false,
"tmp_c": 0.0,
"atm_pa": 0.0,
"hmd_pct": 0.0
}
}
If available is false, the sensor was not detected at startup. Check I2C wiring (SDA=GPIO21, SCL=GPIO22) and I2C address (default: 0x76, alternative: 0x77).
Installation¶
Quick Start¶
# Get the release
git checkout 2.6.0
# Build
task v2:build
# Upload
task v2:upload
# Check it works
task monitor
What's Different from the Last Version?¶
Added¶
availablefield inGET_STATUSbme280objectavailablefield inGET_BME280response- Task and Homebrew prerequisites in setup documentation (Raspberry Pi OS)
Fixed¶
- Renamed
temp_ctotmp_cin detection event output for consistency - Reset hit counters inside
CosmicDetector::read()to make API self-contained - Added
ULsuffix to range constants inpoll_countfor consistency withthreshold.cpp - Range-check
valbeforeuint16_tcast in threshold to prevent overflow bypass
Is It Safe to Upgrade?¶
Backward Compatible: Mostly yes
- The
availablefield is newly added — existing clients will ignore it - The rename from
temp_ctotmp_cin detection events is a breaking change for clients parsing that field
Tests Passed¶
- Builds without errors
GET_STATUSreturnsbme280.availableGET_BME280returnsavailable
Release Details¶
- Date: 2026-06-04
- Version: v2.6.0
- Files Changed: 6