From f1d4ca0c05b13acb1afd148533de3fe2c2359db0 Mon Sep 17 00:00:00 2001 From: Ben Nuttall Date: Mon, 23 Nov 2015 08:36:14 +0000 Subject: [PATCH] Add LineSensor --- gpiozero/__init__.py | 1 + gpiozero/input_devices.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/gpiozero/__init__.py b/gpiozero/__init__.py index ae35522..0682763 100644 --- a/gpiozero/__init__.py +++ b/gpiozero/__init__.py @@ -14,6 +14,7 @@ from .input_devices import ( InputDeviceError, InputDevice, Button, + LineSensor, MotionSensor, LightSensor, AnalogInputDevice, diff --git a/gpiozero/input_devices.py b/gpiozero/input_devices.py index 18a50b4..7e60ad5 100644 --- a/gpiozero/input_devices.py +++ b/gpiozero/input_devices.py @@ -411,6 +411,20 @@ Button.wait_for_press = Button.wait_for_active Button.wait_for_release = Button.wait_for_inactive +class LineSensor(DigitalInputDevice): + """ + A single sensor line detector. + """ + def __init__(self, pin=None, pull_up=True, bounce_time=None): + super(LineSensor, self).__init__(pin, pull_up, bounce_time) + +LineSensor.line_detected = LineSensor.is_active +LineSensor.when_line = LineSensor.when_activated +LineSensor.when_no_line = LineSensor.when_deactivated +LineSensor.wait_for_line = LineSensor.wait_for_active +LineSensor.wait_for_no_line = LineSensor.wait_for_inactive + + class MotionSensor(SmoothedInputDevice): """ A PIR (Passive Infra-Red) motion sensor.