Thanks Damien, this is of much help. I have launched this in my pyboard right now and this is what I'm getting:
Code: Select all
Pin(Pin.cpu.A0, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A0, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A1, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A1, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A2, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A2, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A3, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A3, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A4, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A4, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A5, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A5, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A6, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A6, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.A7, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.A7, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B6, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B6, mode=Pin.IN, pull=Pin.PULL_DOWN) 1
Pin(Pin.cpu.B7, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B7, mode=Pin.IN, pull=Pin.PULL_DOWN) 1
Pin(Pin.cpu.C4, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.C4, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.C5, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.C5, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.C6, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.C6, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.C7, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.C7, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B8, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B8, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B9, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B9, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B12, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B12, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B13, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B13, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B14, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B14, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B15, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B15, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Pin(Pin.cpu.B10, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B10, mode=Pin.IN, pull=Pin.PULL_DOWN) 1
Pin(Pin.cpu.B11, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B11, mode=Pin.IN, pull=Pin.PULL_DOWN) 1
Pin(Pin.cpu.B0, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B0, mode=Pin.IN, pull=Pin.PULL_DOWN) 1
Pin(Pin.cpu.B1, mode=Pin.IN, pull=Pin.PULL_UP) 1
Pin(Pin.cpu.B1, mode=Pin.IN, pull=Pin.PULL_DOWN) 0
Funny fact is that Y11 (B0) is misreading, so I'm guessing the pin is busted. Then B10, B11, B6 and B7 are reading all high values, as you warned me. Ok, so now I'm back to checking this tactile switch or other possible things. Thanks a lot for this help, I can submit a PR to docs, if you want me to, adding this troubleshooting, I think others could find it helpful in the future.