How lodzen/cremalink-ha works
Cremalink HA bridges configured coffee machines into Home Assistant: users select a device map and local or cloud connection, the integration creates and configures a Cremalink device, then polls monitoring data and exposes sensors and controls. The README documents both local add-on and cloud modes. The integration source is sampled; the add-on implementation and Cremalink dependency are not, so their internal behavior is represented only as external services.
Main entry points: __init__.py Integration setup · coordinator.py Polling coordinator · config_flow.py Configuration flow · switch.py Power switch
Components 15
Setup and discovery
- Configuration flow
custom_components/cremalink_ha/config_flow.py - Device maps
custom_components/cremalink_ha/config_flow.py
Device connectivity
- Integration setup
custom_components/cremalink_ha/__init__.py - Cremalink library
- Server add-on
addons/cremalink-server - Cremalink cloud
Monitoring and control
- Configured device
custom_components/cremalink_ha/__init__.py - Polling coordinator
custom_components/cremalink_ha/coordinator.py - Status entities
custom_components/cremalink_ha/sensor.py - Condition entities
custom_components/cremalink_ha/binary_sensor.py - Power switch
custom_components/cremalink_ha/switch.py - Brew commands
custom_components/cremalink_ha/button.py
Other components
- Home Assistant user
- Coffee machine
- Home Assistant
Connections 27
- Home Assistant user → Configuration flow: configures
- Configuration flow → Device maps: lists maps
- Configuration flow → Server add-on: checks health
- Configuration flow → Cremalink cloud: authenticates and discovers
- Configuration flow → Integration setup: creates entry
- Integration setup → Device maps: resolves map
- Integration setup → Cremalink library: creates and configures
- Cremalink library → Server add-on: connects locally
- Cremalink library → Cremalink cloud: connects to cloud
- Server add-on → Coffee machine: bridges connection
- Cremalink cloud → Coffee machine: provides device access
- Integration setup → Polling coordinator: starts polling
- Polling coordinator → Configured device: gets monitor data
- Integration setup → Status entities: forwards platform setup
- Integration setup → Condition entities: forwards platform setup
- Integration setup → Power switch: forwards platform setup
- Integration setup → Brew commands: forwards platform setup
- Status entities → Polling coordinator: reads state
- Condition entities → Polling coordinator: reads state
- Power switch → Configured device: sends power command
- Brew commands → Configured device: sends brew command
- Power switch → Polling coordinator: requests refresh
- Brew commands → Polling coordinator: requests refresh
- Status entities → Home Assistant: exposes readings
- Condition entities → Home Assistant: exposes conditions
- Power switch → Home Assistant: exposes power control
- Brew commands → Home Assistant: exposes commands