please explain GPIO numbering


With the following command I can switch on the green LED on the MAIX GO:
GPIO = machine.GPIO ( machine.GPIO.GPIO0, machine.GPIO.DM_OUTPUT, machine.GPIO.LOW_LEVEL )
or shorter: GPIO = machine.GPIO(0, 3, 0)

But GPIO0 and the green LED occur in several places with different numbering:
machine.GPIO.GPIO0 = 0
fm.fpioa.GPIO0 = 56
silkscreen GREEN = 12 but actual physical pin green led = 14 (possibly a mapping issue, maybe in
board_info.LED_G = 13

I found that board_info.LED_G is hard coded in, and the silkscreen is probably wrong.
Can anyone explain why there are so many different numbers and how they all connect to each other?

I found a list of the 256 functions defined for the fpioa in the standalone sdk (kendryte-standalone-sdk-0.3.0/lib/drivers/include/fpioa.h). There, function 56 corresponds to GPIO0.


Hi, you are right, we make mistake at the silk, we have fix it in next pcb. thank you!