Hallo,
auf jeden Fall müssen am L293D noch Abblockkondensatoren und Elkos hin. An die 5V-Schiene kommen üblicherweise Keramikkondensatoren mit 100nF (pro Treiber einen). Die 12V am Treiber sollten mit 100µF..1000µF stabilisiert werden - um auch kurzzeitig höhere Ströme liefern zu können. An der 5V-Schiene kann ein 100µF auch nicht schaden. Alle Kondensatoren sollten möglichst nahe an den Treibern platziert werden.
Zu den enable-Leitungen: wenn der Schalter nicht gegen +5V geschaltet wird, dann liegt diese Leitung in der Luft. Das darf nicht sein. Die Leitung muss zumindest mit einem Widerstand, z.B. 10kOhm, gegen Masse gezogen werden. Alternativ kann die Leitung auch vom Arduino geschaltet werden.

Welchen Spulenwiderstand haben die Schrittmotoren aus dem Schrott? Damit lässt sich die statische Stromaufnahme an 12V ausrechnen. Ich stelle die Frage deswegen, weil der L293D nur maximal 600mA treiben kann und diese 600mA schnell erreicht werden. Bei diesem Ausgangsstrom wird der Treiber auch ziemlich heiß (3 Watt Verlustleistung !!!) und will gut gekühlt werden. Wenn die Stromaufnahme der Schrittmotoren schon in dieser Größenordnung liegt und keine vernünftige Kühlung vorhanden ist, wirst du keine Freude an den Treibern haben. Der L293D ist der schwächste Motortreiber, der erhältlich ist und wird von vielen zu gutgläubig verwendet. Nicht böse gemeint!

Viele Grüße,
Bernhard