False button read problem
You need pull down resistors on your ST lines.
Your buttons switch between open and 24V.
The ULN2003 is made of Darlington transistor pairs.  It takes very little current to make them switch.  Any stray current induced on the ST lines when the buttons are open will cause the ULN2003 to switch its output to high.
I'd try 10k resistors on the ST lines, preferably on the main PCB.
Once you fix that, you may want to look into software debouncing for all of your inputs.