Skip to content

turbo: nRF52 boards loader enable native .mpy default - #11360

Open
mikeysklar wants to merge 1 commit into
adafruit:mainfrom
mikeysklar:load-native-nrf52
Open

turbo: nRF52 boards loader enable native .mpy default#11360
mikeysklar wants to merge 1 commit into
adafruit:mainfrom
mikeysklar:load-native-nrf52

Conversation

@mikeysklar

Copy link
Copy Markdown
Collaborator

What

Enables the turbo loader (CIRCUITPY_LOAD_NATIVE) by default on nRF52.

38 of 54 boards fit. The other 16 opt out in mpconfigboard.mk. All 16 keep CIRCUITPY on internal flash.

Follow-up to #11332 (RP2), #11355 (STM32F4) and #11356 (SAMx5x).

Hardware tested

Feather nRF52840 Express

10.3.0-66-g55984e753c, which includes this commit.

Board vsum bytecode vsum viper .mpy pixels viper .mpy pixels @native .mpy
Feather nRF52840 Express 352.1 ms 18.5 ms 841 ms 7,268 ms

How I tested it

All 54 nRF52 boards built in their tightest CI language with GCC 15.2.1.

Hardware used vsum.py from #11332 plus pixels.py.

Tightest boards with the loader Language Flash free with the loader
pca10100 ru 148 B
ikigaisense_vita ja 2,488 B
warmbit_bluepixel ja 2,520 B
sparkfun_nrf52840_mini ja 3,112 B
simmel ru 17,932 B
other 33 boards 27 to 246 KB
Opt-outs Language Over by with the loader
bluemicro833 ru 24 B
raytac_mdbt50q-rx ja 624 B
ADM_B_NRF52840_1 ja 896 B
electronut_labs_papyr ja 976 B
ssci_isp1807_dev_board ja 992 B
pca10059 ja 1,080 B
ssci_isp1807_micro_board ja 1,120 B
raytac_mdbt50q-db-40 ja 1,328 B
teknikio_bluebird ja 1,344 B
makerdiary_nrf52840_mdk_usb_dongle ja 1,368 B
nice_nano ja 1,568 B
pillbug ja 1,584 B
supermini_nrf52840 ja 1,616 B
bless_dev_board_multi_sensor ja 1,680 B
electronut_labs_blip ja 1,744 B
bluemicro840 ja 1,856 B

Scope

Xtensa and nRF54 (zephyr-cp) loader support will be separate PRs.

AI assistance

Claude Code was used.

Turn on CIRCUITPY_LOAD_NATIVE for the nordic port. It fits on every
nRF52 board except these sixteen, which opt out in their own
mpconfigboard.mk:

  ADM_B_NRF52840_1, bless_dev_board_multi_sensor, bluemicro833,
  bluemicro840, electronut_labs_blip, electronut_labs_papyr,
  makerdiary_nrf52840_mdk_usb_dongle, nice_nano, pca10059, pillbug,
  raytac_mdbt50q-db-40, raytac_mdbt50q-rx, ssci_isp1807_dev_board,
  ssci_isp1807_micro_board, supermini_nrf52840, teknikio_bluebird

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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