Skip to content

v0.1.0a3 (alpha 3)

Pre-release
Pre-release

Choose a tag to compare

@begeistert begeistert released this 31 Jul 23:39
a77b2f6

pymcu-arm v0.1.0a3 — companion release to PyMCU v0.1.0a3 (third alpha). The ARM targets (RP2040 / RP2350) reach feature parity with AVR.

RP2350 (Pico 2 / Pico 2 W)

  • Full target bring-up: crt0_m33, picobin image block, linker script, RTOS-enabling codegen.
  • f32 via the M33 FPU (softfp) — native hardware floats.
  • CYW43439 WiFi bring-up + MQTT examples and integration tests.

RP2040 (Pico / Pico W)

  • f32 via the bootrom fast-float library — floats without an FPU.
  • Integer division through the SIO hardware divider, now IRQ-safe (PRIMASK guard).
  • ArrayStore/ArrayLoad/ArrayBase + bytearray lowering; function-local and imported-module fixed arrays.

Both targets

  • Portable T-flag exception modeltry/except/raise now works on ARM (SignalError/SignalSuccess/BranchOnError).
  • Flash-resident const tables (FlashData/ArrayLoadFlash/FlashLoadPtr/FlashStrAddr).
  • Inline asm() with operands (textual constraints =r/0).
  • End-to-end examples for the a3 language features: generators, async v2 (gather, return values), f-strings as values, dict/set literals, FixedDict, inferred def types, slice assignment, print(float).

60/60 integration tests green on the RP2040Sharp / RP2350Sharp emulators.

Install: pip install --pre "pymcu-compiler[arm]"