chore(uavcan): remove FW flashing database (#27930)

* feat(uavcan): remove FW.db generation

* docs(dronecan): remove FW.db section, update remote update workflow
This commit is contained in:
Alexander Lerach
2026-07-16 17:21:43 +02:00
committed by GitHub
parent ee7134681d
commit da60889b3c
3 changed files with 1 additions and 138 deletions

View File

@@ -328,31 +328,12 @@ On boot, PX4 scans both locations, reads the board ID from the _APDescriptor_ of
The source file is then deleted.
Any connected node whose running version does not match is then flashed over the CAN bus.
### Firmware Database
A flat-file database at `/fs/microsd/ufw/FW.db` maps each board ID to the original firmware filename that was installed.
This may be queried by external tools to determine current firmware versions.
Example entry:
```txt
122.bin=122-1.17.63eeff1a.uavcan.bin
```
Entries are removed on boot if their corresponding firmware is not present.
### Remote Update
Remote updates can be made by uploading the corresponding bin files to `/fs/microsd/ufw_staging/`.
PX4 will then update firmware on next boot.
This approach enables efficient mass-update of binaries from archives (`.zip` or `.tar` that contains `.bin` files for the target CAN nodes).
Tools can:
1. Read the PX4 firmware database to determine what firmware is present
2. Extract the more-recent versions of matching firmware to the staging directory
PX4 does not provide such tools.
::: info
Auterion uses a form of this workflow to update CAN firmware to SkyNode based devices.
@@ -366,7 +347,7 @@ The `upload_skynode.sh` script with multiple `--ext-fw` flags is used to bundle
--ext-fw=build/auterion_canio_default/some_other_default.uavcan.bin
```
Another tool then checks the firmware database and extracts just the relevant files to the PX4 firmware staging area.
Another tool then checks which files were already uploaded using a local database and extracts just the relevant files to the PX4 firmware staging area.
:::
## Troubleshooting