The problem
Each cabinet has a small board that joins Wi-Fi, waits on an MQTT topic and pulses one of six latches when a paid order arrives. It sleeps more than 99.9 percent of its life, so average current decides whether four AA cells last months or years. The previous DA16200 board was 2.4 GHz only and idled around 200 uA, which the client had measured at roughly 1.4 years. Some sites had 5 GHz only access points. The client had already verified the QCC730M at about 40 uA idle on the evaluation kit. My job was the whole hardware migration with no change to their firmware.
What I did
I built the library first, because the module has no EasyEDA or LCSC entry: a 36 pad LGA with six 3.3 mm ground pads drawn from the datasheet, with the antenna zone kept free of copper on every layer. The handoff pack described a single 3.3 V supply and SWD. The datasheet says the internal PA variant has three supply pins and 5 wire JTAG, and both were caught before the schematic. The client's firmware engineer measured the real latch on a PPK2.
It is a shape memory actuator with an end of travel cutoff that draws about 1.9 A from a fresh pack and needs heat energy, not just current, so softening the pulse would make the sag longer. The board keeps the lock path at zero ohms and instead carries an AO3401A P-FET for reverse polarity at 0.1 V drop, a Schottky isolated 3300 uF reservoir in front of the 3.3 V regulator so the module rides through the sag, and 1000 uF beside the FET bank.
Lock outputs sit on the exact GPIOs the client's firmware table uses. Every LED and pull up idles at zero current.
Decisions that shaped it
- Read the module, not the handoff. Three rails and JTAG, not one rail and SWD.
- Characterise the latch before sizing anything. The PPK2 rows settled coil resistance, cutoff behaviour and energy in one table.
- Design for the alkaline pack the client will actually buy, not for lithium cells that would make the problem disappear.
- Consigned module to JLCPCB, everything else from LCSC stock.
Result
PCB released to fabrication in September 2026. Target: idle current within a few microamps of the module's floor and no reset through a lock pulse on a half used pack.



