Die Led 0 leuchtet für einen Moment auf, dann jedoch leuchten beide, das ist da du den Sleep-Befehl vergessen (oder absichtlich entfernt) hast. Dadurch erhält der Controller das Signal einer Linie gleich mehrfach und springt dadurch sofort (ohne sichtbare Verzögerung) in den else-Zweig, da er die Schleife ja sofort wieder ausführt.

Versuchs mal so:
Code:
#include "qfixBobbyBoard.h" 
#include "qfixSlaveBoard.h" 

BobbyBoard links; 
SlaveBoard rechts; 

int main() 
{ 

while (!links.button(0)) ; 
int white = links.analog(3); 
while (!links.button(1)) ; 
int black = links.analog(3); 
int ground = int((white+black)*0.55); 
int blub=0; 

while (true) { 

if (links.analog(3) > ground){ 
} 

else { 

if (blub == 0){ 
links.ledOn(0); 
blub = blub + 1; 
} 

else { 
links.ledOn(0); 
links.ledOn(1); 
} 
} 
sleep(10); //oder einen anderen, längeren Wert, hängt von der Breite der Linie ab
} 
}
Des weiteren würde ich mal schaun ob die Initialisierung der White, Black bzw. Ground-Variable sicher stimmt. Darin könnte ein Fehler liegen den ich nicht überprüfen kann da ich deinen Bot eigentlich nicht kenne (kann nur C programmieren )