I recently started using the KL03 and really like it. It's a good combination of features for an excellent price, and comes in very useful QFN16 and QFN24 packages. But, just as I wanted to use it for a sensor node project, I noticed this on page 235 of the SFRM:
19.1 Chip-specific LLWU information
This device has no LLWU module wakeup source and uses the external pin inputs only of LLWU_P4 and LLWU_P7 as wakeup source to the LLWU module.
This has far-reaching consequences. In particular, it means that the only way to wake up from VLLSx modes is by external pin input. If you're building a sensor node, you want the node to wake up periodically to do something (e.g. check temperature), send the result, and then go to sleep. Most sensor nodes will spend most of their lifetime sleeping. And yet in the KL03, which is described in the datasheet as:
Ideal solution for Internet of Things edge nodes design with ultra small form factor and ultra low power consumption.
… there seems to be no way to implement this behavior using VLLS sleep. If we enter VLLS, we can only wake up through external input, which might not be available (think a temperature monitoring node).
So, the lowest consumption sleep mode that can be used without requiring LLWU module input is VLPS. At a nominal 2.2uA instead of VLLS0 with 0.265uA we're talking 7.3x larger power consumption. I can't help but wonder — am I missing another method to implement sensor nodes that need periodic wakeup? Or is that an oversight when specifying the chip?