diff --git a/src/main/java/io/github/dsheirer/module/decode/ip/mototrbo/tms/TMSPacket.java b/src/main/java/io/github/dsheirer/module/decode/ip/mototrbo/tms/TMSPacket.java index fbf2ec24..c66e8b53 100644 --- a/src/main/java/io/github/dsheirer/module/decode/ip/mototrbo/tms/TMSPacket.java +++ b/src/main/java/io/github/dsheirer/module/decode/ip/mototrbo/tms/TMSPacket.java @@ -57,7 +57,8 @@ public class TMSPacket extends Packet */ public String getTextMessage() { - int byteCount = (getMessage().length() - 32) / 8; + //Payload starts at packet offset, after 32-bit header + int byteCount = (getMessage().length() - getOffset() - 32) / 8; if(byteCount > 0) { @@ -68,6 +69,7 @@ public class TMSPacket extends Packet message[x] = getMessage().getByte(getOffset() + 32 + (x * 8)); } + //Characters are 16-bit, UTF-16 Little Endian return new String(message, StandardCharsets.UTF_16LE); }