Collection of device converters to be used with zigbee-herdsman
Translation pending
Developer toolsTypeScript · JavaScriptGitHub @KoenkkSelf-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Collection of device converters to be used with zigbee-herdsman.
See Zigbee2MQTT how to support new devices.
You can use Github codespaces to create pull requests with a fully setup editor, right from your web browser:
Install the prerequisites:
npm install -g pnpm
pnpm install --frozen-lockfile
Before you submit a pull request, you should run the following commands to ensure your changes will pass the tests:
pnpm run check --fix
pnpm run build
pnpm test
If any of those commands finish with an error your PR won't pass the tests and will likely be rejected.
25.0.0
onEvent api, see https://github.com/Koenkk/zigbee-herdsman-converters/pull/9650 for more info.device argument has been added to postProcessConvertedFromZigbeeMessage (https://github.com/Koenkk/zigbee-herdsman-converters/pull/9693)rawData now needs to be provided to Fz.Message.meta (https://github.com/Koenkk/zigbee-herdsman-converters/pull/9775)24.0.0
definition.exposes(undefined, undefined), use definition.exposes({isDummyDevice: true}, {}) instead (#9601)23.0.0
Publish now has to be passed to toZigbee converters (#8875)22.0.0
addDefinition has been renamed to addExternalDefinitionzigbee-herdsman-converters does not expose all definitions anymore. Use this instead:(await import("zigbee-herdsman-converters/devices/index")).default.forEach((baseDefinition) => {
const d = zhc.prepareDefinition(baseDefinition);
});
21.0.0
20.0.0
key, in this case the converter should be used for any key.19.0.0
18.0.0
postProcessConvertedFromZigbeeMessage should be called now (for applying calibration/precision)17.0.0
index.ts are now async and return a Promise15.0.0
isUpdateAvailable now returns an object instead of a boolean (e.g. {available: true, currentFileVersion: 120, otaFileVersion: 125})updateToLatest now returns a number (fileVersion of the new OTA) instead of a void