Message Payload type
- 
					
					
					
					
 I'm sending a message from node to node but when the message gets there it's the wrong type. 
 I need to send as P_STRING but it's showing as P_INT16This is my send void sendToReceiver(boolean reed_tripped) { char percent; Serial.print(" Light Status "); Serial.println(reed_tripped); switch (reed_tripped) { case 0: percent = "0"; send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent).setType(V_PERCENTAGE)); //send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent)); //send(msgDimmer_to_5.set(percent, 0)); break; case 1: percent = "30"; send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent).setType(V_PERCENTAGE)); //send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent)); //send(msgDimmer_to_5.set(percent, 0)); break; } }and the message 2836 !TSF:MSG:SEND,8-8-5-5,s=0,c=1,t=3,pt=2,l=2,sg=0,ft=0,st=NACK:4 2842 !TSF:RTE:N2N FAIL 2846 TSF:MSG:SEND,8-8-0-5,s=0,c=1,t=3,pt=2,l=2,sg=0,ft=0,st=OK:4 2854 MCO:SLP:MS=360000,SMS=0,I1=0,M1=1,I2=255,M2=255 2861 TSF:TDI:TSLWhat the heck am I doing wrong? 
 
- 
					
					
					
					
 @r-nox you are setting the message type to V_PERCENTAGE. You probably want to use V_TEXT. 
 
- 
					
					
					
					
 @r-nox said in Message Payload type: char percent; Your data is of type char. Make it char *. Something like char buf[MAX_PAYLOAD_SIZE+1]; strcpy ( buf, "30" ); send(msgDimmer_to_5.setDestination(5).setSensor(0).set(buf).setType(V_TEXT));
 
- 
					
					
					
					
 I tried this. Here's the results. They are close but payload looks corrupted. char buf[MAX_PAYLOAD_SIZE+1]; strcpy ( buf, percent ); void sendToReceiver(boolean reed_tripped) { char percent; Serial.print(" Light Status "); Serial.println(reed_tripped); switch (reed_tripped) { case 0: percent = "0"; Serial.print(" Select case is "); Serial.println("0"); char buf[MAX_PAYLOAD_SIZE+1]; strcpy ( buf, percent ); send(msgDimmer_to_5.setDestination(5).setSensor(0).set(buf).setType(V_TEXT)); break; case 1: percent = "30"; Serial.print(" Select case is "); Serial.println("30"); char buf2[MAX_PAYLOAD_SIZE+1]; strcpy ( buf, percent ); send(msgDimmer_to_5.setDestination(5).setSensor(0).set(buf2).setType(V_TEXT)); break; }My results have had their molecules mixed during transport. I expected "30" but received :⸮ 4870 TSF:MSG:SEND,8-8-0-5,s=0,c=1,t=47,pt=0,l=3,sg=0,ft=0,st=OK:⸮Any further advice? 
 
- 
					
					
					
					
 Sending as V_TEXT did not have the effect needed. void sendToReceiver(boolean reed_tripped) { char percent; Serial.print(" Light Status "); Serial.println(reed_tripped); switch (reed_tripped) { case 0: percent = "0"; Serial.print(" Select case is "); Serial.println("0"); send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent).setType(V_TEXT)); //send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent)); //send(msgDimmer_to_5.set(percent, 0)); break; case 1: percent = "30"; Serial.print(" Select case is "); Serial.println("30"); send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent).setType(V_TEXT)); //send(msgDimmer_to_5.setDestination(5).setSensor(0).set(percent)); //send(msgDimmer_to_5.set(percent, 0)); break; } }and the results 3201 TSF:MSG:SEND,8-8-0-5,s=0,c=1,t=47,pt=2,l=2,sg=0,ft=0,st=OK:4Payload still shows as P_INT16 and payload is 4 but in fact should be 30 This should be simple. I don't understand what's going wrong. 
 
- 
					
					
					
					
 @r-nox said in Message Payload type: char buf2[MAX_PAYLOAD_SIZE+1]; 
 strcpy ( buf, percent );
 send(msgDimmer_to_5.setDestination(5).setSensor(0).set(buf2).setType(V_TEXT));You copied to buf, but sent buf2  
 
- 
					
					
					
					
 @frits Thank you for catching that. I was just reworking and now it's sending proper values.  
 
 
			
		 
					
				 
					
				