Over-the-air (OTA) Update: our services for IoT devices

Enable a seamless over-the-air (OTA) update service on your product to make your software update process efficient, minimizing service interruptions and maximizing end-user satisfaction.

What is an OTA update?

Applicable to various connected devices, OTA updates allow for remote software updates of embedded devices without necessitating a physical connection. By delivering update packages wirelessly via Wi-Fi, cellular, or Bluetooth, the target device receives enhancements, bug fixes, security patches and new features autonomously.

The main challenges of OTA updates

scalability blue

System robustness and update process

A failed software update can “brick” a device, leading to costly maintenance. Over-the-air (OTA) updates help maintain system functionality to preserve, user trust. Devices must handle the software updates process without compromising operation, including managing power interruptions and providing rollback mechanisms if an update fails.
medical device blue

Deployment on the field and connectivity

Deploying air updates in remote or hard-to-reach areas with inconsistent network connectivity poses logistical challenges. Implementing differential software updates (delta updates) and resuming interrupted downloads reduces the size of the update packages and ensures reliable update delivery despite network constraints.
secure development blue

Security and cyber threats

Security is critical to protect devices against unauthorized access and cyber threats. During the over-the-air transmission, security patches must be encrypted. Robust measures such as secure boot, encryption, and authentication mechanisms verify the integrity and authenticity of the software updates, safeguarding device and user data.

Key elements to consider when managing & deploying OTA updates for your device

OTA update

Communication method and connectivity

Selecting the appropriate communication and the right technology (e.g., 4G, 5G, LTE-M, NB-IoT, or Wi-Fi) depends on data transfer speed, cost, and energy consumption. Secure communication channels (e.g., secure HTTPS channels) must be employed to encrypt data exchanges.

Device firmware build & testing

Constructing, versioning, and signing the firmware ensures its authenticity. Comprehensive testing guarantees compatibility with existing functionalities and environmental interoperability, ensuring no software updates break legacy features.

Deployment strategy lifecycle

Utilizing secure servers for firmware deployment and implementing robust mechanisms for handling download interruptions and verifying firmware integrity are essential for successful over-the-air (OTA) updates. A staged rollout strategy—testing the update on a small fleet before global deployment—is a best practice in iot network management.

SUCCESS STORY

Implement a complete OTA update system for Adeunis smart building application

Our engineers proposed, developed, and integrated a complete, reliable firmware update system for Adeunis STM32 sensors. Since these sensors use non-replaceable batteries, the over-the-air (OTA) update solution had to meet strict power management requirements. The Witekio engineering team investigated different update strategies for the devices and tested them against Adeunis’ constraints before making the final choice. Key highlights of the project included:
  • Among the advanced strategies compared by the team were a mesh network viral update strategy and a multi-hop strategy that allows maintenance technicians to check update deployments live.
  • Developing the overall energy saving firmware update system was a major success in this project.
  • Radio frequency signals were used to allow the update of all the sensors and the firmware update system was developed with the real-time operating system (RTOS), FreeRTOS.
This project demonstrated that even with significant hardware constraints, a well-designed OTA update process can extend device longevity and improve serviceability.

The benefits of OTA updates

Over the air updates facilitate real-time delivery of security patches, safeguarding sensitive user data against cyberattacks and ensuring continuous data protection.
OTA updates ensure that your product remains compliant with rapidly changing technological standards and regulations, allowing for quick adaptation to new protocols and market demands.
OTA updates enable the introduction of new functionalities, personalization options for users, user interface improvements, performance optimizations and allows to fix software bugs, resulting in a consistently satisfying user experience and increased user trust.
Addressing issues early through OTA updates helps prevent major problems, saving on support and maintenance costs and avoiding large-scale product recalls.

How Witekio can help with OTA updates

Witekio offers comprehensive over-the-air update integration services, ensuring your devices remain secure, robust, and future-proof. With over 20 years of expertise in the market of embedded systems and IoT product development, Witekio excels at creating seamless OTA update solutions tailored to your specific hardware and software needs for devices.Our “secure by design” approach ensures that your IoT devices receive and support OTA updates with top-notch protection against potential threats and data breaches. We prioritize minimizing downtime and scaling our solutions to accommodate your growing device ecosystem. Whether you need integration with Mender, SWUpdate, The Embedded Kit or any other framework, Witekio tool-agnostic methodology ensures efficient and reliable OTA updatesenhancing end-user satisfaction and device longevity.

FAQ

Choose the appropriate wireless technology for your device, considering data transfer speed, cost, and energy consumption. To implement a secure OTA process, you must follow several steps:
  • Selection of communication method: Choose the best wireless technology (Wi-Fi, Cellular) based on the update packages size and power constraints.
  • Firmware build and signing: Construct and sign the new firmware updates to authenticate it and ensure it remains unaltered during transmission. The device verifies the firmware’s authenticity from the build server.
  • Comprehensive testing: Test the firmware comprehensively to ensure functionality, compatibility, and interoperability within the product’s environment. Validate the system image in a staging environment to ensure compatibility.
  • Secure binary deployment: Deploy the firmware on a secure server. Platforms such as AWS, Azure, Mender and Hawkbit facilitate this process, ensuring secure communication and update delivery.
  • Download and verification: Ensure secure download of the firmware using dual authentication and secure protocols. Use hashing (SHA-256) to ensure the software wasn’t corrupted during the air updates process.
  • Installation and fallback: If an update fails, the system must trigger a rollback to the last stable version to avoid system failure.
  • Post-installation validation: Validate the firmware’s functionality post-installation, ensuring it operates correctly. If invalid, revert to a previous or recovery version unless it poses a security risk.
Several tools specialize in the update process for embedded software:
  • SWUpdate: A flexible and extensible software update tool designed for embedded systems. It supports various update methods and can handle complex update scenarios, ensuring reliable and secure firmware deployment.
  • RAUC (Robust Auto-Update Controller): A highly reliable update mechanism for embedded IoT devices. It emphasizes robustness and security, providing features like atomic updates and rollback capabilities to maintain device integrity.
  • Mender: An end-to-end OTA update manager for connected devices. It focuses on providing robust security features and efficient update processes for systems, including delta updates and state scripts for customization.
  • The Embedded Kit: A comprehensive suite of tools including a platform for managing OTA updates in embedded systems.
  • FreeRTOS: A real-time operating system with integrated update capabilities. It ensures minimal downtime and secure updates, making it ideal for IoT applications requiring reliable and timely software updates.
  • Strategic update planning: Establish a long-term update strategy, scheduling regular over the air updates to keep your product responsive to user needs and technological advancements.
  • Error and failure management: Implement mechanisms for handling software update errors and provide recovery solutions. Ensure clear, understandable error messages for users.
  • Rigorous testing and validation: Perform exhaustive testing before deploying OTA updates with tools. Validate the product’s functionality post-update to ensure stability and compatibility.
  • Performance monitoring: Monitor product performance post-update and gather user feedback to address issues promptly.
  • Resource management: Optimize device performance while managing energy consumption. Offer deferred firmware update options to suit users’ network or battery constraints.
  • Enhanced security: Regularly update security protocols and offer encrypted OTA updates to protect data confidentiality. Strengthen security measures to safeguard user data.
  • Platform upgrades (multi MCU/MPU): Implement strategies for managing updates across devices with multiple microcontroller units (MCUs) or microprocessing units (MPUs) to ensure consistent and reliable performance.
  • Robustness and rollback interest: Design OTA update processes to handle unexpected issues gracefully. Enable rollback options to previous stable versions to maintain system robustness and user trust in case of update failures.
  • Instead of sending a full system image, differential updates send only the binary changes (the “delta”) between the old and new versions. This significantly reduces the size of update packages, which saves bandwidth, reduces energy consumption, and speeds up the update process for devices with limited connectivity.
    A rollback is a safety feature that restores a device to its previous working state if a new software update fails to install or boot correctly. Without this, a faulty update could permanently disable (brick) the device. In the embedded systems world, this is usually achieved through dual-bank partitioning.

    Our Embedded software expertise

    Buildroot

    osmigration

    Android

    SecureBoot

    Witekio The Embedded Kit teams

    Your trusted embedded software, application and connectivity partner

    flag_line

    4 Countries

    4 countries

    iso_27001_02-1024x704

    ISO 27001 certified

    ISO 27001 certified

    Avnet_logo

    Fortune 500 owned

    Fortune 500 owned