Hi,
I have this circuit
The gpio's are all connected to 10k pullups.
I have tried every available code online, and the same result occurs: I have unreliable input values, as if the inputs were floating. For example, the arduino will read 0 on all 16 bits at bootup, and then I put my finger somewhere on the PCB and it reads FFFF, and then I press a button, nothing happens, then I press a button again but now the arduino reads F000 as if I had pressed 12 buttons, etc.
I am convinced it is not a sw problem, I already made these chips work in the past. I am out of ideas of what to test next... Ive checked all the connections from my arduino to the circuit, and the resistance between every gpio and vcc (4.5V from a arduino micro's vcc pin), to confirm that the pullups are well soldered. I also assembled a second pcb to see if I had made a mistake in assembly, in vain.
What could make these chips so unreliable??
Thanks!