def __init__(self, name, port, invert_logic): """Initialize the pin.""" self._name = name or DEVICE_DEFAULT_NAME self._port = port self._invert_logic = invert_logic self._state = False rpi_gpio.setup_output(self._port)
async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): """Setup the VL53L1X ToF Sensor from ST.""" #import smbus # pylint: disable=import-error from VL53L1X2 import VL53L1X # pylint: disable=import-error name = config.get(CONF_NAME) bus_number = config.get(CONF_I2C_BUS) i2c_address = config.get(CONF_I2C_ADDRESS) unit = LENGTH_MILLIMETERS # range = config.get(CONF_RANGE) xshut = config.get(CONF_XSHUT) # pulse XSHUT port and keep it HIGH rpi_gpio.setup_output(xshut) rpi_gpio.write_output(xshut, 0) time.sleep(0.01) rpi_gpio.write_output(xshut, 1) time.sleep(0.01) sensor = await hass.async_add_job(partial(VL53L1X, bus_number)) dev = [VL53L1XSensor(sensor, name, unit, i2c_address)] async_add_entities(dev, True)
def setup_platform(hass, config, add_devices, discovery_info=None): """Setup the VL53L1X ToF Sensor from ST.""" import smbus # pylint: disable=import-error from VL53L1X2 import VL53L1X # pylint: disable=import-error rpi_gpio.setup_output(DEFAULT_XSHUT) rpi_gpio.write_output(DEFAULT_XSHUT, 0) time.sleep(0.01) rpi_gpio.write_output(DEFAULT_XSHUT, 1) time.sleep(0.01) sensor_id = 1111 tof = VL53L1X() tof.open() # Initialise the i2c bus and configure the sensor tof.add_sensor(sensor_id, DEFAULT_I2C_ADDRESS) # add a VL53L1X device tof.start_ranging( sensor_id, 2) # Start ranging, 1 = Short Range, 2 = Medium Range, 3 = Long Range for _ in range(0, 3): distance_mm = tof.get_distance(sensor_id) # Grab the range in mm _LOGGER.warning("Time: {}\tVL53L1X: {} mm".format( datetime.utcnow().strftime("%S.%f"), distance_mm)) time.sleep(0.01) tof.stop_ranging(sensor_id) add_devices([TofSensor()])
def __init__(self, name, port, invert_logic): """Initialize the pin.""" self._name = name or DEVICE_DEFAULT_NAME self._port = port self._invert_logic = invert_logic self._state = False rpi_gpio.setup_output(self._port) rpi_gpio.write_output(self._port, 1 if self._invert_logic else 0)
def __init__(self, name, relay_pin, state_pin): """Initialize the garage door.""" self._name = name self._state = False self._relay_pin = relay_pin self._state_pin = state_pin rpi_gpio.setup_output(self._relay_pin) rpi_gpio.setup_input(self._state_pin, 'UP') rpi_gpio.write_output(self._relay_pin, True)
def __init__(self, name, relay_pin, state_pin, state_pull_mode, relay_time): """Initialize the cover.""" self._name = name self._state = False self._relay_pin = relay_pin self._state_pin = state_pin self._state_pull_mode = state_pull_mode self._relay_time = relay_time rpi_gpio.setup_output(self._relay_pin) rpi_gpio.setup_input(self._state_pin, self._state_pull_mode) rpi_gpio.write_output(self._relay_pin, True)
def __init__(self, name, relay_pin, state_pin, state_pull_mode, relay_time, invert_state, invert_relay): """Initialize the cover.""" self._name = name self._state = False self._relay_pin = relay_pin self._state_pin = state_pin self._state_pull_mode = state_pull_mode self._relay_time = relay_time self._invert_state = invert_state self._invert_relay = invert_relay rpi_gpio.setup_output(self._relay_pin) rpi_gpio.setup_input(self._state_pin, self._state_pull_mode) rpi_gpio.write_output(self._relay_pin, 0 if self._invert_relay else 1)
def __init__(self, name, port, invert_logic): self._name = name or DEVICE_DEFAULT_NAME self._port = port self._invert_logic = invert_logic self._state = False rpi_gpio.setup_output(self._port)
def init_tof_1(xshut): """XSHUT port HIGH enables the device.""" rpi_gpio.setup_output(xshut) rpi_gpio.write_output(xshut, 1)
def init_tof_0(xshut, sensor): """XSHUT port LOW resets the device.""" sensor.open() rpi_gpio.setup_output(xshut) rpi_gpio.write_output(xshut, 0)