Märklin Weiche / Arduino shield erstellen

Habe gerade eine kleine Schaltung zusammengesteckt und siehe da: Es funktioniert ja tatsächlich :blush:
Einziges Manko ist nur noch, das die LED's immer leicht Leuchten. Sie leuchten immer und das Lauflicht verstärkt das Leuchten nur... Ist das normal?

Mein Arduino-Code:

//Pin connected to latch pin (ST_CP) of 74HC595
const int latchPin = 8;
//Pin connected to clock pin (SH_CP) of 74HC595
const int clockPin = 12;
//Pin connected to Data in (DS) of 74HC595
const int dataPin = 11;

const int sleep = 300;

int randomint = 0;

void setup() {
  //set pins to output because they are addressed in the main loop
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT);  
  pinMode(clockPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("Start!");
}

void loop() {

  // randomblink(50);

  stepbystep();
}

void stepbystep() {
  for(int i = 0; i < 8; i++) {
    registerWrite(i, HIGH);
    delay(sleep);
    registerWrite(i, LOW);
  }
  for(int i = 6; i >= 1; i--) {
    registerWrite(i, HIGH);
    delay(sleep);
    registerWrite(i, LOW); 
  }
}
void randomblink(int amount) {
  for(int i = 0; i < amount + 1; i++) {
    randomint = random(18);
    registerWrite(randomint, HIGH);
    delay(sleep);
    registerWrite(randomint, LOW);
    delay(50);
  }
}

void registerWrite(int whichPin, int whichState) {
  byte bitsToSend = 0;
  digitalWrite(latchPin, LOW);
  bitWrite(bitsToSend, whichPin, whichState);
  shiftOut(dataPin, clockPin, MSBFIRST, bitsToSend);
  digitalWrite(latchPin, HIGH);
}

EDIT:
Kabel von Pin9 des ULN2803A Hatte keinen Kontakt. Problem gelöst