Qorix Developer — Bootloader Configuration Feature Collaboration workspace between the Qorix Developer team and the Bootloader team for designing and implementing the BPCT (Bootloader Parameters Configurator Tool) feature inside Qorix Developer.
The qd-bootloader repo is the single working space for everything related to bringing bootloader configuration into Qorix Developer. The goal is to replace the current workflow — where bootloader parameters are hardcoded as #define values scattered across static .c/.h files — with a structured, YAML-driven visual designer experience fully integrated into the Qorix IDE.
When complete, the BPCT feature will allow engineers to configure all 18 bootloader modules through a set of six purpose-built visual designers, validate constraints in real time, and generate the three build artifacts consumed by BBT (Bootloader Build Tool): .mak, cfg.h, and cfg.c.
User configures in Qorix Designer
│
▼
bl-*.yaml (YAML — single source of truth)
│
▼
BPCT Generator (Rust Domain Service)
│
┌─────┼─────┐
.mak cfg.h cfg.c
│
▼
BBT (Bootloader Build Tool)
│
▼
.S-record binary → CT → ET → DDT → ECU Flash
qd-bootloader/
│
├── 01-template/
│ └── BPCT_Parameter_Catalogue_v1.xlsx # Phase 1 working document
│
├── 10-workingGroup/
│ └── Flash_Bootloader_Collaboration_Workflow.md # 6-phase collaboration framework
│
├── 20-designers/
│ └── BPCT_Bootloader_Configuration_Designers.md # Designer specifications (BD1–BD6)
│
├── 30-mock-ups/
│ └── BPCT_Designers_Mockup.html # Interactive HTML mockup (open in browser)
│
└── README.md
| File | Description |
|---|---|
BPCT_Parameter_Catalogue_v1.xlsx |
Parameter catalogue spreadsheet for Phase 1 discovery workshops. Contains 6 sheets: Instructions, Module Registry (all 18 BPCT modules), Parameter Catalogue (55 pre-filled sample parameters), Module Relationships matrix, Validation Rules registry, and Summary Dashboard. Config ID: PC01_BL_PRODUCT_TOOLREQ. |
| File | Description |
|---|---|
Flash_Bootloader_Collaboration_Workflow.md |
Formal six-phase collaboration framework between the Qorix Developer team and the Bootloader team. Covers: Phase 1 parameter discovery, Phase 2 methodology document, Phase 3 schema design, Phase 4 code generation contract, Phase 5 validation rules, Phase 6 CI integration. |
| File | Description |
|---|---|
BPCT_Bootloader_Configuration_Designers.md |
Full specification for all six BPCT visual designers (BD1–BD6). Each section covers: backing YAML file, BPCT modules, output files, key parameters with binding times, cross-designer constraints, and validation rules. Includes relationship map and phased implementation recommendation. |
| File | Description |
|---|---|
BPCT_Designers_Mockup.html |
Self-contained interactive mockup of all six designers in Qorix IDE style. Open directly in any browser — no server required. Includes clickable MCU selector, flash memory map, UDS state machine, timing chain diagram, and security chain view. |
| ID | Designer | Backing YAML | BPCT Modules | Outputs |
|---|---|---|---|---|
| BD1 | Project & MCU | bl-project.yaml |
GEN, MCU | .mak, cfg.h |
| BD2 | Communication | bl-communication.yaml |
COMM | .mak, cfg.h |
| BD3 | Memory & Flash | bl-memory.yaml |
MEM, DECOMP | .mak, cfg.h, cfg.c |
| BD4 | Core & Diagnostics | bl-core.yaml |
BL, BOOTMGR, DIAG, SCHED, CRC, OEM | cfg.h, cfg.c |
| BD5 | Timing & HW Peripherals | bl-hardware.yaml |
TIMER, WDG, PORT, SPI | cfg.h |
| BD6 | Crypto & Security | bl-security.yaml |
CRYFLASH, CRYBOOT, CRYENC | .mak, cfg.h, cfg.c |
See 20-designers/BPCT_Bootloader_Configuration_Designers.md for the full specification.
The 18 bootloader modules from the BPCT specification (v1.0.1, 28-May-2025) are fully covered across the six designers:
Core Bootloader — BootManager, Bootloader, Diagnostic, General/Common, Scheduler, CRC & Callbacks
Memory — Memory (PFlash/DFlash/NVM), Decompression
Cryptography — Crypto – Secure Flash, Crypto – Secure Boot, Crypto – Encryption
Communication — CAN, CAN-FD, LIN, Flexray, Ethernet
Hardware / MCAL — MCU, Timer, Port, SPI/QSPI, Watchdog
OEM — OEM Extensions & Callbacks
Open the interactive mockup in your browser — no installation required:
open 30-mock-ups/BPCT_Designers_Mockup.html
# or on Windows:
start 30-mock-ups/BPCT_Designers_Mockup.htmlSwitch between all six designers using the tab bar at the top. Each designer shows the canvas, properties panel, live YAML preview, and validation panel.
Open 01-template/BPCT_Parameter_Catalogue_v1.xlsx in Excel. Use this in Phase 1 discovery workshops with the Bootloader team to catalogue all configurable parameters across the 18 BPCT modules.
Key columns to fill: Parameter Name (exact #define), Source File + Line, Default Value, Valid Range, Binding Time (pre-compile / link-time / post-build), and Output File (.mak / cfg.h / cfg.c).
Read 10-workingGroup/Flash_Bootloader_Collaboration_Workflow.md before the first workshop with the Bootloader team. It defines role ownership, the data exchange format, and the CI pipeline contract for the full six-phase rollout.
The recommended MVP-first delivery order:
| Phase | Designers | Description |
|---|---|---|
| MVP | BD1 → BD2 → BD3 → BD4 | Non-secure bootloader — covers all parameters needed to compile a .S-record via BBT |
| Phase 2 | BD5 | Timing chain and hardware peripheral configuration |
| Phase 3 | BD6 | Security-enabled bootloader — crypto chain, Secure Boot, Encryption |
This repo is a joint workspace between the Qorix Developer team and the Bootloader team.
| Role | Responsibility |
|---|---|
| Bootloader Team | Parameter owners — define valid ranges, constraints, source file references |
| Qorix Team | Tool implementors — build designers, YAML schemas, code generators, validation rules |
Support contact: NOS_BOOTLOADER (see QORIX support system)
For questions about this repo, open an issue or contact the Qorix Developer team.
- BPCT Tooling Discussions:
v1.0.1— 28-May-2025 - Config ID:
PC01_BL_PRODUCT_TOOLREQ - Approved by: Ravishankar B M
- AUTOSAR Methodology reference: AUTOSAR FO RS Methodology R24-11