# Pointers for developing Zigbee Driver - Hobeian ZG-303Z - Soil Sensor

**URL:** <https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667>\
**Category:** Developers\
**Tags:** zigbee\
**Created:** [December 10, 2025, 11:06am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667 "2025-12-10T11:06:17Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 10, 2025, 11:06am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/1 "2025-12-10T11:06:17Z")

</div>

Hi,

I’m about to try to develop my first Zigbee driver to enable a soil sensor from Hobeian (Purchased from AliExpress).

The device synks up with Homey Pro 2013 as an unknown device.

After an interview I get these values;

```auto
"ids": {
    "modelId": "ZG-303Z",
    "manufacturerName": "HOBEIAN"
  },
  "endpoints": {
    "ieeeAddress": "a4:c1:38:6e:cc:98:be:0d",
    "networkAddress": 38982,
    "modelId": "ZG-303Z",
    "manufacturerName": "HOBEIAN",
    "endpointDescriptors": [
      {
        "status": "SUCCESS",
        "nwkAddrOfInterest": 38982,
        "_reserved": 22,
        "endpointId": 1,
        "applicationProfileId": 260,
        "applicationDeviceId": 770,
        "applicationDeviceVersion": 0,
        "_reserved1": 1,
        "inputClusters": [
          0,
          3,
          61184,
          1026,
          1029,
          1
        ],
        "outputClusters": [
          3
        ]
      }
    ],
    "deviceType": "enddevice",
    "receiveWhenIdle": false,
    "swBuildId": "0126082025",
    "capabilities": {
      "alternatePANCoordinator": false,
      "deviceType": false,
      "powerSourceMains": false,
      "receiveWhenIdle": false,
      "security": false,
      "allocateAddress": true
    },
    "extendedEndpointDescriptors": {
      "1": {
        "clusters": {
          "basic": {},
          "identify": {},
          "temperatureMeasurement": {},
          "relativeHumidity": {
            "commandsReceived": "UNSUP_GENERAL_COMMAND"
          },
          "powerConfiguration": {
            "attributes": [
              {
                "acl": [
                  "readable",
                  "reportable"
                ],
                "id": 32,
                "name": "batteryVoltage",
                "value": 30,
                "reportingConfiguration": {
                  "status": "NOT_FOUND",
                  "direction": "reported"
                }
              },
              {
                "acl": [
                  "readable",
                  "reportable"
                ],
                "id": 33,
                "name": "batteryPercentageRemaining",
                "value": 200,
                "reportingConfiguration": {
                  "status": "NOT_FOUND",
                  "direction": "reported"
                }
              },
              {
                "acl": [
                  "readable"
                ],
                "id": 65533,
                "name": "clusterRevision",
                "value": 1
              }
            ],
            "commandsGenerated": "UNSUP_GENERAL_COMMAND",
            "commandsReceived": "UNSUP_GENERAL_COMMAND"
          }
        },
        "bindings": {
          "identify": {}
        }
      }
    }
  }

```

When looking at zigbee2mtt homepage the device is there an a spec can be found for attributes (which does not seem to show up on the interview) [HOBEIAN ZG-303Z control via MQTT | Zigbee2MQTT](https://www.zigbee2mqtt.io/devices/ZG-303Z.html)

Can someone please point me to next steps, driver templates etc on how to proceed in the smartest way.

All the best.

//Michael

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [December 11, 2025, 5:33am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/2 "2025-12-11T05:33:01Z")

</div>

> [@Michael\_Edholm](#):
>
> Can someone please point me to next steps, driver templates etc on how to proceed in the smartest way.

Start [here](https://apps.developer.homey.app/wireless/zigbee)?

Also, the [Universal TUYA Zigbee app](https://community.homey.app/t/app-pro-universal-tuya-zigbee-device-app-test/140352) supposedly already supports this device.

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 11, 2025, 9:06am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/3 "2025-12-11T09:06:10Z")

</div>

> [@robertklep](#):
>
> [Universal TUYA Zigbee app](https://community.homey.app/t/app-pro-universal-tuya-zigbee-device-app-test/140352)

Thanks Robert.

I will try to continue reading up on how to proceed.  
I have checked the Universal TUYA Zigbee App but the device is not included there. There are four other Hobeian devices included but not the Soil Meter.

//Michael

---

<div class="post-metadata">

**Author:** ![Thunder](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/thunder/32/31836_2.png) [@Thunder](https://community.homey.app/u/Thunder)\
**Post date:** [December 11, 2025, 10:11am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/4 "2025-12-11T10:11:32Z")

</div>

Asking the developer in the community thread will most probably help soon.

> [@\[APP\]\[Pro\] Universal TUYA Zigbee Device App - test](https://community.homey.app/t/app-pro-universal-tuya-zigbee-device-app-test/140352):
>
> [APP][Pro] Universal TUYA Zigbee - Local-First Control GitHub: [GitHub - dlnraja/com.tuya.zigbee: new updated version](https://github.com/dlnraja/com.tuya.zigbee) Test app homey page: [Universal Tuya Zigbee | Homey](https://homey.app/fr-fr/app/com.dlnraja.tuya.zigbee/Universal-Tuya-Zigbee/test) \*\* Device finder helper comming soon \*\*: [Universal Tuya Zigbee - Smart Device Finder](https://dlnraja.github.io/com.tuya.zigbee/device-finder.html) Version: 3.1.1+ Status: Active Development | Test Phase bullseye Introduction Welcome to Universal TUYA Zigbee — a community-driven project focused on bringing reliable, local Zigbee control to Tuya devices (and compatible brands) on Home…

Please read the start-post.

---

<div class="post-metadata">

**Author:** ![dlnraja](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/dlnraja/32/129224_2.png) [@dlnraja](https://community.homey.app/u/dlnraja)\
**Post date:** [December 11, 2025, 2:30pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/5 "2025-12-11T14:30:09Z")

</div>

Yes I can add it with interview of all your devices

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [December 11, 2025, 2:33pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/6 "2025-12-11T14:33:21Z")

</div>

It was added previously: [https://github.com/dlnraja/com.tuya.zigbee/blob/21555d5ad06d4138d7156fd424108acdf91f0011/docs/support/PR47\_GITHUB\_RESPONSE.txt#L23](https://github.com/dlnraja/com.tuya.zigbee/blob/21555d5ad06d4138d7156fd424108acdf91f0011/docs/support/PR47_GITHUB_RESPONSE.txt#L23)

I guess your LLM has removed it again?

---

<div class="post-metadata">

**Author:** ![dlnraja](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/dlnraja/32/129224_2.png) [@dlnraja](https://community.homey.app/u/dlnraja)\
**Post date:** [December 11, 2025, 2:35pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/7 "2025-12-11T14:35:58Z")

</div>

Okay I will check

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 11, 2025, 10:08pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/8 "2025-12-11T22:08:19Z")

</div>

From what I can read in the code you are still waiting for;  
**Next Action** : Awaiting manufacturer ID confirmation

```
"modelId": "ZG-303Z",
"manufacturerName": "HOBEIAN"

```

//Michael

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 11, 2025, 10:46pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/9 "2025-12-11T22:46:33Z")

</div>

Ref [com.tuya.zigbee/docs/support/PR47\_SOIL\_MOISTURE\_REVIEW.md at 21555d5ad06d4138d7156fd424108acdf91f0011 · dlnraja/com.tuya.zigbee · GitHub](https://github.com/dlnraja/com.tuya.zigbee/blob/21555d5ad06d4138d7156fd424108acdf91f0011/docs/support/PR47_SOIL_MOISTURE_REVIEW.md#:~:text=PR47_SOIL_MOISTURE_REVIEW.md)

The HOBEIAN ZG-303Z has 2 AAA batteries. Not CR2032.

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 11, 2025, 11:01pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/10 "2025-12-11T23:01:29Z")

</div>

I found a scan made for the implementation in Home Assistant if it help;

```auto
  "data": {
    "version": 1,
    "ieee": " **REDACTED**",
    "nwk": "0xFDCA",
    "manufacturer": "HOBEIAN",
    "model": "ZG-303Z",
    "friendly_manufacturer": "HOBEIAN",
    "friendly_model": "ZG-303Z",
    "name": "HOBEIAN ZG-303Z",
    "quirk_applied": true,
    "quirk_class": "zhaquirks.tuya.builder.EnchantedDeviceV2",
    "quirk_id": null,
    "manufacturer_code": 4742,

```

Ref: [Add HOBEIAN ZG-303Z and Tuya soil sensor \_TZE200\_npj9bug3 by nschimme · Pull Request #4536 · zigpy/zha-device-handlers · GitHub](https://github.com/zigpy/zha-device-handlers/pull/4536)

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 11, 2025, 11:28pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/11 "2025-12-11T23:28:11Z")

</div>

I can see that the code is checked in the main branch any my Homey has the 5.5.153 version installed so it should work but it is still identified as unknown.  
Please tell me what I can do to support you with finding out what could be wrong. I have tested with two different units.

---

<div class="post-metadata">

**Author:** ![dlnraja](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/dlnraja/32/129224_2.png) [@dlnraja](https://community.homey.app/u/dlnraja)\
**Post date:** [December 12, 2025, 7:48am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/12 "2025-12-12T07:48:32Z")

</div>

it’s better to do an new interview to be sure that we have the good device to implement . go on [Homey Developer Tools](https://tools.developer.homey.app/tools/zigbee) and on your device clique on 3 dot and the interview button

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 12, 2025, 8:39am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/13 "2025-12-12T08:39:40Z")

</div>

The interview is in my first post.

---

<div class="post-metadata">

**Author:** ![dlnraja](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/dlnraja/32/129224_2.png) [@dlnraja](https://community.homey.app/u/dlnraja)\
**Post date:** [December 12, 2025, 9:28am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/14 "2025-12-12T09:28:19Z")

</div>

Hi Michael,

The **HOBEIAN ZG-303Z** is fully supported in the latest version (v5.5.162). The device is in the `soil_sensor` driver with:

- manufacturerName: `HOBEIAN`
- productId: `ZG-303Z`

**To fix the “unknown device” issue:**

1. Make sure you have the latest app version installed (v5.5.162)
2. **Remove the device** from Homey
3. **Re-pair the device** - this is required because Homey caches the driver match at pairing time

The driver also includes:

- Soil moisture (displayed as humidity %)
- Temperature
- Battery level
- Flow triggers for moisture/temperature thresholds

The battery type has been updated to include AAA (as you mentioned, 2x AAA).

Let me know if it works after re-pairing!

---

<div class="post-metadata">

**Author:** ![dlnraja](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/dlnraja/32/129224_2.png) [@dlnraja](https://community.homey.app/u/dlnraja)\
**Post date:** [December 12, 2025, 9:27am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/15 "2025-12-12T09:27:44Z")

</div>

Hi Michael,

The HOBEIAN ZG-303Z is fully supported in the latest version (v5.5.162). The device is in the `soil_sensor` driver with:

- manufacturerName: `HOBEIAN`
- productId: `ZG-303Z`

To fix the “unknown device” issue:

1. Make sure you have the latest app version installed (v5.5.162)
2. Remove the device from Homey
3. Re-pair the device - this is required because Homey caches the driver match at pairing time

The driver also includes:

- Soil moisture (displayed as humidity %)
- Temperature
- Battery level
- Flow triggers for moisture/temperature thresholds

The battery type has been updated to include AAA (as you mentioned, 2x AAA).

Let me know if it works after re-pairing!

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 12, 2025, 10:39am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/16 "2025-12-12T10:39:16Z")

</div>

> [@robertklep](#):
>
> [Universal TUYA Zigbee app](https://community.homey.app/t/app-pro-universal-tuya-zigbee-device-app-test/140352)

It’s a no-go still ☹

Confirm version 5.5.163  
Removed it via Developer Tools  
Re-paired via regular app

Still Unknown. What’s the easiest way to get a loggfile from the Homey so I can see what is actually happening behind the scenes?

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 12, 2025, 10:46am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/17 "2025-12-12T10:46:04Z")

</div>

I paired it with my Home Assistant where it showed up nicely.

I have the logfile if it can help in the details on how it present itself.

---

<div class="post-metadata">

**Author:** ![robertklep](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/robertklep/32/160628_2.png) [@robertklep](https://community.homey.app/u/robertklep)\
**Post date:** [December 12, 2025, 10:54am UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/18 "2025-12-12T10:54:33Z")

</div>

> [@Michael\_Edholm](#):
>
> What’s the easiest way to get a loggfile from the Homey so I can see what is actually happening behind the scenes?

> [@\[Modding\]\[HowTo\] Guide to Jailbreak a Homey Pro 2023](https://community.homey.app/t/modding-howto-guide-to-jailbreak-a-homey-pro-2023/81678):
>
> Disclaimer: Jailbreaking your Homey Pro may void its warranty and potentially cause irreversible damage. Proceed at your own risk. Note: It is recommended to create a backup of your Homey Pro before proceeding with the jailbreak process green_circle Pro about jailbreaking green_circleHardware Utilization: By modifying the software on your Homey Pro, you can take full advantage of the capabilities of the Raspberry Pi CM4 module. This allows for more efficient resource utilization, potential…

---

<div class="post-metadata">

**Author:** ![dlnraja](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/dlnraja/32/129224_2.png) [@dlnraja](https://community.homey.app/u/dlnraja)\
**Post date:** [December 12, 2025, 2:23pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/19 "2025-12-12T14:23:30Z")

</div>

Hi Michael, v5.5.164 just published - fixed the issue where HOBEIAN ZG-303Z wasn’t being matched to the soil\_sensor driver. Please update and re-pair the device.

---

<div class="post-metadata">

**Author:** ![Michael\_Edholm](https://avatars.discourse-cdn.com/v4/letter/m/bc79bd/32.png) [@Michael\_Edholm](https://community.homey.app/u/Michael_Edholm)\
**Post date:** [December 12, 2025, 10:59pm UTC](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667/20 "2025-12-12T22:59:22Z")

</div>

Confirm it’s working.

Thank you for your support and help. Please tell me if I can assist you in any way.

[Next page](https://community.homey.app/t/pointers-for-developing-zigbee-driver-hobeian-zg-303z-soil-sensor/146667.md?page=2)
