diff --git a/pi_mqtt_gpio/__init__.py b/pi_mqtt_gpio/__init__.py
index 8dadd06d0510d3937e238e3aa373ca970d0e324d..0fccc94d9898e4a0fb3552348c662ba1688211f0 100644
--- a/pi_mqtt_gpio/__init__.py
+++ b/pi_mqtt_gpio/__init__.py
@@ -127,6 +127,10 @@ gpio_modules:
         type: boolean
         required: no
         default: yes
+      chip:
+        type: string
+        required: no
+        default: "/dev/gpiochip0"
 
 sensor_modules:
   type: list
diff --git a/pi_mqtt_gpio/modules/__init__.py b/pi_mqtt_gpio/modules/__init__.py
index 0661d99894ca2e5746fa7a32a2e91a1372c4d73c..8433a04dd8a272227262ead938876d88a9e6ddb0 100644
--- a/pi_mqtt_gpio/modules/__init__.py
+++ b/pi_mqtt_gpio/modules/__init__.py
@@ -8,6 +8,7 @@ BASE_SCHEMA = {
     "name": {"required": True, "empty": False},
     "module": {"required": True, "empty": False},
     "cleanup": {"required": False, "type": "boolean", "default": True},
+    "chip": {"required": False, "type": "string", "default": "/dev/gpiochip0"},
 }
 
 
diff --git a/pi_mqtt_gpio/modules/gpiod.py b/pi_mqtt_gpio/modules/gpiod.py
index 99b83e5d36ff748ca883e7d5af0a6c9b6ab9729d..f4184448238d11dceb4e857fda514b5e804b44c8 100644
--- a/pi_mqtt_gpio/modules/gpiod.py
+++ b/pi_mqtt_gpio/modules/gpiod.py
@@ -22,7 +22,7 @@ class GPIO(GenericGPIO):
         import gpiod as gpio
 
         self.io = gpio
-        self.chip = config.chip
+        self.chip = gpio.chip(config["chip"])
         self.pins = {}
         self.watchers = {}