Config flow for new integration - I2C

Tags: #<Tag:0x00007f77ff957198>

I’m building a PCF8574 integration that will allow using this extender directly with HA.
My current version (WIP) is available at https://github.com/Misiu/home-assistant/tree/pcf8574/homeassistant/components/pcf8574

Looking at docs I see that config flow is the preferred way for new integrations.
Because this integration will require hardware connected to PI, I2C enabled and I2C address (this can be configured on PCF8574) I started to wonder how should I create config flow for this integration?

My integration is base on pcal9535a and mcp23017, but they don’t offer config flows.
Does config flow for hardware-dependent integration make sense?

Ideally, integration should check if I2C is enabled, should scan for address and allow creating switches or binary sensors. Is this even possible right now?

Any advice and sample integration I could look at would be really helpful.