diff options
author | Keith Packard <keithp@keithp.com> | 2017-12-09 16:57:35 -0800 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2017-12-09 16:57:35 -0800 |
commit | 111622dbcd56c225a9d5ace9f0ef745e62f8a94c (patch) | |
tree | 968252a416bd02e2c0f27fff95d9d79798c6ea52 /altoslib/AltosTelemetryMegaData.java | |
parent | 1133130986a78628ea297ce1f6a023baf4382d8f (diff) |
altoslib: Fix 8 to 12 bit conversion for Mega pyro voltage data
The conversion was losing the replicated top four bits by shifting by
the wrong amount.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib/AltosTelemetryMegaData.java')
-rw-r--r-- | altoslib/AltosTelemetryMegaData.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/altoslib/AltosTelemetryMegaData.java b/altoslib/AltosTelemetryMegaData.java index 7ef9c637..f5961c8c 100644 --- a/altoslib/AltosTelemetryMegaData.java +++ b/altoslib/AltosTelemetryMegaData.java @@ -24,7 +24,9 @@ public class AltosTelemetryMegaData extends AltosTelemetryStandard { int v_batt() { return int16(6); } int v_pyro() { return int16(8); } - int sense(int i) { int v = uint8(10+i); return v << 4 | v >> 8; } + + /* pyro sense values are sent in 8 bits, expand to 12 bits */ + int sense(int i) { int v = uint8(10+i); return (v << 4) | (v >> 4); } int ground_pres() { return int32(16); } int ground_accel() { return int16(20); } |