Rafael, upon closer inspection (since I'm testing a Queclink GV30CAU), you're right in pointing out that the GV58LAU and GV30CAU send an additional reserved field
and that the Traccar protocol does not account for
.number(“(x+)?,”) // adc 1
.number(“(x+)?,”) // adc 2
.number(“(d{1,3})?,”) // battery
https://github.com/traccar/traccar/blob/baa7b66e06df0e7d6c86f83474710d4d1d1efc54/src/main/java/org/traccar/protocol/Gl200TextProtocolDecoder.java#L834 should be right before that line
GV55W
+RESP:GTFRI,500101,8685740404*****,,12783,10,1,1,0.0,53,126.8,-72.521408,-38.998685, 20260505030016,0730,0002,A08F,BEFE4D,00,0.0,,,,100,110000,,,,20260505030208,06CB$
GV58LAU
+RESP:GTFRI,8020040200,8663140602*****,,12820,10,1,1,0.0,202,102.8,-72.637985,-38.980702, 20260505030327,0730,0002,0387,0800BC47,03,12,0,0.0,,,,,100,110000,,,,20260505030329,03DD$
GV30CAU
+RESP:GTFRI,80201C0200,8667140802*****,,12322,10,1,0,0.0,83,18.2,-72.637160,-38.980035, 20260504182147,0730,0002,0387,0988886F,00,0.0,,,,,100,110001,,,,20260504185318,1CB1$
If you look for the text 100,110001 in the three examples, in the case of the GV55W it is preceded by four commas, but for the GV58LAU and the GV30CAU there are five commas
Did you find a solution?
Hi Cristian. I haven´t found a solution yet. But a really need it ASAP. Please let me know if you figure it out. Thanks
Do you have the protocol documentation and some log samples?
Hi Anton, in my tests I made this change to see how the GV30CAU worked; the changes were in the PATTERN_FRI
.number(“(x+)?,”) // adc 1
.number(“(x+)?,”) // adc 2
.number(“d*,”).optional() // reserved
.number(“(d{1,3})?,”) // battery
I added an optional field after adc2 and before battery
This change solved the problem for the GV30CAU but not for the GV58LAU
The change allowed the GV30CAU to correctly log power on/off events and the other data sent by the device.
I never make changes to the backend, but at least this one solved the GV30CAU issue.
I'm sharing both protocols
https://we.tl/t-uiiVRjUdaUU1Gvdo
Hi Anton and Cristian. Thanks in advance for your help. These are some log samples for de GV58LAU:
2026-05-14 01:04:58 INFO: [Te38f6717] connected
2026-05-14 01:04:58 INFO: [Te38f6717: gl200 < 186.141.202.79] +RESP:GTFRI,8020040703,866314060299813,,,10,1,1,0.0,275,937.7,-68.891157,-33.008722,20260514010456,,,,,00,,,,,,100,110000,,,,20260514010458,BBCE$
2026-05-14 01:04:58 INFO: Event id: 866314060299813, time: 2026-05-14 01:04:58, type: deviceOnline, notifications: 0
2026-05-14 01:05:01 INFO: [Te38f6717] id: 866314060299813, time: 2026-05-14 01:04:56, lat: -33.00872, lon: -68.89116, course: 275.0
2026-05-14 01:05:28 INFO: [Te38f6717] disconnected
2026-05-14 01:05:28 INFO: Event id: 866314060299813, time: 2026-05-14 01:05:28, type: deviceOffline, notifications: 0
2026-05-14 02:04:58 INFO: [T13227e8d] connected
2026-05-14 02:04:58 INFO: [T13227e8d: gl200 < 186.141.200.188] +RESP:GTFRI,8020040703,866314060299813,,,10,1,1,0.0,275,937.7,-68.891157,-33.008722,20260514020457,,,,,00,,,,,,100,110000,,,,20260514020458,BBCF$
2026-05-14 02:04:58 INFO: Event id: 866314060299813, time: 2026-05-14 02:04:58, type: deviceOnline, notifications: 0
2026-05-14 02:05:01 INFO: [T13227e8d] id: 866314060299813, time: 2026-05-14 02:04:57, lat: -33.00872, lon: -68.89116, course: 275.0
2026-05-14 02:05:29 INFO: [T13227e8d] disconnected
The details are there—at least for the GV30CAU, the issue is resolved as I mentioned. I shared the logs showing the frame structure for each model, and the GV58LAU and GV30CAU include one additional field compared to what the GV55W sends, for example.
This should fix the problem:
https://github.com/traccar/traccar/commit/a2a83d3eeed5ec2f4651d1f0c54ad8576e7f390d
Excellent! Thank you very much, Anton!
Hi Anton and Cristian. Thanks for replying.
In my case, Traccar doesn't recognize the Battery Level and Device Status fields (where the engine-on and engine-off information is located).
I suppose it's due to the difference in the message format this device sends, as I mentioned in my previous post.