Effectivement. Pour tester mon montage, je déconnecte le FTDI que j'utilise pour téléverser mon programme de l'arduino. Le PC n'est donc pas relié pendant mes essais, et du coup, le débogage est super-galère.
Naïvement, je pensais qu'en testant unitairement chaque module via un moniteur série, ça marcherait tout seul lorsque je brancherait

Donc, pour creuser, je mets "des petits indicateurs lumineux" dans le protocole. Notamment, je voulais savoir si après avoir émis un caractère, la condition "if ( prot_pStream->available() )" de prot_loop était valide. Ce qui n'est pas le cas. Maintenant, je n'arrive pas à savoir si le problème est logiciel ou "électrique" (au sens transmission des signaux).
Pour le debug, j'ai aussi une Duemilanove, il y aurait peut-être un truc à faire avec ???
------------------------------------------------------------------------------------
Programme modifié pour debug (une LED a été ajouté sur TEST_PIN)
void prot_loop()
{
// variable pour recevoir le prochain caractère reçu
char c;
// indicateur pour boucler dans la fonction tant qu'il y a des caractères dispo
// Par defaut : true : on boucle ici jusqu'à épuisement des caractères
// false dans certains état de l'automate : RECEIVED car comme on ne consomme
// pas les caractères, on resterait bloqué
bool loop_on_available = true;
if ( prot_pStream->available() )
{
digitalWrite(TEST_PIN, HIGH);
delay(200);
digitalWrite(TEST_PIN, LOW);
while ( loop_on_available && prot_pStream->available() )
...