SIM800C send sms

Hi i’m trying to send a sms with arduino Leonardo to Sim800c but i’ve a strange behaivior …
when i receive this : AT+CMGS="+39348xxxxxxxx">
I prepare a Msg
SMSMsg = “DP1;+39342xxxxxxx;10VINIKBI5IBFF2;004;+393491433611;+39348xxxxxxx; 17.2;MS;20.0;16.4;30;150;20;400;54;0;0;0;607;0;0;0;13;214.8;KO|”

strcat(SMSMsg,"\x1A"); and then send with : Serial1.println(SMSMsg);

The strange thing is that i receive back on serial1.read part of the SMSMsg body and many many empty string like \n or \r and not the response string like AT+CMGS “OK” or “ERROR”.

Can you help me ?

when i receive this : AT+CMGS="+3934xxxx567">
...
SMSMsg = "DP1;+39342xxxx75;10VINIKBI5IBFF2;004;+3934xxx611;+39348xxx567;

don't share phone numbers in a public forum...

I've not checked the AT command but your variable SMSMsg is a constant cString, you can't strcat() on it as there is no room left at the end for you escape character. Try

char SMSMsg[150]; // has to be big enough for the command, plus one extra char for the trailing '\0'
.... // later when needed, build the content of the message
strcpy(SMSMsg, "DP1;+39342xxx32775;10VINIKBI5IBFF2;004;+3934xxx611;+393xxx6567; 17.2;MS;20.0;16.4;30;150;20;400;54;0;0;0;607;0;0;0;13;214.8;KO|");
strcat(SMSMsg,"\x1A"); // if the content is known, this can be added right at the end directly 
Serial1.println(SMSMsg);