diff --git a/homeassistant/components/rpi_gpio.py b/homeassistant/components/rpi_gpio.py index 3d0a068f8ca..bb0d7b841be 100644 --- a/homeassistant/components/rpi_gpio.py +++ b/homeassistant/components/rpi_gpio.py @@ -8,10 +8,6 @@ https://home-assistant.io/components/rpi_gpio/ """ import logging -try: - import RPi.GPIO as GPIO -except ImportError: - GPIO = None from homeassistant.const import (EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP) REQUIREMENTS = ['RPi.GPIO==0.6.1'] @@ -22,9 +18,7 @@ _LOGGER = logging.getLogger(__name__) # pylint: disable=no-member def setup(hass, config): """ Sets up the Raspberry PI GPIO component. """ - if GPIO is None: - _LOGGER.error('RPi.GPIO not available. rpi_gpio ports ignored.') - return False + import RPi.GPIO as GPIO def cleanup_gpio(event): """ Stuff to do before stop home assistant. """ @@ -41,27 +35,32 @@ def setup(hass, config): def setup_output(port): """ Setup a GPIO as output. """ + import RPi.GPIO as GPIO GPIO.setup(port, GPIO.OUT) def setup_input(port, pull_mode): """ Setup a GPIO as input. """ + import RPi.GPIO as GPIO GPIO.setup(port, GPIO.IN, GPIO.PUD_DOWN if pull_mode == 'DOWN' else GPIO.PUD_UP) def write_output(port, value): """ Write a value to a GPIO. """ + import RPi.GPIO as GPIO GPIO.output(port, value) def read_input(port): """ Read a value from a GPIO. """ + import RPi.GPIO as GPIO return GPIO.input(port) def edge_detect(port, event_callback, bounce): """ Adds detection for RISING and FALLING events. """ + import RPi.GPIO as GPIO GPIO.add_event_detect( port, GPIO.BOTH,