As some of you may know, HayTag uses a solar energy harvesting power system. It also uses a SPIRIT1 transceiver, which has a DC-DC converter built-in, meaning that the HayTag hardware includes a total of two DC-DC converters: a boost converter in the solar battery charger, and a buck converter in the SPIRIT1. LoRa and SigFox radios do not include integrated DC-DC, but many of the new low power MCUs (TI MSP432, Atmel SAM L, even TI CC13xx), so there’s a good chance we will see designs coming out with LoRa radios and these microcontrollers. Here’s my advice on how to practically address the problem.
Noise is Unbounded
DC-DC creates noise. The harmonics of the principal switching frequency will extend into the RF frequencies used by your radios, and interfere with it. There are two strategies for dealing with this:
- Use a lower switching frequency, to reduce the noise of the upper harmonics.
- Use a higher switching frequency, and try to design your RF spectrum to fit in between the harmonics.
Sometimes option 2 is possible, but practically it is not something to design towards. DC-DC converters usually have fixed switching frequencies, and you’re stuck with the one your converter uses. Furthermore, the frequencies in modern, micropower DC-DC converters are usually in the range of 1-4MHz, limited you to a very narrow spectrum. Sometimes this is OK, particularly if you implement a frequency-hopping PHY that hops around the areas of interference. However, even there are problems with that approach, as it’s inadvisable to design a wireless standard around a particular DC-DC converter design. For standards like LoRa and SigFox, therefore, we are stuck with option 1.
Inductors and PCB Traces act as Antennas
All DC-DC converters include some combination of inductors and capacitors. There are also capacitor-only “charge-pump” topologies, but these tend to actually be noiser, because more high-frequency noise content propagates via the traces between the caps. It is imperative to use shielded inductors in your design, to use as short traces as possible, to avoid transconductance, and to use a properly grounded and shielded PCB design. In my experience, adding a shielded housing actually has little to no impact on reducing noise propagation, as in the sub 1 GHz bands, the noise is still radiating in the near-field by the time it reaches the device’s antenna.
Monolithic Testing Under Adverse Conditions
If your solar panel is under direct, strong sunlight, it will be maxed-out, generating the most power. More power means more noise. It is imperative to do full system testing of the RF elements under this condition. Many, many engineering projects are managed as independent tasks, tested individually, and then brought together at a later time. This will lead to failures for wireless sensor devices using energy harvesting. The testing must be monolithic, all together.
Realistic Expectations for Noise
In the last article I wrote (link is above), I mentioned that our noise floor was -116 dBm. This is actually incorrect, -116 dBm is the sensitivity limit for reliable reception on the SPIRIT1, using MSK and CC+RS DASH7 error correction coding, at the specified data rate (around 7kbps in this case). The noise floor is lower, in the -123 dBm range. Given the extraordinary amount of low-noise engineering we did on HayTag, I wouldn’t expect to beat -123 dBm by much. Here’s a diagram from Semtech, showing the SNR limits of LoRa (view entire document):
What it Means
Looking at the 7kbps area, we can see that LoRa’s laboratory demodulation SNR is somewhere in 6-7 dB range, about equal to what we achieve. However, the baseline sensitivity is -126 dBm. This presents a problem. The shannon-limit is -1.6 dBm, meaning that the theoretical best decoding & demodulation would allow -124.6 dBm reception of a signal in -123 dBm noise. However, we are shown here that LoRa performs in about 6.5 dB SNR or better — it’s quite consistent, too, below 10kbps.
Therefore, LoRa designs for energy harvesting should be targeted to operate with a -123 dBm noise floor, which in this graph would indicate about 12kbps. Now, here’s the kicker: most LoRa systems are operating below 1kbps. This effectively makes energy harvesting unsuitable for every LoRaWAN installation to date.
The story is even worse for SigFox, which uses an unencoded FSK/MSK modulation, and often operates in the 100bps range. Semtech is so kind to overlay unencoded FSK sensitivity in their graph, and we can see that it is pointless to use less than 13kbps, with SigFox, if there is an energy harvesting system enacting a 123dBm noise floor.
Wireless IoT devices that must utilize energy harvesting must be meticulously designed for low noise, and even then, the noise is considerable. The architecture of the wireless network must be considered. Ultra-low datarate LPWANs do not appear to be feasible network topologies for energy harvesting wireless nodes, although, based on known performance of HayTag, 3km outdoor range is still highly feasible. Network architectures should be optimized for 1-3km range rather than 10+ km range, if energy harvesting is a requirement for the IoT endpoint.