Maximum number of shift registers cascading (TPIC6B595)

mc74ac125 was selected as the buffer for its high drive capability and low propagation delay.

At 8 MHz, positive clock edges are 130nS apart, so having 5 buffers of delay means that the max delay introduced is ~ 50nS, so all transitions are done before the next positive edge occurs.

Yes i know, but as i said i used 0.01uF instead of 0.1uF so i guess i need to change all 43 capacitors

No, while 0.1uF is the preferred value 0.01uF will do. You might want to add a 0.1uF every four or five chips if you are getting problems plus a big one like a 47uF to the whole chain.

Hi! Little follow up here, now my device is finaly working !

I left it alone for a while, and i started again by segregating functions on separated Arduinos. Now my Arduino Uno only receive bytes via Serial port, telling it to light up some light bulbs (or launch a sequence). Much easier for debug. I made a cleaner installation to avoid power issues.
I also changed ALL the chips because due to my early issues, some had overheated and i didn't want to lose time because of one faulty chip.

The capacitors was a good advice - which is obvious because it is written in the datasheet.
The buffer chips, however, messed with the datas. Maybe i did not use the right ones, but it started working when i removed them. In my case they were not necessary.

Obviously i made a lot of changes, so i cannot say for sure what was my issue. There was probably many, and i might have created some more while trying to fix them. Thanks to all of you for you help and support :slight_smile:

Attached is a picture of my shitty work, and a video of the final result. The sound you hear is an old keypad.