Skip to content

Conversation

dpgeorge
Copy link
Member

Summary

On RP2350, enable PIO jmp pins as input if they haven't already been configured. This allows them to work as input pins to the PIO. Otherwise the pin remains in isolation mode from reset and doesn't work as expected, in particular code that works on RP2040 does not work on RP2350.

Resolves issue #17047.

Testing

Tested with the code in #17047. Without the fix here the test fails (as described there). With the fix, it passes.

Trade-offs and Alternatives

The alternative would be to just document this. But I think a little bit of code to help things work "out of the box" makes it easier for users.

@dpgeorge dpgeorge changed the title Rp2 pio jmp pin init as input rp2: on RP2350 configure jmp pins as input if they are in isolation mode Jul 29, 2025
@dpgeorge dpgeorge added this to the release-1.26.0 milestone Jul 29, 2025
Copy link

Code size report:

   bare-arm:    +0 +0.000% 
minimal x86:    +0 +0.000% 
   unix x64:    +0 +0.000% standard
      stm32:    +0 +0.000% PYBV10
     mimxrt:    +0 +0.000% TEENSY40
        rp2:    +0 +0.000% RPI_PICO_W
       samd:    +0 +0.000% ADAFRUIT_ITSYBITSY_M4_EXPRESS
  qemu rv32:    +0 +0.000% VIRT_RV32

@projectgus projectgus linked an issue Aug 1, 2025 that may be closed by this pull request
Signed-off-by: Damien George <damien@micropython.org>
Signed-off-by: Damien George <damien@micropython.org>
@dpgeorge dpgeorge force-pushed the rp2-pio-jmp-pin-init-as-input branch from 4882312 to a9a606b Compare August 1, 2025 05:11
@dpgeorge dpgeorge merged commit a9a606b into micropython:master Aug 1, 2025
9 checks passed
@dpgeorge dpgeorge deleted the rp2-pio-jmp-pin-init-as-input branch August 1, 2025 05:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

RP2350: PIO scripts fail, despite running on RP2040
2 participants