FREE X427 board for the first 50 college students · first 50offer ends 31 Dec

Reading view

Documentation

Build tool

nav

nav is a command-line build tool for NavHAL-based Cortex-M firmware. It scaffolds a project, pulls NavHAL and libraries from git (there is no package registry), cross-compiles with arm-none-eabi-gcc, flashes the board and opens a serial monitor. A project is one of two types: an app (an executable) or a library (a static archive).

Who it is for
Firmware developers.
Version
1.3.1 (tag v1.3.1)
Release assets
Linux .deb and Windows exe or zip, on GitHub Releases
This book
6 of 10 chapters written
Start reading Chapter 1: What nav is

Chapters

  1. 01What nav isnav is a command-line tool for NavHAL-based Cortex-M firmware projects.
  2. 02Design goalsThis chapter describes what nav is built to do, using only what the repository states.
  3. 03Install and first projectThis chapter covers getting nav onto a machine, checking that the machine can build firmware, creating a project, and running the first build.
  4. 04Architecturenav is a C++ program built from three parts: a thin entry point in src/cli/main.cpp, a static library of core modules (nav_core, sources under src/core/), and two JSON registry files in data/ that are baked into the...
  5. 05The project file, nav.tomlEvery nav project is a directory with a nav.toml at its root.
  6. 06Configuration with KconfigA nav firmware project is configured by a single file in the project root, .config.
  7. 07Chapter 7Coming soon
  8. 08Chapter 8Coming soon
  9. 09Chapter 9Coming soon
  10. 10Chapter 10Coming soon

Written from the ragnar-vallhala/nav repository. Each chapter ends with the sources it was checked against.