1 """Support for Firmata sensor input."""
11 from .const
import CONF_DIFFERENTIAL, CONF_PIN_MODE, DOMAIN
12 from .entity
import FirmataPinEntity
13 from .pin
import FirmataAnalogInput, FirmataPinUsedException
15 _LOGGER = logging.getLogger(__name__)
20 config_entry: ConfigEntry,
21 async_add_entities: AddEntitiesCallback,
23 """Set up the Firmata sensors."""
26 board = hass.data[DOMAIN][config_entry.entry_id]
27 for sensor
in board.sensors:
28 pin = sensor[CONF_PIN]
29 pin_mode = sensor[CONF_PIN_MODE]
30 differential = sensor[CONF_DIFFERENTIAL]
34 except FirmataPinUsedException:
36 "Could not setup sensor on pin %s since pin already in use",
40 name = sensor[CONF_NAME]
42 new_entities.append(sensor_entity)
48 """Representation of a sensor on a Firmata board."""
51 """Set up a sensor."""
55 """Stop reporting a sensor."""
56 await self.
_api_api.stop_pin()
60 """Return sensor state."""
61 return self.
_api_api.state
None async_added_to_hass(self)
StateType|date|datetime|Decimal native_value(self)
None async_write_ha_state(self)
None async_will_remove_from_hass(self)
None async_setup_entry(HomeAssistant hass, ConfigEntry config_entry, AddEntitiesCallback async_add_entities)