Skip to content

advancedtelematic/meta-updater

Repository files navigation

meta-updater

Meta-updater is a Yocto layer that enables over-the-air updates (OTA) with OSTree and Aktualizr — the default client for HERE OTA Connect.

OSTree is a tool for atomic full file system upgrades with rollback capability. OSTree has several advantages over traditional dual-bank systems, but the most important one is that it minimizes network bandwidth and data storage footprint by sharing files with the same contents across file system deployments.

Aktualizr implements Uptane, supports device authentication and provisioning, and is integrated with OSTree. You can connect aktualizr to your own server solution or sign up for a free account at HERE OTA Connect to get started.

Quickstart

If you don’t already have a Yocto project that you want to add OTA to, you can use the HERE OTA Connect Quickstart project to rapidly get up and running on a Raspberry Pi or with QEMU. It takes a standard poky distribution, and adds OTA and OSTree capabilities.

Dependencies

In addition to the standard Yocto dependencies, meta-updater generally requires a few additional dependencies, depending on your use case and target platform. To install these additional packages on Debian/Ubuntu, run this:

sudo apt install cpu-checker default-jre parted

To build for Minnowboard with GRUB, you will also need to install TianoCore’s ovmf package on your host system. On Debian/Ubuntu, you can do so with this command:

sudo apt install ovmf

Table of Contents

The following documentation focuses on tasks that involve the meta-updater layer. If you want to get an idea of the overall developer workflow in OTA Connect, see the OTA Connect Developer Guide.

License

This code is licensed under the MIT license, a copy of which can be found in this repository. All code is copyright HERE Europe B.V., 2016-2020.

We require that contributors accept the terms of Linux Foundation’s Developer Certificate of Origin. Please see the contribution instructions of aktualizr for more information.