OTA Connect Developer Guide

Integrate OTA Connect

Once you’ve evaluated the basic functions of OTA Connect, you’re ready to integrate OTA Connect into your real-world workflows. This might include building your own OTA client based on libaktualizr, separating out different software repositories for different environments, and more.

You will also start thinking about production-ready security, making sure that your device provisioning and software signing processes reflect what you want to use in production. You also want to set up the software repository for your development account.

Here are our recommended steps for integration:

  • Set up different user accounts

    Avoid mixing up test software and production software by uploading software under different user accounts.

  • Integrate libaktualizr with the client software on your board

    When you move to production, you’ll probably want to integrate OTA functionality into your board’s native software rather than using the default stand-alone client.

  • Build and deploy your integration

    Once have a working version of your integration, you’ll want to build a disk image that contains it. You can then flash this image to other test devices.

  • Transfer disk images to a QA repository

    After you’ve build your images, you’ll want to hand them over to your QA team, who are ideally testing the software under a QA account with its own software repository.

  • Set up provisioning with device credentials

    Install device certificates yourself rather than having the OTA Connect server install them automatically. This also allows you to set your own device IDs.

  • Secure your software repository

    To secure your software updates, all files are accompanied by metadata that is signed with several private keys. You need to move the most important private keys from the server and take them offline.