Skip to content

Top-level Yocto repository for building the Atlas platform host OS.

License

Notifications You must be signed in to change notification settings

PointOneNav/atlas-platform

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Atlas Yocto Repository

This repository contains everything needed to build the host operating system for a Point One Atlas hardware platform. See https://github.com/PointOneNav/nautilus/tree/develop/point_one/platform/atlas for details.

It is a fork of the balena-variscite-mx8 repository. Currently, the only customizations are:

  • Update the Variscite i.MX layer submodule to include support for the i.MX 8M Mini (the processor variant used by Atlas)
  • Added pre-defined Yocto configuration files in build/conf/

Cloning The Repository

This repository contains submodules for all of the Yocto meta-layers that must be initialized.

To clone the repository, including all submodules, do the following:

git clone [email protected]:PointOneNav/atlas-platform.git --recursive

Alternatively, you can initialize submodules explicitly:

git clone [email protected]:PointOneNav/atlas-platform.git
cd atlas-platform
git submodule update --init --recursive

Prerequisites

Yocto has the following minimum requirements (see https://www.yoctoproject.org/docs/1.8/yocto-project-qs/yocto-project-qs.html#the-linux-distro):

  • Linux (Ubuntu, Debian, and others)
  • 50 GB disk space (100 GB recommended)
  • Git 1.7.8 or greater
  • tar 1.24 or greater
  • Python 2.7.4 or greater (Python 3.x not supported)

Before starting the Yocto build, you must install the following requirements:

Building

Normally, you need to create Yocto build settings and layer configuration files (local.conf and bblayers.conf) before starting a build. These have been created already and are checked into this repository in build/conf/.

Before running any Yocto builds, you must first source the environment setup script:

source layers/poky/oe-init-build-env build

Now you can build the Atlas host OS target as follows:

bitbake resin-image-flasher

This will generate the file build/tmp/deploy/images/imx8mm-var-dart/resin-image-flasher-imx8mm-var-dart.resinos-img, which contains the a flasher image. The flasher image can be loaded onto an SD card and inserted into an Atlas device. On boot, the image will automatically copy the host operating system to the onboard eMMC flash memory (see Loading A Device).

If needed, you can generate the Yocto SDK, which contains the cross-compilation tools and supporting files, by running the following:

bitbake resin-image-flasher -c populate_sdk

This will generate the file build/tmp/deploy/sdk/balena-os-glibc-x86_64-resin-image-flasher-aarch64-toolchain-2.5.2.sh.

Loading A Device

Atlas devices are designed to boot off of onboard eMMC flash memory. The resin-flasher-image target generates an image designed to be loaded onto an SD card. When booted, the flasher then automatically loads the host operating system itself into the eMMC.

To load a device:

  1. Build the flasher image (see Building).
  2. Insert an SD card into your computer and load the image onto it using one of the following options:
    • Use the Balena Etcher utility
    • Load the image using the Balena CLI
      balena local flash build/tmp/deploy/images/imx8mm-var-dart/resin-image-flasher-imx8mm-var-dart.resinos-img --drive /dev/disk -y
      
      where /dev/disk is the device node of the SD card (e.g., /dev/mmcblk1)
    • Load the image manually using dd:
      sudo dd if=build/tmp/deploy/images/imx8mm-var-dart/resin-image-flasher-imx8mm-var-dart.resinos-img of=/dev/mmcblk1
      
  3. Power down the device.
  4. Switch the Boot Select jumper to SD CARD.
  5. Insert the SD card and power up the device.
  6. Wait until all of the LEDs turn off, indicating the eMMC update is complete.
  7. Power down the device.
  8. Switch the Boot Select jumper to eMMC and remove the SD card.
  9. Power up the device.

About

Top-level Yocto repository for building the Atlas platform host OS.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 43.4%
  • CoffeeScript 29.7%
  • BitBake 16.6%
  • PHP 10.3%