Traiter des commandes reçue par le port Série [résolu]

C'est la structure de la boucle qui pose problème.

Lorsque tu saisis à la main des commandes au clavier il se passe beaucoup de temps (à l'échelle du micro) entre l'entrée de 2 caractères consécutifs, donc tu ne restes pas dans ton while (Serial.available ()) et du coup tu réinitialises ta variable d'index. Donc tu n'as jamais une ligne complète dans ton buffer de réception.
La variable d'index ne devrait être remise à 0 que dans 2 cas: soit un hors temps important, soit suite à l'identification d'un terminateur de ligne (\n normalement).

Maintenant, il y a dans les tutos un article de Barbudor (pub gratuite) sur l'implémentation de protocole de communication. Tu pourrais peut être y trouver des choses intéressantes.