diff --git a/src/devices/pushok.ts b/src/devices/pushok.ts
index b16aa6b1fac3a1eec860c2319247a5a3281d6ef2..24e18ba6717d3d6807c8bdb8873cfc8aa21073f3 100644
--- a/src/devices/pushok.ts
+++ b/src/devices/pushok.ts
@@ -372,4 +372,36 @@ export const definitions: DefinitionWithExtend[] = [
         ],
         ota: true,
     },
+    {
+        zigbeeModel: ["POK017"],
+        model: "POK017",
+        vendor: "PushOk Hardware",
+        description: "Battery powered greenhouse vent",
+        extend: [
+            m.windowCovering({controls: ["lift"], coverInverted: false, stateSource: "lift", configureReporting: false, coverMode: false}),
+            m.battery({percentage: true, voltage: true, lowStatus: false, percentageReporting: false}),
+            m.enumLookup({
+                name: "thermostat_preset",
+
+                lookup: {off: 0, level_1: 1, level_2: 2, level_3: 3, level_4: 4, level_5: 5, level_6: 6, level_7: 7, level_8: 8, level_9: 9},
+                cluster: "genMultistateOutput",
+                attribute: "presentValue",
+                zigbeeCommandOptions: {},
+                description: "Heat sensitivity level for automatic vent opening",
+                access: "ALL",
+                reporting: null,
+            }),
+            m.enumLookup({
+                name: "status",
+                lookup: {off: 0, on: 1, moving: 2, stuck: 3, middle: 4},
+                cluster: "genMultistateInput",
+                attribute: "presentValue",
+                zigbeeCommandOptions: {},
+                description: "Actual window status",
+                access: "STATE_GET",
+                reporting: null,
+            }),
+        ],
+        ota: true,
+    },
 ];