même si vous envoyez les données d'un coup il se peut que certaines se perdent. dans ce cas le message reçu est considéré comme invalide. suivant la librairie utilisée certaines supportent la ré-émission
l'idéal est de prévoir une grammaire:
un message commence par une séquence déterminée de caractères par exemple [color=purple]<<[/color] et comporte un certains nombre de champs séparés par un séparateur connu, par exemple [color=purple] | [/color] et se termine par une séquence déterminée de caractères par exemple [color=purple]>>[/color]
pour envoyer les 3 valeurs 12.15, 22 et -33.24 par exemple vous émettez:
<<12.15 | 22 | -33.24>>
côté serveur vous attendez de voir passer la trame de départ, puis avec une petite machine à état vous lisez ce qui arrive et si vous détectez une erreur de transmission ou de cohérence alors vous laissez tomber l'intégralité de cette trame et renvoyez un message à l'émetteur de tout ré-emettre.
Si vous lisez l'anglais vous pouvez jeter un oeil à Serial Input Basics