Koenkk / Koenkk/zigbee2mqtt

[New device support]: Orvibo MixSense S361

Open Beginner friendly
#32,587 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

new device support stale
Dominant language
TypeScript
Stars
15.7k
Forks
2k
Avg merge
18h 55m
Merged PRs (30d)
35

Description

Link

https://zaq29kpjbx.feishu.cn/wiki/FADBwavkiihjHIkWmeWcdLWsnqe

Database entry

{"id":2,"type":"Router","ieeeAddr":"0x08b95ffffe3a49f6","nwkAddr":8919,"manufId":4633,"manufName":"Orvibo","powerSource":"Mains (single phase)","modelId":"00000008c7","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":263,"inClusterList":[0,3,1024,1030,2821,65216],"outClusterList":[3,25],"clusters":{"msIlluminanceMeasurement":{"attributes":{"measuredValue":1}},"genBasic":{"attributes":{"40961":"","modelId":"00000008c7","manufacturerName":"MultIR","powerSource":1,"zclVersion":3,"appVersion":6,"stackVersion":1,"hwVersion":1,"dateCode":"20250829","swBuildId":"0.1.7"}},"msOccupancySensing":{"attributes":{"41475":1,"41477":3,"41478":15,"41488":0,"42000":0,"42240":0,"43009":1,"occupancy":0}},"genOta":{"attributes":{"manufacturerId":4633,"imageTypeId":19}},"genIdentify":{"attributes":{"identifyTime":0}}},"binds":[{"cluster":1024,"type":"endpoint","deviceIeeeAddress":"0x0c4314fffe402065","endpointID":1},{"cluster":1030,"type":"endpoint","deviceIeeeAddress":"0x0c4314fffe402065","endpointID":1},{"cluster":3,"type":"endpoint","deviceIeeeAddress":"0x0c4314fffe402065","endpointID":1}],"configuredReportings":[{"cluster":1024,"attrId":0,"minRepIntval":10,"maxRepIntval":3600,"repChange":5},{"cluster":1030,"attrId":0,"minRepIntval":10,"maxRepIntval":60,"repChange":0},{"cluster":3,"attrId":0,"minRepIntval":60,"maxRepIntval":3600,"repChange":0}],"meta":{}}},"appVersion":6,"stackVersion":1,"hwVersion":1,"dateCode":"20250829","swBuildId":"0.1.7","zclVersion":3,"interviewCompleted":true,"meta":{"configured":332242049},"lastSeen":1784292126030}

Zigbee2MQTT version

1.42.0

External definition
const {illuminance, occupancy} = require('zigbee-herdsman-converters/lib/modernExtend');

const definition = {
    zigbeeModel: ['00000008c7'],
    model: 'S361',
    vendor: 'Orvibo',
    description: 'Orvibo MixSense S361',
    extend: [illuminance(), occupancy()],
    meta: {},
};

module.exports = definition;
What does/doesn't work with the external definition?
Image
Notes

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start from the supplied external JavaScript definition and compare it with existing Zigbee2MQTT device definitions for the Orvibo S361 model and 00000008c7 identifier. Verify the database entry's illuminance and occupancy capabilities, then confirm the device is recognized and both exposed values work as expected.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, typescript
Domain
embedded-iot
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
74/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.