diff --git a/README.md b/README.md index 7099ff6..bdbc9e0 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,10 @@ More options are: - name (string)(Optional) The name displayed in the frontend. +- iface (integer)(Optional) + Parameter allows select of connection Bluetooth interface. + On Linux, 0 means */dev/hci0*, 1 means */dev/hci1* and so on. + Even more options regarding caching and intervals are comming in the future. For advanced debugging set: diff --git a/custom_components/mikettle/sensor.py b/custom_components/mikettle/sensor.py index 77dedb2..3b75752 100644 --- a/custom_components/mikettle/sensor.py +++ b/custom_components/mikettle/sensor.py @@ -29,11 +29,13 @@ _LOGGER = logging.getLogger(__name__) CONF_PRODUCT_ID = "product_id" +CONF_IFACE = "iface" DEFAULT_PRODUCT_ID = 275 DEFAULT_FORCE_UPDATE = False DEFAULT_NAME = "Mi Kettle" DEFAULT_SCAN_INTERVAL = timedelta(seconds=60) +DEFAULT_IFACE = 0 # Sensor types are defined like: Name, units, icon SENSOR_TYPES = { @@ -54,6 +56,7 @@ vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string, vol.Optional(CONF_PRODUCT_ID, default=DEFAULT_PRODUCT_ID): cv.positive_int, vol.Optional(CONF_FORCE_UPDATE, default=DEFAULT_FORCE_UPDATE): cv.boolean, + vol.Optional(CONF_IFACE, default=DEFAULT_IFACE): cv.positive_int, } ) @@ -61,7 +64,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): """Set up the MiKettle sensor.""" cache = config.get(CONF_SCAN_INTERVAL, DEFAULT_SCAN_INTERVAL).total_seconds() - poller = MiKettle(config.get(CONF_MAC), config.get(CONF_PRODUCT_ID)) + poller = MiKettle(mac=config.get(CONF_MAC), product_id=config.get(CONF_PRODUCT_ID), iface=config.get(CONF_IFACE)) force_update = config.get(CONF_FORCE_UPDATE)