Messages mixed 1 xBee coordinator - 2 End

Hello,

i have an issue with 2 xBee end transmitting data to an xBee Coordinator in transparent mode. When the two ends transmit data at same time, the messages are mixed in console:

// 1st end transmission, working well
{“sensorId”:“Drone_SAM_01”,“Time”:“18:10:33”,“Date”:“15/01/2024”,“CO-B4(ppb)”:“-1174.26”,“OX-B431(ppb)”:“2023.90”,“NO2-B43F(ppb)”:“-218.85”,“NO-B4(ppb)”:“1217.23”,“PID-eVx(ppb)”:“0.64”,“Temp(oC)”:“22.45”,“Rel.Hum(%)”:“32.00”,“Prs(hPa)”:“959.08”,“PM2.5(ug/m3)”:“0.00”}

// 2th end transmission, working well
{“sensorId”:“Winsen_01”,“PM1.0”:1.00,“PM2.5”:2.00,“PM10”:2.00,“Co2”:451.00, “VOC”:0.00,“Temp”:13.30,{“sensorId”:“Drone_SAM_01”,“Time”:“18:10:38”,“Date”:“15/01/2024”,“CO-B4(ppb)”:“-1173.73”,"OX-B431(pp “RH”:50.00, “CH2O”:0.06,“CO”:0.50,“O3”:0.05,“NO2”:0.01}

// message of 1st end is cutted
b)“:“2025.42”,“NO2-B43F(ppb)”:”-213.85",“NO-B4(ppb)”:“1217.39”,“PID-eVx(ppb)”:“0.14”,“Temp(oC)”:“22.45”,“Rel.Hum(%)”:“32.00”,“Prs(hPa)”:“959.11”,“PM2.5(ug/m3)”:“0.00”}

// message of 2st end arrive
{“sensorId”:“Drone_SAM_01”,“Time”:“18:10:43”,“Date”:“15/01/2024”,“CO-B4(ppb)”:“-1172.23”,“OX-B431(ppb)”:“2025.42”,“NO2-B43F(ppb)”:“-221.35”,“NO-B4(ppb)”:“1218.60”,“PID-eVx(ppb)”:“17.55”,“Temp(oC)”:"22 “RH”:50.00, “CH2O”:0.06,“CO”:0.50,“O3”:0.06,“NO2”:0.01}

// message of 1st end is cutted
.46",“Rel.Hum(%)”:“32.00”,“Prs(hPa)”:“959.06”,“PM2.5(ug/m3)”:“0.00”}

How to avoid that ?

Thanks a lot for help.

The best way to handle this is to ensure that your data packet does not get broken up into multiple packets caused by either exceeding the Max payload size or due to latency in the UART (RO characters times of silence on the UART).

In your case, you may want to use API mode on the End devices instead of Transparent mode. Or if that is not possible, increase RO from the default of 3 character times to maybe ten character times. This way if your processor sends the data in chunks, the radio may send it as all one data packet.