Two daisy-chained 74hc165 outputs are noisy as if they were floating

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!

Do you have the bypass caps installed? They are in the datasheet but not on your schematic. Also, you're powering them directly from your microcontroller?

1 Like

Looking at your incomplete schematic (on the right track) I will take a SWAG and say you are missing a resistor for each button. If connected as drawn the button wires are antennas and I would guess they are also over 10" in length. You mention pull up resistors but I cannot see them.

Are you building the circuit on a breadboard? Breadboard contacts are not reliable.

Measure the voltage on the input pins - are they really at Vcc level?

So what is different between what you did before and what you are doing now?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.