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
Uh oh!
There was an error while loading. Please reload this page.
-
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