diff options
| author | Sadeep Madurange <sadeep@asciimx.com> | 2026-01-08 22:28:37 +0800 |
|---|---|---|
| committer | Sadeep Madurange <sadeep@asciimx.com> | 2026-01-08 22:28:37 +0800 |
| commit | e836c4b9e78cc3892cdebf8126cb650f1b91ed37 (patch) | |
| tree | 4e52155aef0105cc9b888a42b3e760455a2bcb36 /_site/log/fpm-door-lock-rf | |
| parent | 57ff09d2eefefa2462a2af0175e3e8164c7bc828 (diff) | |
| download | www-e836c4b9e78cc3892cdebf8126cb650f1b91ed37.tar.gz | |
Tighten prose.
Diffstat (limited to '_site/log/fpm-door-lock-rf')
| -rw-r--r-- | _site/log/fpm-door-lock-rf/index.html | 44 |
1 files changed, 23 insertions, 21 deletions
diff --git a/_site/log/fpm-door-lock-rf/index.html b/_site/log/fpm-door-lock-rf/index.html index d6c6b66..55675ff 100644 --- a/_site/log/fpm-door-lock-rf/index.html +++ b/_site/log/fpm-door-lock-rf/index.html @@ -46,21 +46,25 @@ lines of the transceivers to UART RXD/TXD of an ATmega328P. Unreliable–constant packet loss.</p> -<p>2025-01: Switched to RFM69 modules. A complete ball-ache. Followed the -datasheet to the letter, audited code more than 10 times, cross-checked with -RadioHead and RFM69 OSS drivers. No luck. ATmega328P runs at 5V, RFM69 3.3V. I -suspect the problem is with the logic-level converter (LLC). Not enough swing.</p> +<p>2025-01: Switched to RFM69 modules. Complete ball-ache. Followed datasheet to +the letter, audited code many times, cross-checked with RadioHead and RFM69 +open-source drivers. No luck.</p> -<p>2025-04: Ditched RFM69s. Switched to NRF24L01+ modules–5V tolerant, no LLC -required. Spent six weekends writing driver from scratch–clean-room, using -datasheet. Works perfectly.</p> +<p>Datasheet riddled with ambiguity.</p> -<p>2025-05: Wrote FPM sensor drivers for R503 and FPM10A. UART RX sequence was -tricky–took multiple attempts to get handshake working. R503 has built-in LEDs -and better form factor–will use it for the lock.</p> +<p>ATmega328P runs at 5V; RFM69 3.3V. Suspect logic-level converter (LLC) +issues. High resistance. Not enough swing.</p> -<p>2025-06: First PCB design. Two boards: fingerprint sensor (front), servo -controller (back). Encrypted RF link between them.</p> +<p>2025-04: Ditched RFM69s. Switched to NRF24L01+ modules– data pins 5V tolerant, +no LLC required. Spent six weekends writing driver from scratch–clean-room. +Works like a charm.</p> + +<p>2025-05: Wrote FPM drivers for R503 and FPM10A. UART RX sequence was +tricky–adopted Adafruit C++ FOSS implementation to C. R503 has built-in LEDs +and better form factor. Chose it for the lock.</p> + +<p>2025-06: Two PCB boards for FPM (front) and servo (back) controllers. Encrypted +RF link between them.</p> <table style="border: none; width: 100%"> <tr style="border: none;"> @@ -85,20 +89,18 @@ controller (back). Encrypted RF link between them.</p> </tr> </table> -<p>PCB specs: 2-layer, 1oz copper, 0.3mm traces (0.5mm for power). Ground plane. -Both subsystems worked—could control servo from sensor over RF.</p> +<p>PCB specs: 2-layer, 1oz copper, 0.3mm traces (0.5mm for power). Ground plane.</p> -<p>2025-06: NRF24L01+ on the back controller stopped working after mounting on -PCB. RFM is too close to PWM line. Fixed by soldering a large 47uF (16V) -electrolytic capacitor between VCC and ground.</p> +<p>2025-06: NRF24L01+ on the back stopped working after mounting on PCB. Too close +to servo’s PWM line. Soldering a large 47uF (16V) electrolytic capacitor +between VCC and ground fixed it.</p> <p>Power problems became clear. Linear regulators dissipated too much heat. Sensor -and servo drew 13.8mA and 4.6mA quiescent—unacceptable for battery. Servo -inrush current can exceed 1A. Trace width (0.3mm), especially for servo and -power, cutting it close.</p> +and servo drew 13.8mA and 4.6mA quiescent currents–unacceptable for battery. +Servo inrush current exceeds 1A. 0.3mm tracks cuts it too close.</p> <p>Verdict: Functional but not practical. Battery dead in under 24 hours. Led to -<a href="../fpm-door-lock-lp/">complete redesign</a> with proper power management.</p> +<a href="../fpm-door-lock-lp/">redesign</a> with proper power management.</p> <p>Commit: <a href="https://git.asciimx.com/smart-home/commit/?id=f4b0b734a595919cf451ab9448b06274c8e609a4">f4b0b73</a> |
