I have a display with 20 leds which I want to control with a UNO. The distance between UNO and display is about 5 meters. I don't want to have a 22 wire cable (20 leds, +5volt, ground) between the display and UNO. Instead I built at shift register with 3 circuits 74HC594 (8+8+4 bits) connected with short wires to the display. This reduced the need of cable wires to 5 (clock, latch, data, 5+, ground). The application is working ok, but only if the length of wires is short < 0.5meter. Using a 5 meter cable doesn't work. The display leds turn on/off random. The cable is an non-shielded "data cable". I have checked the level of the +5 volt to the shift registers is ok.
The straightforward solution is to move the shift registers near the UNO board, and connect a 22 wire cable to the display. But I also wonder if reducing the data stream speed could solve any timing problems due to the long cable? Would a shielded cable help?
What's really needed is a 'scope to look at the signals going into the cable compared the the signals coming out. That would hopefully reveal what is needed to clean up the signals to the shift registers.