Bon me revoilà ... entre temps j'ai découvert la différence entre serial.print et serial.write :*
Bref avec ce bout de code :
void loop(){
// read packet, handle ping and wait for a tcp packet:
dat_p=es.ES_packetloop_icmp_tcp(buf,es.ES_enc28j60PacketReceive(BUFFER_SIZE, buf));
if (buf[IP_PROTO_P]==IP_PROTO_UDP_V){
// Serial.println(buf[IP_PROTO_P]);
if (buf[IP_PROTO_P]==IP_PROTO_UDP_V){
udp_length=buf[39]-8; // calculate UDP data lenght
for (int i = 0; i < udp_length; i++)
{
Serial.write(buf[42+i]);
}
Serial.println();
Relay_Control();
Status_Reply();
es.ES_make_udp_reply_from_request(buf,reply,8,12345);
buf[IP_PROTO_P]=0;
} }
} // end loop
je recupère sur mon moniteur serie:
/1/push1°°°°,f°°?°°°
/1/push1/°°°°,f°°°°°°
/1/push1/z°°,f°°°°°°
ou "°" représente un caractère carré que je n'arrive pas à reproduire pour le forum.
Moi ce qui m'intéresse c'est "/1/push1" et "/1/push1/z"
Vous pensez que je dois travailler au niveau chaine de caractère ou affiner le trappage de ma trame UDP ?
D'avance merci