UnknownHandler is raised despite config flow being defined

I’m currently implementing a new BLE integration for a device.
I’ve setup the manifest.json to be like:

{
  "config_flow": true,
  "bluetooth": [
    { 
      "connectable" : false
    }
  ]
}

I’ve created a config_flow.py and defined a class FlowHandler(config_entries.ConfigFlow, domain=DOMAIN): containing async_step_bluetooth and async_step_user.

When starting the integration, i get the following error:

2022-08-25 11:13:01.208 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/discovery_flow.py", line 74, in _async_process_pending_flows
await gather_with_concurrency(
File "/usr/src/homeassistant/homeassistant/util/async_.py", line 199, in gather_with_concurrency
return await gather(
File "/usr/src/homeassistant/homeassistant/util/async_.py", line 197, in sem_task
return await task
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 222, in async_init
flow, result = await task
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 240, in _async_init
flow = await self.async_create_flow(handler, context=context, data=data)
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 804, in async_create_flow
raise data_entry_flow.UnknownHandler
homeassistant.data_entry_flow.UnknownHandler

2022-08-25 11:14:59.152 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 222, in async_init
flow, result = await task
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 240, in _async_init
flow = await self.async_create_flow(handler, context=context, data=data)
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 804, in async_create_flow
raise data_entry_flow.UnknownHandler
homeassistant.data_entry_flow.UnknownHandler

I’m not quite sure which handler the systen is looking for, as it does not state the name. How can i find out, which handler is missing?

Btw: I’ve tried to add some random handlers in addition, like async_step_init, async_step_discovery, but had no luck so far. What am i missing?

You have no domain defined in manifest.json. That is what it is complaining about. See below for required structure.

1 Like