Good afternoon!
The equipment message defines 3 types of messages according to the manual.
GLOBAL MESSAGE TYPE
Bits 0 and 1 in the first byte of the user data define the Global Message Type; there are four total global types. Types
0 and 3 are applicable to the function and features of the SmartOne, type 1 and 2 are user defined message types.
• Type 0 - Standard Message: All of the various message types that contain Latitude and Longitude data that are
transmitted by the SmartOne will be of this type.
• Type 1 - Truncated Message: This message type provides for up to 2 bytes plus 6 bits of user data to be
appended to the status byte and GPS location information.
• Type 2 - Raw Message: This message type provides for up to 8 bytes plus 6 bits of user data.
• Type 3 - Non Standard Message: This is the message type that covers the category “none of the above”. The
SmartOne will use this message type for messages that do not contain Latitude and Longitude data. Smart One
message types which fall into this category include Accumulate/Count messages, Diagnostic messages, Contact
Service Provider messages and Low Battery messages.
<payload length="9" source="pc" encoding="hex">0x57033C781300000003</payload>
Based on the given payload, the message type is Type 3, which is a Non-Standard message type. The subtype is 21, which indicates that this message is a Diagnostic Message.
therefore it does not bring position information, and the protocol is processing it as type 0, which has info, giving erroneous positions on the platform.
I was looking at the source code in GlobalstarProtocolDecoder.java but it is beyond my capabilities to find out if there are any errors in the processing.
Do you have full protocol documentation?
Yes, I think that at some point I will send them to you. But I can send it again.
I emailed support@traccar with the links.
@Anton sorry for bothering. did you get the links?
It looks like it's incompatible with some other older formats. For example this:
that is a problem.
How do you think it could be done to keep both versions?
Also today all devices come with the protocol that I send you. Is there something that without being a programmer can help you?
Maybe we can make it configurable. I'm assuming you can't contribute the implementation, but are you interested in sponsoring this work? If not, please create a ticket on GitHub and we will gauge the community interest and implement it once we have enough people.
please, reply to the email with the information referring to the sponsorship of the change, the time and the cost! Thank you very much for everything, the platform and the quick response
Good afternoon!
The equipment message defines 3 types of messages according to the manual.
<payload length="9" source="pc" encoding="hex">0x57033C781300000003</payload>
Based on the given payload, the message type is Type 3, which is a Non-Standard message type. The subtype is 21, which indicates that this message is a Diagnostic Message.
therefore it does not bring position information, and the protocol is processing it as type 0, which has info, giving erroneous positions on the platform.
I was looking at the source code in GlobalstarProtocolDecoder.java but it is beyond my capabilities to find out if there are any errors in the processing.