diff --git a/compLib/Encoder.py b/compLib/Encoder.py index ae9c1a7..3ede960 100644 --- a/compLib/Encoder.py +++ b/compLib/Encoder.py @@ -44,7 +44,11 @@ class Encoder(object): if port <= 0 or port > MOTOR_COUNT: raise IndexError("Invalid encoder port specified!") - return Encoder.read_raw(port) - encoder_start_values[port] + diff = Encoder.read_raw(port) - encoder_start_values[port] + if diff > 2 ** 31: + diff -= 2 ** 32 + + return diff @staticmethod def clear(port: int):