[feature] Add board_name field to Device model for DTB board identification
I maintainer di solito rispondono entro 1 giorno
@atif09 ci sta già lavorando.
Dal 18/9/2026.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
Is your feature request related to a problem? Please describe.
NOTE : This is a follow-up issue related to the GSoC 2026 project: Automatic Extraction of OpenWrt Firmware Image Metadata
The firmware upgrader module currently pairs firmware images to devices only via Device.model == FirmwareImage.board (exact match).
Multi-board OpenWrt images (one image supporting several hardware variants, distinguished only by DTB compatible strings) can't have a single board value, so they always require manual confirmation. Metadata extraction already populates each image's compatible list (openwisp-firmware-upgrader#437), but Device has no comparable field to match against.
Describe the solution you'd like
Add board_name field to the Device model to store the device's DTB board identifier (e.g. tplink,archer-c7-v2):
CharField, blank/nullable, indexed if firmware-upgrader will filter on it- Auto-populated from registration data, not user-editable (same treatment as
os/system) - Exposed in the REST API device serializer
- Migration included
This issue only adds the field. Populating it is a separate issue in openwisp-config
Describe alternatives you've considered
Keep pairing limited to board only, leaving multi-board images permanently dependent on manual confirmation. Works, but means a human has to intervene even when the device's hardware is unambiguous from its DTB identifier.
Additional context
Device.model is already populated the same way: read from the device during registration and stored automatically. board_name follows the identical mechanism, just carrying the DTB-format identifier instead of the human-readable one.
Depends on openwisp-config#282
Depends on openwisp-firmware-upgrader#493
- Lingua principale
- Python
- Stelle
- 778
- Fork
- 322
- Merge medio
- 2g 19h
- PR unite (30g)
- 7
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di openwisp/openwisp-controller
-
[fix] Recent Commands row uses "created" timestamp for the "Modified" fieldForse già presa @xovishnukosuri l’ha presa 214 giorni fa. Apertabug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
openwisp/openwisp-controller#1263 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
[feature] Emit a signal when a device operating system changesForse già presa @kimpasha23-beep l’ha presa 3 giorni fa. Apertaenhancement
Difficoltà 3/5 Mezza giornata Idoneità per principianti 65/100
openwisp/openwisp-controller#1506 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
[bug:gsoc26] Mass command wizards started in two browser tabs overwrite each otherForse già presa @dee077 l’ha presa 29 giorni fa. Apertabug
openwisp/openwisp-controller#1489 · 2 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 30/100
openwisp/openwisp-controller#1484 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[bug] Template.clean() corrections land one write late over the REST APIForse di nuovo libera @krrishnaik l’ha presa 40 giorni fa e non c’è nessuna pull request aperta. Apertabug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 52/100
openwisp/openwisp-controller#1478 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di openwisp/openwisp-controller
Issue simili
-
good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
btclib-org/btclib-node#1955 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation v0.9.2
Difficoltà 2/5 Mezza giornata Idoneità per principianti 72/100
khuisman/mcp-gee-sweet#1033 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
ossf/cve-bin-tool#5966 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 2 giorni
-
write_iceberg ignores the table's write.parquet.compression-codec propertyForse già presa @YuangGao l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Eventual-Inc/Daft#7606 ·
I maintainer di solito rispondono entro 1 giorno