Spot a fake DS18B20 on a Raspberry Pi: family-code check, sysfs CRC test, and ice/boil calibration against the datasheet. 3 of 7 probes in one batch were counterfeits, drifting 1.5–3.5 °C.
How rollup tables and a retention policy keep a Raspberry Pi sensor SQLite database from growing unbounded — and why SD-card wear is rarely the real problem.
CT clamp burden resistor calibration for ADS1115 on Raspberry Pi: pick the external burden, stabilise with a decoupling cap, and apply the DC-bias correction that separates a stable watt reading from drift — with the 51 Ω + 10 µF combination I actually measured.
The HC-12 433MHz serial bridge has no built-in retry or CRC at the UART passthrough level. Here is a practical application-level framing scheme with CRC-16, timeout-based retry, and backoff that actually worked on a live Pi 4 → ESP32-C3 link through walls — plus what went wrong.
The ESP32-C3 datasheet promises 5–7 µA deep sleep. Your dev board draws thousands of times more. Here is what is actually leaking current in a XIAO ESP32C3 and how to measure it yourself.
DS18B20 parasite power vs 3-wire on long cable runs: why parasite power fails past ~3 metres on a 1-Wire bus, the physics behind the voltage collapse, and what 3-wire + 4.7k pull-up measured over 24 hours on the operator's 8-sensor bus.
ADS1115 and CT clamps for whole-house energy monitoring on a Raspberry Pi: 15.6 days of real 60-second watt data, RMS burst code, and the calibration constant hiding a scale error.
How I ran my old RRDtool logger and its SQLite replacement in parallel for months — why you tee the reads instead of double-polling, and how to set a real cutover test before a monitoring-system migration.
DHT11 accuracy after 18 months of continuous logging on a Raspberry Pi: 26,318 rollup rows, 38% below the datasheet's 20 %RH floor, and where the part stops being usable.
Why asyncio does not make 1-Wire faster, and the collector pattern I actually run: per-plugin loops, to_thread for blocking buses, and one batched SQLite writer.
Nest SDM API rate limits are 5 QPM / 100 QPH per device. How I poll five thermostats from Python without tripping quotas, using devices.list and exponential backoff on 429.
Real numbers from a Raspberry Pi 4 running SQLite in WAL mode as a 24/7 home sensor logger: 1.25M rows, 5108 writes/hour, 4 MB WAL, zero corruption after 10 days of continuous writes.
How I migrated a two-year RRDtool logging setup to SQLite in WAL mode on a Raspberry Pi 4 — rescued 145,742 legacy rows, kept every historical data point, and used a parallel-run cutover to verify.
Why I moved my outdoor ESP32-C3 sensor nodes off WiFi and onto HC-12 433 MHz serial radio, the settings that mattered, and the failure modes nobody warns you about.
DS18B20 CRC errors on a short, correctly-terminated 1-Wire bus: eight probes on 2-3 m of ribbon cable, a correctly sized 4.7k pull-up, and a persistent failure rate that the wiring does not explain — tuned toward the phrase people actually search.