RS1.AUDIO records the enclosure. This module decides whether what it recorded is normal. It builds a baseline from the station's own sound — thirty-two log-spaced energy bands, the cooling fan's fundamental with harmonic support, envelope kurtosis, spectral flux, and 4–8 Hz modulation — and then measures every new capture against it.
The fan fundamental is the headline number: a bearing on its way out shifts and broadens before it fails audibly, and a fan that has stopped is a silence the baseline notices immediately. It runs on numpy alone, on a Raspberry Pi 3B+, with no machine learning and no cloud service.
It also taught a lesson worth recording. The first kurtosis readings scattered between 6.5 and 11.7, which looked like the measurement was simply too noisy to trend. It was not: the first half-second of every capture contained the USB audio device opening. Discard that half-second and the same measurement lands between 3.8 and 3.9 — stable to a tenth. The instrument was fine; it was measuring its own startup.
| Features | 32 log bands, fan fundamental + harmonics, kurtosis, spectral flux, 4–8 Hz modulation |
|---|---|
| Capture | 10 s, with the first 0.5 s discarded |
| Library | numpy only — no ML, no cloud |
| Runs on | Raspberry Pi 3B+ |
| Output | JSONL history plus a current-state JSON |
| Alerts via | RS1.PUSHOVER |
Nothing here yet. Drop images or video into
/projects/rs1/modules/rs1-audio-delta/media/ and they appear on this page at the
next build — or list them in module.json with captions
to control the order and the wording.
Not published yet. Code for this module will live in
/projects/rs1/modules/rs1-audio-delta/ alongside its module.json, and
gets listed here once it does.