rp2: (rp2350) adding definitions to pin.csv makes the board go faster/slower #17323
Unanswered
nspsck
asked this question in
RP2040 / Pico
Replies: 1 comment
-
I would see that as statistical variations and a topic for discussions. The data from pins.csv creates static table, not directly affecting executed code. It may shift items in flash, having eventually impact on caching, but that's it. I do not know whether calling random() itself has a constant execution time. But it creates a float and will therefore allocate RAM from the heap, causing eventually automatic gc, which in turn has a big effect on code execution. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Port, board and/or hardware
rp2 WeAct rp2350a-v10 and rp2350a-v20
MicroPython version
MicroPython v1.26.0-preview.127.g7a55cb6b3 on 2025-05-18; WeAct Studio RP2350A-V10 with RP2350
Reproduction
Default
pin.csv
Added GPIO 23 and 29:
Building using the following command:
Expected behaviour
Both pin.psv should not affect performance of the exact code.
Observed behaviour
Added GPIO 23 and 29

Default

This shouldn't be a margin of error since across mutiple runs, the difference is consistent. Even bigger gap when overclocked further. Even more interesting, if i add other definitions such as:
LED2,GPIO24
andKEY,GPIO23
, the performance drops below default by a definitively noticeable margin.Additional Information
I am well aware losing 60 ms in 100 k cycles is probably not a big deal at all. Tho this is a quite interesting observation to make. Feel free to move this to discussion or mark this as closed if you think this does not need a fix. :D In that case, sorry for bothering! My sincerely apologies!
Code of Conduct
Yes, I agree
Beta Was this translation helpful? Give feedback.
All reactions