Over-the-Air Updates using BLE and Wi-Fi

 

Requirement

Implement OTA updates over Wi-Fi and BLE for two microcontroller units.

Solution

A single system was developed on top of two microcontrollers. A core unit without cloud connectivity and the bridge module with Wi-Fi and BLE capability. Both devices need to have Over-the-Air updates with rollback functionality. OTA updates need to be implemented using Wi-Fi and BLE. The choice may depend upon use case scenarios. The core unit will be updated with the help of the bridge device.

Wi-Fi-based OTA:

The Bridge module can be directly updated from the cloud if it’s connected to Wi-Fi. The firmware will be pushed to it and will update the latest firmware in real-time. If there is an update to the core unit, it will be first pushed to the bridge module and will be saved inside the flash memory. The bridge module will notify the core unit which will then initiate an update process depending upon the core unit’s availability. The firmware will be passed to the core unit through Y-modem Protocol.

BLE based OTA:

Once the device is in BLE mode, the user can access the device using the mobile app. If there is an update to the module available in the app, then the user can upload it to the device via BLE. In this case, Both the device’s firmware will be saved in the flash memory. The bridge module can initiate the update once the data transfer is completed. For the core unit, the bridge module will notify the core unit, which will then initiate an update process depending upon the core unit’s availability. The firmware will be passed to the core unit through Y-modem Protocol.