There are many elements that come into play when building an end-to-end application as an IoT developer. The IoT chain consists of hardware, embedded firmware, wireless communication, cloud integrations, and security just to name a few. Unfortunately, the quality of an IoT application is as good as its weakest link. When bringing an IoT solution to the market, you need to understand the full IoT chain.
Find out about the 5 cellular IoT lessons I wish I knew when I embarked on my IoT journey.
Networks may “purge” inactive devices
Recent developments in cellular IoT allow devices to enter (deep) sleep mode while keeping the session with the network alive. When devices want to transmit data, they simply wake up and send the data package without having to go through a cumbersome reconnection process. These modes of operation are referred to as PSM (Power Save Mode) and eDRX (extended Discontinued Reception).
Mobile network operators can be rough. While the device may think it is keeping its session alive, networks may think otherwise and can kick the device from their network when detecting little to no activity. This is what we call “purging” and is used to free up resources in cell towers. Purging could happen after several weeks of inactivity, but it may already occur within one day.
When writing your device firmware, consider that devices can get purged. When this happens, a reconnection process needs to get initiated to establish a new session with a mobile operator.
Operators don’t like it if you connect and disconnect too often
AT&T allows cellular IoT devices to reconnect 6 times per hour. When reconnecting more frequently, chances are that your mobile operator won’t allow your device to connect to their network.
When conducting tests that require frequent reconnections, you can either change network providers to enable more reconnection or simply be patient. Take a break, when you finish your coffee the operator might allow you to connect to their network again.
Are you working on a production device that needs to send data more than 6 times per hour? Don’t close the connection with the cell between transmission, instead, keep the connection with the cell tower alive. You can look into the low power modes eDRX or PSM to reduce the energy drain.
Sending data consumes a lot of energy, no matter the technology used
The new cellular technologies NB-IoT and LTE-M came into existence to better address the needs for battery-powered IoT devices. However, no matter the radio technology used, transmitting and receiving data consumes a lot of power. The key lesson is very simple: reduce the number of transmissions and put your device to (deep) sleep for as long as possible. The LTE-M modems from Quectel, Nordic, and u-blox consume between 100 and 360mA when sending or receiving data. When sending data every few minutes, the battery won’t last months on a single charge, even when implementing all of the advanced low-power features.
When building an IoT application, keep it simple and only send data when you really have to. After your transmission, put your device to sleep mode or turn your device off altogether.
Find an easy to use cloud platform to save lots of headaches
IoT is not about monitoring data, it’s about automating actions based on data. When starting with cellular IoT, make sure to close the loop as quickly as possible by realizing an actuation based on the data you send. It’s easy to get lost in powerful platforms like AWS IoT Core or Azure IoT Hub. Consider a developer-friendly IoT platform that allows for quick visualizations and rules to initiate triggers (e.g. initiating a webhook, sending an automated email, or returning a message to the device with instructions). Some of my personal favorites are Datacake, Akenza, Ubidots, Qubitro, and AV Systems.
Don’t try to solve everything by yourself!
There’s a whole community out there, willing to support you and ease your struggles. There are many IoT communities and discussion forums focusing on specific technologies. At Monogoto, we recently launched a Community Forum for developers interested in cellular IoT to meet, learn and share experiences.
We invite you to join the Monogoto Forum and share the key lessons you wish you knew when starting your IoT journey.