Zigbee - Extending the capabilities of a Zigbee device

Hello All -
Brand new Home Assistant user here - built and deployed a mere 5 days ago - SmartThings (Kickstarter supporter!) refugee. I’ve been joining up the devices and I’m VERY close to replacing the SmartThings hub before its death date at the end of the month.

One thing I’ve run into is the inability to get a Multisensor to integrate with all its capabilities, in fact it is the exact issue here:

(I didn’t want to threadjack).

It comes in as a contact sensor only. I know it is functional for temperature, tilt and vibration - I had to recover it in Smartthings to get it to where I could evict it and was still registering data there.

I found where someone had the same experience on Hubitat it appears (when researching this issue): Issues with Multipurpose Sensor - #29 by jeubanks - 🎬 Get Started - Hubitat where someone was able to tweak the driver.

Is it possible to do so on Home Assistant?
Where would even begin looking into doing something like this?

I don’t know if it is a matter of getting the device reclassified or if it is a matter of defining the features the device has (extending the “class”?)

Is there a way to see what is interrogated from the device?

Thanks for any guidance!

Do you run Zigbee with the ZHA integration or doe you use Zigbee2MQTT or Deconz?

1 Like

I picked the first Zigbee in the Integrations :slight_smile: - I believe it is Zigbee Home Automation (ZHA I assume). I didn’t have MQTT set up - and wasn’t certain it was necessary and I was looking at fast path to testing if the hardware was setup correctly.

Hardware setup is a Core i5 with Proxmox - Nortek Zigbee/ZWave passed through on USB.

In retrospect as I move along I am beginning to wonder if I should have set up Zigbee2MQTT (and Zwave to MQTT) because at least for Zwave it appears to have a few more tools.

I’m also willing to flatten it all and start over as this has been a ‘learning’ experience as well.

However - at the heart of it is when looking at the forum I see others report the same experience with the device and that in the “other” forum someone developed “code” to fix the issue. I am hoping that something similar can be done here. I’ve been looking at replacing it if necessary but 1) I know it works (see earlier re-pair with ST0 and 2) I don’t see many devices which combine the same sensors - temperature, vibration, tilt, and low power zigbee.

Is that the info you needed?

Also - completely grasping at straws and looking for references to SmartThings and PGC313 and ran across this:

Line 8269 has:

    // SmartThings
        zigbeeModel: ['PGC313'],
        model: 'STSS-MULT-001',
        vendor: 'SmartThings',
        description: 'Multipurpose sensor',
        fromZigbee: [fz.ias_contact_alarm_1],
        toZigbee: [],
        exposes: [e.contact(), e.battery_low(), e.tamper()],

I don’t know if Home Assistant and the ZHA Integration use similar definitions - but the items exposed seem to be limited to contact, battery and tamper. I’m just guessing :slight_smile:

[EDIT] Derp. I just noticed you were talking about the 2013 version. I believe that is compatible with the 3300-S, but I’m not 100% certain.

This is the route I would go as the multipurpose sensors report all attributes with Zigbee2MQTT:

I believe the best chance of fixing this is zigbee2mqtt as it is quite simple to add new devices, and change existing ones.

1 Like

Thanks - really appreciate the responses. Didn’t want to abandon the thread, but I’ve been on an odyssey for the past 3 days trying to get zigbee2mqtt working. When I started this journey I thought I did the right research and got a Nortek HUSBZB to get Zwave and Zigbee in a single package where I could keep all my devices associated with a plug in radio package. It appears that the Nortek device is in early alpha support for zigbee2mqtt. So it has been 2 days of heavy struggle trying to get it to work and finally reaching out for support over there.

It will be exciting once I can get there… worst case I may have to get a new USB zigbee stick.

Depending on how many devices you have and/or want to support, I’d recommend going with an external coordinator. I’m using a CC2652P2 from Tube (Tube's ZB Coordinators and Routers (was Zigbee router on steroids?)). It runs on my network and allows me to place it anywhere I need it (I have mine basically in the middle of the house). Plus, it can support up to 100 child devices on its own.

1 Like

I’ve gotten one step further - I can attach to the device over USB!
One step back (or last hurdle) - can’t bring up the website - 502 Bad Gateway (sigh)

Looks like a really nice device @code-in-progress - a few questions if you don’t mind?
Does HA connect to it via IP?
Is that where “socat” comes into play?
Does it come pre-flashed?
Does it cause any power issues with the battery backed zigbee devices? (I’ve seen some recent posts through the rest of my research about particular radio sets causing excessive communication and battery drain).

Yes. I believe socat is used in the underpinnings, but it’s just using a serial socket from the coordinator (ZHA, Z2M, etc).


I’ve not seen any issues like that with my battery devices, but I have seen it reported as well. I think it really depends on the coordinator and the device definition.

Did you ever get this working? I used this sensor for vibration on a sump pump pipe in ST. I too am only getting contact/tamper/battery/lqi making it mostly useless for my use case.

I too am hitting same limitation, only seeing contact, tamper (? if even works), battery, and lqi. I originally tried ZHA, but had only contact (with lqi and rssi inactive). Trying mqtt and so far not seeing anything benefit.

Anyone else get the pgc313 multisensors to work beyond basic contact?

If you search this file for ‘multipurpose’ you will find 3 - the pgc313, the multi and the multiv4. Only the latter 2 have accel sensors defined.

You could try adding the accel sensors. If it works, try a PR.

Edit to add link zigbee-herdsman-converters/smartthings.js at a2b3136caee431b5d1937d4f891fb092ab3fec58 · Koenkk/zigbee-herdsman-converters · GitHub