Skip to content

Releases

v0.54 — first validated hardware revision

Choose a tag to compare

@hubertciebiada hubertciebiada released this 14 Sep 20:28

First public release. v0.54 is the revision printed on the silkscreen of the boards currently built and running; the firmware in this release reports project_version: v0.54 to match.

Hardware

  • Ø120 mm D-shape PCB for the SZOMK AK-N-94 enclosure (Ø128 mm perforated white ABS, smoke-detector form factor), mounts on a standard 60 mm wall box. 24 V DC input with TVS + PTC + reverse-polarity P-FET, LM2596 → 5 V, TPS62933 → 3.3 V.
  • Sensirion SEN66 (CO₂, PM1 / 2.5 / 4 / 10, VOC index, NOx index, temperature, humidity) recessed through a PCB cutout, JST GH lead, zip-tie retention.
  • HiLink HLK-LD2410C mmWave presence radar with stillness detection, board-to-board on a 2.54 mm header, antennas toward the cover.
  • 7 × SK6812-SIDE side-emitting RGB ring (air-quality colour indicator), ESP32-C6-DevKitM-1-N4 on socket headers, Qwiic / STEMMA QT expansion port.
  • Verification on this copper: build.py 35/35 stages PASS, DRC 0 violations / 0 unconnected, 78/78 pytest, JLCPCB DFM 0 Danger on both the bare-board and the assembly check.
  • Hand-soldered after SMT assembly: J1, J4, J5, J6, C1, C3, C4.

Production files attached: oas-jlcpcb.zip (gerbers + drill), oas-BOM.csv, oas-top-CPL.csv, oas-bottom-CPL.csv, oas-ibom.html (interactive BOM). Order per the JLCPCB workflow in CLAUDE.md — Parts Selection "By Customer" and the pre-payment Assembly Order cross-check are not optional.

Firmware (ESPHome, esp-idf)

  • Five packages: core / leds / air-quality / presence / bt-proxy; on-device web dashboard grouped per sub-device.
  • SEN66 with Sensirion's STAR temperature compensation running inside the module; temperature / humidity / CO₂ offsets exposed as Home Assistant entities.
  • LD2410C: per-gate thresholds, gate 0 disabled (it sees the sensor fan and the cover), the radar's Bluetooth kept off; sleep-detection tuning notes in packages/presence.yaml.
  • OTA (Home Assistant ESPHome add-on), native API, Bluetooth proxy, Restart / Safe-Mode buttons.
  • firmware/tools/bringup_check.py — repeatable per-unit bench check.
  • v0.51 prototype boards need firmware/esphome/examples/v0.51-board.yaml (SDA/SCL and UART pin overrides); v0.54 boards run the defaults.

Known limitations

  • The SEN66 needs an air duct from the perforated cover to its inlet to read correctly inside the enclosure; the duct sits in front of part of the LED ring, so the light effect is weaker than designed. The duct is not in the repository yet.
  • Detecting a sleeping person relies on the presence timeout, not on the still-target thresholds (see packages/presence.yaml).
  • BOM cost is deliberately above bargain DIY kits: calibrated combo sensor, mmWave radar, injection-moulded enclosure.

Since the order-approved design freeze (ea154f8, 2026-07-23)

Firmware bring-up and documentation only — no copper change. See the commit list between ea154f8 and this release.