Skip to content

Feature/ci UI improvements#18

Merged
hlord2000 merged 8 commits intomainfrom
feature/ci-ui-improvements
Feb 6, 2026
Merged

Feature/ci UI improvements#18
hlord2000 merged 8 commits intomainfrom
feature/ci-ui-improvements

Conversation

@hlord2000
Copy link
Owner

No description provided.

hlord2000 and others added 8 commits February 6, 2026 08:02
…sive UI

Split monolithic 3849-line script.js into 14 ES modules in js/ directory.
Add serial console UART selector with warnings, fix FLPR/NS console UART
bugs (previously hardcoded uart30 or first-found). Add devkit config loading
with overlay export mode. Add responsive CSS breakpoints, toast notification
system, and accessibility focus-visible styles. Add GitHub Actions CI workflows
for formatting, schema validation, smoke tests, and Zephyr build verification.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Validated generated boards against Zephyr west build. Key fixes:
- Fix BT_CTLR -> HAS_BT_CTLR in Kconfig.defconfig for NS builds
- Add CPUFLPR SOC select to Kconfig.board for FLPR builds
- Fix DTS include paths: use vendor/nordic/ for _cpuapp_partition,
  nordic/ for nrf54l05 simple partition
- Handle nrf54lm20a _enga_ DTSI suffix via getMcuDtsiBaseName()
- Remove &uicr block from cpuapp_common (undefined in NS context)
- Remove reserved-memory section from NS DTS (defined by partition DTSI)
- Add uart30 pinctrl to test boards for FLPR console support
- Skip nrf54lv10a in CI (no Zephyr DTSI support yet)

Verified: nrf54l15, nrf54l10, nrf54l05 cpuapp targets build hello_world
successfully with Zephyr 4.3.99.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ignore .west/, zephyr/, and modules/ directories used for local
Zephyr build testing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Enable supportsNonSecure and supportsFLPR for nrf54lm20a in manifest
- Fix SOC Kconfig select to use _ENGA_ suffix (SOC_NRF54LM20A_ENGA_CPUAPP)
- Fix NS DTS for MCUs without _cpuapp_ns.dtsi (nrf54lm20a uses
  USE_NON_SECURE_ADDRESS_MAP define instead)
- Add bt_hci_controller disable in NS DTS for nrf54lm20a
- Always disable uart30 in NS builds (TF-M's UART)
- Fix NS defconfig: remove HW_STACK_PROTECTION, change
  SOC_NRF54LX_SKIP_CLOCK_CONFIG to NRF_SKIP_CLOCK_CONFIG,
  add USE_DT_CODE_PARTITION
- Add nrf54lm20a-specific cpuapp defconfig options (cache, GRTC, null
  pointer detection)
- Skip RC oscillator config for nrf54lm20a (not applicable)
- Add RISCV_ALWAYS_SWITCH_THROUGH_ECALL for nrf54lm20a FLPR defconfig
- Rework CI workflow: install Zephyr via west, add nrf54lm20a targets,
  mark FLPR as config-only due to upstream asm_macros.inc bug

Verified builds:
- nrf54l15/cpuapp:   PASS (full ELF)
- nrf54l10/cpuapp:   PASS (full ELF)
- nrf54l05/cpuapp:   PASS (full ELF)
- nrf54lm20a/cpuapp: PASS (full ELF)
- FLPR targets: config+DTS pass, compilation fails on upstream bug

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Generate 4 board configs per MCU (minimal, spi_i2c, pwm_adc, full) to
test SPI cs-gpios, I2C clock-frequency, PWM multi-channel pinctrl,
ADC/NFCT no-pinctrl, and LFXO oscillator devicetree generation.

- Replace buildUartState/buildUart30State with generic buildPeripheralState
- Add buildLfxoState and TEST_CONFIGS matrix
- Handle SAADC->ADC template key mapping and SPI CS out-of-band signals
- Add type-specific DT content (SPI cs-gpios, I2C clock-frequency)
- Dynamic supported list in board YAML based on enabled peripherals
- Skip CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC when LFXO is present
- Fix PWM signal name mismatch in nrf54l05/l10/lm20a templates
  (CHAN[0] vs OUT0)
- Expand CI build matrix: all 4 configs for nrf54l15, full for others

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The generated cpuapp common DTSI now includes a comment explaining
that in Pin Planner, users can choose which UART serves as the
serial console, or omit it entirely to use Segger RTT instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Explains that users can select which UART is used for the Zephyr
shell and serial console, or use Segger RTT if no UART is selected.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Previously, selecting a single UART would auto-assign it as the
serial console with no way to opt out. Now the console selector
always shows a dropdown with a "None (Segger RTT)" option when
any UART is selected, letting users choose RTT instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@netlify
Copy link

netlify bot commented Feb 6, 2026

Deploy Preview for pinplanner ready!

Name Link
🔨 Latest commit 9ec0bb6
🔍 Latest deploy log https://app.netlify.com/projects/pinplanner/deploys/698644d221026b0008b524f1
😎 Deploy Preview https://deploy-preview-18--pinplanner.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@hlord2000 hlord2000 merged commit 61e2fd6 into main Feb 6, 2026
4 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant