#1 Energy constraints on IoT edge devices
Energy consumption can be one of the strongest constraints in an IoT project, if not the strongest. Having to save energy, for example, to preserve the device’s battery, can result in the following impacts:
- Reduction of packet size: using binary format, reducing the amount of data, etc.
- Periodic communication module shutdown: significant impact on energy consumption, but loss of cloud notification capability
- Choice of low-performance hardware, which necessarily implies a reduction in software capabilities
- Impact on the choice of the IoT communication protocol, with a preference for LPWAN
Energy constraints are primarily found in battery-operated devices. It’s worth noting that many devices operating with external power sources must be resilient to power outages and offer temporary autonomous operation in such cases. This is a scenario to anticipate, as it may require a degraded mode to avoid draining the battery before power is restored.
If we take the example of a company manufacturing connected access controls, at door levels, its access controls are mains powered. However, in the event of a power outage in the building, a battery takes over to keep the doors closed. To allow the battery to last longer, access controls will switch to a degraded mode, deactivating all configuration and synchronization options with the cloud. The only remaining functionalities are those directly related to opening doors for known users and via physical buttons inside secure areas to allow emergency exits.
Let’s take another example with a company producing sensors dedicated to farmers. The latter faces much stronger energy constraints. Its devices have no external power supply and must operate entirely autonomously. The engineering team may choose the battery solution as it is easy for farmers to replace and guarantees a battery life of at least 2 years before replacement. However, this greatly restricts the functionality. To provide more advanced features, this company may plan to add an additional battery to its devices, as well as a solar panel for continuous charging.
#2 Calculation and memory requirements
The second major concern when selecting a hardware for your IoT device is resource requirements. These requirements, along with those for energy consumption, are the most important in hardware selection. Performance constraints are intimately linked to energy consumption constraints.
Here are some examples of needs that impact performance:
- Operating system usage: running Linux on an embedded target requires more resources than a single-process firmware. However, this opens the door to more features, languages, frameworks, etc.
- Screen usage: screen resolution, refresh rate, interface finesse, and displayed animations are factors that will increase performance requirements.
- Edge computing: offloading business logic, particularly local processing of data acquired by sensors, will require more CPU and memory than sending data to the cloud for processing. However, it ensures optimal responsiveness and improves resilience to network outages.
- Frequency, volume, and performance of exchanges between the device and the cloud: this can range from telemetry reporting per hour to remote device control with video feedback. This metric is crucial in an IoT project because, in addition to impacting hardware and communication channel choices, it also affects the scalability of the backend solution.
- Hard real-time needs: a system managing critical operations may require the use of hard real-time and lead to the use of a real-time operating system like FreeRTOS on a microcontroller.
For instance, manufacturers of construction machinery embed screens displaying information for operators on their vehicles. It includes numerous indicators, and certain parameters can be adjusted. Dashboards update in real-time, incorporating GPS functionality. Therefore, the company had to opt for a system based on high-performance MPUs to ensure smooth display. Since the system is connected to the engine of the machine, it does not need to manage energy constraints and can fully utilize its hardware. This allows for running Linux on the machines without imposing language and framework constraints.
On the other hand, manufacturers of farming sensors do not need any display. The devices only have two functions: reading sensor data and sending it to the cloud. Their low performance needs, combined with their strong energy constraints, will push them towards a small MCU.
#3 Security and provisioning
Security and provisioning are two important aspects that can impact IoT hardware selection. Provisioning involves providing the device with the personalized information it needs to connect to the cloud.
This is particularly true through the use of hardware components such as secure elements, TPM, etc. This will have an impact on production costs, manufacturing processes, and energy consumption. Cryptographic calculations can be CPU-intensive.
In conclusion, energy consumption, calculation and memory, security and provisioning are the three major concerns regarding IoT hardware selection for new embedded projects. Make sure you take some time to consider them all during your design phase.




