Skip to content

v0.14.5 - EventDisplayPanel Display Fixes (2026-02-24)

What Changed?

This release fixes two display bugs in monitor.py's EventDisplayPanel. BME280 sensor fields are now read from the correct flat field names (temp_c, hmd_pct, atm_pa), and the detected_us timestamp is now displayed as a human-readable ISO8601 local time string instead of a raw UNIX microsecond integer.


What's New

Fixed EventDisplayPanel in monitor.py

What it does: The EventDisplayPanel now correctly displays BME280 environmental data and the event detection timestamp.

How to use it:

# Watch a directory — BME280 and timestamp now display correctly
uv run monitor.py --watch 20260224/

Key fixes:

  • BME280 fields read from flat device response fields: temp_c, hmd_pct, atm_pa
  • Pressure converted from Pa to hPa (atm_pa / 100)
  • detected_us converted from UNIX microseconds to ISO8601 local time with millisecond precision

Example display (before → after):

Field Before After
Temperature 0.0 °C 22.3 °C
Humidity 0.0 % 45.1 %
Pressure 0.0 hPa 1013.2 hPa
Detected 1740378898123456 2026-02-24T15:54:58.123

Installation

Quick Start

# Get the release
git checkout v0.14.5

# Setup
uv sync

# Run monitor in watch mode
uv run examples/monitor.py --watch /path/to/data/directory

What's Different from the Last Version?

✅ Added

  • Nothing new added

🔧 Changed

  • Nothing changed

🐛 Fixed

  • EventDisplayPanel: BME280 field names corrected from nested bme280.temperature to flat temp_c, hmd_pct, atm_pa
  • EventDisplayPanel: Pressure now displayed in hPa (was displaying raw Pa value)
  • EventDisplayPanel: detected_us now displayed as ISO8601 local time with millisecond precision (was displaying raw UNIX microsecond integer)

Is It Safe to Upgrade?

Backward Compatible: Yes

  • monitor.py is an example script, not a library API — no downstream code is affected
  • Display-only fixes; no changes to data collection or file watching behavior

Tests Passed

  • ✅ Builds without errors
  • ✅ Commitizen conventional commits validation
  • ✅ BME280 sensor values confirmed correct during live detector run
  • detected_us displays as local ISO8601 time with millisecond precision

Release Details

  • Date: 2026-02-24
  • Version: v0.14.5
  • Files Changed: 1 (examples/monitor.py)
  • Commits: f83fd44, be9f5bf

Next Steps

  • Consider exposing PollingObserver interval as a --poll-interval CLI option for performance tuning
  • Evaluate whether FSEvents can be re-enabled for non-detector file sources as an opt-in