ev3dev-lang-python: IR sensor doesn't respond to toggling off the "beacon" button

  • ev3dev version: 4.14.58-ev3dev-2.2.1-ev3
  • ev3dev-lang-python version: python3-ev3dev2

Code: https://gist.github.com/Uldiniad/2608aa8e4a152fe443b151f0d6c5e08b Output:

// Clicked beacon (runs medium_motor forever)
WARNING:root:State: True
WARNING:root:Running hand_motor forever
// Pressed touch sensor (stops medium_motor)
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
// Press any other button than beacon (runs large motor until released)
WARNING:root:State: False **//anomaly: large motors should not be in auto_home nor its internals**
// Clicked beacon again (runs medium_motor forever)
WARNING:root:State: True
WARNING:root:Running hand_motor forever
// Pressed touch sensor again (stops medium_motor)
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
WARNING:root:Touch sensor pressed. Stopping hand_motor
// Pressed beacon again, nothing happens **anomaly: every time beacon is pressed it should execute move(state)*. The only way to have beacon run the medium_motor forever again is to execute the sequence to trigger the first anomaly*

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 17 (11 by maintainers)

Most upvoted comments

Yeah, thanks for doing the initial investigation. FWIW until we release the package with this change the workaround above is still the best way to go.