-
Notifications
You must be signed in to change notification settings - Fork 144
Closed
Description
- ev3dev version: 4.14.117-ev3dev-2.3.4-ev3
- ev3dev-lang-python version:
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==========================-==================-==================-=========================================================
ii micropython-ev3dev2 2.0.0-beta5 all Python language bindings for ev3dev for MicroPython
ii python3-ev3dev 1.2.0 all Python language bindings for ev3dev
ii python3-ev3dev2 2.0.0-beta5 all Python language bindings for ev3dev
The GyroSensor reset method is throwing an exception for me. I'm using an EV3 with a 01N7 gyro on port 2 (I've tried other ports as well). I run the following code:
#!/usr/bin/env micropython
from sys import stderr
from ev3dev2.sensor.lego import GyroSensor
from ev3dev2._platform.ev3 import INPUT_2
gyro = GyroSensor()
print("gyro mode: {0}, angle {1}".format(gyro.mode, gyro.angle), file=stderr)
gyro.reset()
print("gyro mode: {0}, angle {1}".format(gyro.mode, gyro.angle), file=stderr)
while gyro.angle != 0:
print("gyro mode: {0}, angle {1}".format(gyro.mode, gyro.angle), file=stderr)
And I get something like this as a result:
gyro mode: GYRO-ANG, angle 42
gyro mode: GYRO-ANG, angle 42
gyro mode: GYRO-ANG, angle 42
...<98 identical lines snipped>...
gyro mode: GYRO-ANG, angle 42
gyro mode: GYRO-ANG, angle 42
Traceback (most recent call last):
File "/home/robot/Samples/gyro_reset_test.py", line 14, in <module>
File "ev3dev2/sensor/lego.py", line 596, in angle
File "ev3dev2/sensor/__init__.py", line 280, in _ensure_mode
File "ev3dev2/sensor/__init__.py", line 182, in mode
File "ev3dev2/__init__.py", line 322, in set_attr_string
File "ev3dev2/__init__.py", line 264, in _set_attribute
File "ev3dev2/__init__.py", line 264, in _set_attribute
File "ev3dev2/__init__.py", line 282, in _raise_friendly_access_error
File "ev3dev2/__init__.py", line 36, in chain_exception
ValueError: One or more arguments were out of range or invalid, value b'GYRO-ANG'
----------
Exited with error code 1.
When I run the code again, it returns quickly and successfully because the gyro, in fact, has now been reset to 0. So I lift up the robot and turn it a little, and get the same broken result above.
Metadata
Metadata
Assignees
Labels
No labels