Getting Samjin devices with the Zigbee protokoll in the Homey. Currently under development.
Thanks Mathias!
I have quite a few Samjin devices left over from SmartThings days and am looking forward to using them.
Will you be adding other devices such as the older contact sensors, smart plugs, motion sensors etc?
Regards,
I will gladly help add more devices. If you can pair the device to Homey as just Zigbee, then go to https://tools.developer.homey.app. To the left, look at Zigbee. A new panel will open on the device in the list. There are dots. Choose to interview; this takes a long time, a few minutes and a pop-up with the data I need. Then, a photo of the front and back of the device and a brief note on known capabilities. ok?
Thanks Mathias for such a quick reply. I’ll try to dig out my devices over this weekend and pair them the next weekend. Once I have the information, I’ll share them!
Cheers,
Benny
How is it going? Where you able to get some data on the devices?
Hi Mathias,
Having some trouble with the devices I dug out. Sorry I don’t quite know how to format the interview data that I received, but here it is. If someone could kindly explain how I should format the interview text, I will edit this post.
"ids": {
"modelId": "3200-Sgb",
"manufacturerName": "CentraLite"
},
"endpoints": {
"endpointDescriptors": [
{
"endpointId": 1,
"applicationProfileId": 260,
"applicationDeviceId": 256,
"applicationDeviceVersion": 0,
"_reserved1": 0,
"inputClusters": [
0,
3,
4,
5,
6,
2820,
2821
],
"outputClusters": [
25
]
}
],
"endpoints": {
"1": {
"clusters": {
"basic": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "zclVersion",
"value": 1,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 32,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 255,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 2,
"name": "stackVersion",
"value": 2,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 32,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 255,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 3,
"name": "hwVersion",
"value": 3,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 32,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 255,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 4,
"name": "manufacturerName",
"value": "CentraLite",
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 66,
"minInterval": 65535,
"maxInterval": 65535,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 5,
"name": "modelId",
"value": "3200-Sgb",
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 66,
"minInterval": 65535,
"maxInterval": 65535,
"status": "SUCCESS"
}
}
],
"commandsGenerated": [],
"commandsReceived": [
"factoryReset"
]
},
"identify": {
"attributes": [
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 0,
"name": "identifyTime",
"value": 0,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 33,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 65535,
"status": "SUCCESS"
}
}
],
"commandsGenerated": [
"identifyQuery.response"
],
"commandsReceived": [
"identify",
"identifyQuery"
]
},
"groups": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "nameSupport",
"value": {
"type": "Buffer",
"data": [
0
]
}
}
],
"commandsGenerated": [
"addGroup.response",
"viewGroup.response",
"getGroupMembership.response",
"removeGroup.response"
],
"commandsReceived": [
"addGroup",
"viewGroup",
"getGroupMembership",
"removeGroup",
"removeAllGroups",
"addGroupIfIdentify"
]
},
"scenes": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0
},
{
"acl": [
"readable",
"reportable"
],
"id": 1
},
{
"acl": [
"readable",
"reportable"
],
"id": 2
},
{
"acl": [
"readable",
"reportable"
],
"id": 3
},
{
"acl": [
"readable",
"reportable"
],
"id": 4
}
],
"commandsGenerated": [
0,
1,
2,
3,
4,
6
],
"commandsReceived": [
0,
1,
2,
3,
4,
5,
6
]
},
"onOff": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "onOff",
"value": true,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 16,
"minInterval": 1,
"maxInterval": 300,
"status": "SUCCESS"
}
}
],
"commandsGenerated": [],
"commandsReceived": [
"setOff",
"setOn",
"toggle"
]
},
"electricalMeasurement": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "measurementType",
"value": {
"type": "Buffer",
"data": [
1,
0,
0,
0
]
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 768,
"name": "acFrequency",
"value": 50
},
{
"acl": [
"readable",
"reportable"
],
"id": 1285,
"name": "rmsVoltage",
"value": 240
},
{
"acl": [
"readable",
"reportable"
],
"id": 1288,
"name": "rmsCurrent",
"value": 3
},
{
"acl": [
"readable",
"reportable"
],
"id": 1291,
"name": "activePower",
"value": 3
}
],
"commandsGenerated": [],
"commandsReceived": []
},
"diagnostics": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 33,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 65535,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 256,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 35,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 4294967295,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 257,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 35,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 4294967295,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 258,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 35,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 4294967295,
"status": "SUCCESS"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 259,
"reportingConfiguration": {
"direction": "reported",
"attributeDataType": 35,
"minInterval": 65535,
"maxInterval": 65535,
"minChange": 4294967295,
"status": "SUCCESS"
}
}
],
"commandsGenerated": [],
"commandsReceived": []
}
},
"bindings": {
"ota": {
"attributes": [],
"commandsGenerated": [],
"commandsReceived": []
}
}
}
}
}
It seems that these SmartThings Smartplugs are not samjin.
I’m still pulling out the other Smartthings devices.
Great I start looking into this.
You can test, Im not sure it will work, but lets start with paring.
Hi Mathias!
The smart plug pairs great! It was identified correctly and I can see all the flow cards.
However, it seems to be missing capability listener: On/Off.
Please let me know what other information I can provide for you.
I will loook in to what I have missed. Im busy this weekend so likely Monday next time I can dig in to the code.
I just released a new version for you to test
Thanks Mathias!
Tried the Smartthings smart plug again. Does not work yet. Still missing capability listener: On/Off.
Also tried it by restarting the app after installing 1.04. Did not work.
Also tried it by removing the device, wait a while, re-paired it back to homey. Also did not work.
Is there any other information or test I can do? Please let me know and I will try it.
Thanks!
Hi Mathias,
I dug out more smartthings devices today. Here is a water leak sensor interview data that I managed to pull out. It is currently paired as an unknown zigbee device
"ids": {
"modelId": "moisturev4",
"manufacturerName": "SmartThings"
},
"endpoints": {
"endpointDescriptors": [
{
"endpointId": 1,
"applicationProfileId": 260,
"applicationDeviceId": 1026,
"applicationDeviceVersion": 0,
"_reserved1": 0,
"inputClusters": [
0,
1,
3,
15,
32,
1026,
1280
],
"outputClusters": [
25
]
}
],
"endpoints": {
"1": {
"clusters": {
"basic": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "zclVersion",
"value": 1,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"name": "appVersion",
"value": 27,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 4,
"name": "manufacturerName",
"value": "SmartThings",
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 5,
"name": "modelId",
"value": "moisturev4",
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 7,
"name": "powerSource",
"value": "unknown",
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [],
"commandsReceived": [
"factoryReset"
]
},
"powerConfiguration": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 32,
"name": "batteryVoltage",
"value": 27,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [],
"commandsReceived": []
},
"identify": {
"attributes": [
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 0,
"name": "identifyTime",
"value": 0,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [
"identifyQuery.response"
],
"commandsReceived": [
"identify",
"identifyQuery"
]
},
"binaryInput": {
"attributes": [
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 81,
"name": "outOfService",
"value": false,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 85,
"name": "presentValue",
"value": false,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 111,
"name": "statusFlags",
"value": {
"type": "Buffer",
"data": [
0
]
},
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [],
"commandsReceived": []
},
"pollControl": {
"attributes": [
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 0,
"name": "checkInInterval",
"value": 0,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"name": "longPollInterval",
"value": 28,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 2,
"name": "shortPollInterval",
"value": 1,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 3,
"name": "fastPollTimeout",
"value": 40,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [
0
],
"commandsReceived": [
0,
"fastPollStop",
"setLongPollInterval",
"setShortPollInterval"
]
},
"temperatureMeasurement": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "measuredValue",
"value": 2878,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"name": "minMeasuredValue",
"value": 0,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 2,
"name": "maxMeasuredValue",
"value": 0,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [],
"commandsReceived": []
},
"iasZone": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "zoneState",
"value": "notEnrolled",
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"name": "zoneType",
"value": "standardCIE",
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 2,
"name": "zoneStatus",
"value": {
"type": "Buffer",
"data": [
32,
0
]
},
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 16,
"name": "iasCIEAddress",
"value": "00:12:4b:00:18:3e:1b:fc",
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 17,
"name": "zoneId",
"value": 0,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
],
"commandsGenerated": [
"zoneEnrollResponse",
"initiateNormalOperationMode"
],
"commandsReceived": [
"zoneEnrollResponse"
]
}
},
"bindings": {
"ota": {
"attributes": [],
"commandsGenerated": [],
"commandsReceived": []
}
}
}
}
}
Not uncommon SmartThings has both their own but also 3rd party devices under SmartThings brand. I will look into this