aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/traccar/protocol/StartekProtocolDecoder.java
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2021-12-27 18:22:07 -0600
committerIván Ávalos <avalos@disroot.org>2021-12-27 18:22:07 -0600
commitf03b999d6d17e53c1c1e1aa2f9271d03f12f2264 (patch)
treea16d409887e65e4211e0f8ea4fc73a86e637a032 /src/main/java/org/traccar/protocol/StartekProtocolDecoder.java
parent3a528ddc88f72f39ff9566cf5e0f54938b1584ef (diff)
parent790db6295f130e64c8346f13985dd0c15f938b40 (diff)
downloadtraccar-server-f03b999d6d17e53c1c1e1aa2f9271d03f12f2264.tar.gz
traccar-server-f03b999d6d17e53c1c1e1aa2f9271d03f12f2264.tar.bz2
traccar-server-f03b999d6d17e53c1c1e1aa2f9271d03f12f2264.zip
Merge branch 'master' into suntech-fixes
Diffstat (limited to 'src/main/java/org/traccar/protocol/StartekProtocolDecoder.java')
-rw-r--r--src/main/java/org/traccar/protocol/StartekProtocolDecoder.java11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/main/java/org/traccar/protocol/StartekProtocolDecoder.java b/src/main/java/org/traccar/protocol/StartekProtocolDecoder.java
index aae764993..042518cb2 100644
--- a/src/main/java/org/traccar/protocol/StartekProtocolDecoder.java
+++ b/src/main/java/org/traccar/protocol/StartekProtocolDecoder.java
@@ -77,9 +77,10 @@ public class StartekProtocolDecoder extends BaseProtocolDecoder {
.text(",")
.number("d,") // extended
.expression("([^,]+)?,") // fuel
- .expression("([^,]+)?") // temperature
+ .expression("([^,]+)?,?") // temperature
.groupEnd("?")
.groupEnd("?")
+ .any()
.compile();
private String decodeAlarm(int value) {
@@ -168,8 +169,12 @@ public class StartekProtocolDecoder extends BaseProtocolDecoder {
parser.nextInt(), parser.nextInt(), parser.nextHexInt(), parser.nextHexInt(), parser.nextInt())));
position.set(Position.KEY_STATUS, parser.nextHexInt());
- position.set(Position.KEY_INPUT, parser.nextHexInt());
- position.set(Position.KEY_OUTPUT, parser.nextHexInt());
+
+ int input = parser.nextHexInt();
+ int output = parser.nextHexInt();
+ position.set(Position.KEY_IGNITION, BitUtil.check(input, 1));
+ position.set(Position.KEY_INPUT, input);
+ position.set(Position.KEY_OUTPUT, output);
position.set(Position.KEY_POWER, parser.nextHexInt() * 0.01);
position.set(Position.KEY_BATTERY, parser.nextHexInt() * 0.01);