Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add W599501 Wiser Smoke Alarm to schneider_electric.js #6145

Closed
ronniebach opened this issue Sep 6, 2023 · 8 comments
Closed

Add W599501 Wiser Smoke Alarm to schneider_electric.js #6145

ronniebach opened this issue Sep 6, 2023 · 8 comments

Comments

@ronniebach
Copy link

I just got a new 230V edition of the Schneider Electric Wiser smoke alarm.
It reports itself as model: W599501 - which is not currently supported.

I managed to get it to work in Z2M by an external custom converter - based on the already supported model (W599001) in schneider_electric.js - which I think is the version only powered by battery.

So please just add the same functionality for the W599501 model as W599001

    zigbeeModel: ['W599001'],
    model: 'W599001',
    vendor: 'Schneider Electric',
    description: 'Wiser smoke alarm',
    fromZigbee: [fz.temperature, fz.battery, fz.ias_enroll, fz.ias_smoke_alarm_1],
    toZigbee: [],
    ota: ota.zigbeeOTA, // local OTA updates are untested
    exposes: [e.smoke(), e.battery_low(), e.tamper(), e.battery(), e.battery_voltage(),
        // the temperature readings are unreliable and may need more investigation.
        e.temperature(),
    ],
    configure: async (device, coordinatorEndpoint, logger) => {
        const endpoint = device.getEndpoint(20);
        const binds = ['msTemperatureMeasurement', 'ssIasZone', 'genPowerCfg'];
        await reporting.bind(endpoint, coordinatorEndpoint, binds);
        await reporting.batteryPercentageRemaining(endpoint);
        await reporting.batteryVoltage(endpoint);
        await reporting.temperature(endpoint);
        await endpoint.read('msTemperatureMeasurement', ['measuredValue']);
        await endpoint.read('ssIasZone', ['iasCieAddr', 'zoneState', 'zoneStatus', 'zoneId']);
        await endpoint.read('genPowerCfg', ['batteryVoltage', 'batteryPercentageRemaining']);
    },
@Koenkk
Copy link
Owner

Koenkk commented Sep 7, 2023

Added!

Changes will be available in the dev branch in a few hours from now. (https://www.zigbee2mqtt.io/advanced/more/switch-to-dev-branch.html)

@ronniebach
Copy link
Author

great. thanks @Koenkk :-)

@ronniebach
Copy link
Author

I see you removed the battery properties - which you should. Although this is a 230v mains connected it also has a built in battery and reports as well on that.

@Koenkk
Copy link
Owner

Koenkk commented Sep 8, 2023

Added the battery!

Changes will be available in the dev branch in a few hours from now. (https://www.zigbee2mqtt.io/advanced/more/switch-to-dev-branch.html)

@ronniebach
Copy link
Author

Great. It appears in Z2M overview with ?/Unknown POWER

How is this determined? It it hardcoded properties in the schneider_electric.js file - or is it retrieved in a status message from the device itself?
And does it behave as a router only if the coordinator knows it is non-battery powered?

@Koenkk
Copy link
Owner

Koenkk commented Sep 8, 2023

It's based on a property read from the device.

And does it behave as a router only if the coordinator knows it is non-battery powered?

Yes, the coordinator has no influence over the type (router/end device) of a device

@ronniebach
Copy link
Author

Just wondering....

I can see in other issues that you have fixed the ?/Unknown POWER

And fixed by hardcoding on the specific device? (here in xiaomi.js )

            device.powerSource = 'Mains (single phase)';
            device.save();

Koenkk/zigbee2mqtt#15568
2f98eac

@Koenkk
Copy link
Owner

Koenkk commented Sep 19, 2023

@ronniebach applied the fix!

Changes will be available in the dev branch in a few hours from now. (https://www.zigbee2mqtt.io/advanced/more/switch-to-dev-branch.html)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants