diff --git a/srnemqtt/__main__.py b/srnemqtt/__main__.py
index 9fc1c3b..6d3a1bf 100755
--- a/srnemqtt/__main__.py
+++ b/srnemqtt/__main__.py
@@ -33,6 +33,11 @@ def main():
                     log("Connected.")
 
                     cc = ChargeController(dev)
+                    log(f"Controller model: {cc.model}")
+                    log(f"Controller version: {cc.version}")
+                    log(f"Controller serial: {cc.serial}")
+                    for consumer in consumers:
+                        consumer.controller = cc
 
                     # write(dev, construct_request(0, 32))
 
diff --git a/srnemqtt/consumers/__init__.py b/srnemqtt/consumers/__init__.py
index f1b8cf9..bd21596 100644
--- a/srnemqtt/consumers/__init__.py
+++ b/srnemqtt/consumers/__init__.py
@@ -2,9 +2,12 @@
 from abc import ABC, abstractmethod
 from typing import Any, Dict
 
+from ..protocol import ChargeController
+
 
 class BaseConsumer(ABC):
     settings: Dict[str, Any]
+    controller: ChargeController | None = None
 
     @abstractmethod
     def __init__(self, settings: Dict[str, Any]) -> None: