Build
Prerequisites
- nRF Connect SDK v3.0.1 (
sdk-nrftagv3.0.1, Zephyrv4.0.99-ncs1-1) westtoolchain initialised in the workspace root
Basic build
west build -p always -b nrf52840dk/nrf52840 -d build_vscode .
With explicit DTC overlay (required for hardware bring-up on the dev kit):
west build -p always -b nrf52840dk/nrf52840 -d build_vscode . \
-- -DDTC_OVERLAY_FILE=boards/nrf52840dk_nrf52840.overlay
Device type
The firmware variant is selected at build time via EXTRA_CONF_FILE.
Default is MC. Pre-made conf files live in the repo root.
| Type | Conf file | Description |
|---|---|---|
| MC | mc.conf |
Motor controller |
| AED | aed.conf |
AED |
| Sense | sense.conf |
Air quality sensor unit |
| SEN55 only | sen55_only.conf |
Sensor unit, SEN55 only |
| Dev kit | nrf_dev_kit.conf |
Bare nRF52840 DK, no sensors |
# AED
west build -p always -b nrf52840dk/nrf52840 -d build_vscode . \
-- -DEXTRA_CONF_FILE=aed.conf
# Sense
west build -p always -b nrf52840dk/nrf52840 -d build_vscode . \
-- -DEXTRA_CONF_FILE=sense.conf
The device type controls which sensors are initialised, which BLE device name
is advertised (Vibrant-MC-XXXX, Vibrant-AED-XXXX, etc.), and which control
services (pressure, fan, dampers) are active.
Flashing
Flash from the sysbuild root (works regardless of project directory name):
west flash -d build_vscode --runner nrfjprog
Or directly with nrfjprog using the merged image:
nrfjprog -f nrf52 --program build_vscode/merged.hex --sectorerase
nrfjprog -f nrf52 --reset