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

Eglo Remote 99099 #14786

Closed
MeisterAdebar opened this issue Nov 3, 2022 · 84 comments
Closed

Eglo Remote 99099 #14786

MeisterAdebar opened this issue Nov 3, 2022 · 84 comments
Labels
new device support New device support request stale Stale issues

Comments

@MeisterAdebar
Copy link

MeisterAdebar commented Nov 3, 2022

Link

https://www.obi.de/eglo-connect-leuchten/eglo-fernbedienung-zigbee-remote-2-0-schwarz-1-5-v/p/9358508?wt_mc=gs.pla.Wohnen.LampenLeuchten.SmartHomeLampen&wt_cc1=661774050&wt_cc2=9358508&wt_cc4=c&wt_cc5=138830890790&wt_cc8=pla-online&wt_cc9=41959169468&storeId=&gclid=CjwKCAjwzY2bBhB6EiwAPpUpZifVf78rBsn2vkeHoPK-8I7WIxqcgVRGgguK0LRT5_EZmZqKIhkHtxoCtqUQAvD_BwE&et_uk=b73c649be45745a48f914be2ef7f1500ps://www.obi.de/eglo-connect-leuchten/eglo-fernbedienung-zigbee-remote-2-0-schwarz-1-5-v/p/9358508?wt_mc=gs.pla.Wohnen.LampenLeuchten.SmartHomeLampen&wt_cc1=661774050&wt_cc2=9358508&wt_cc4=c&wt_cc5=138830890790&wt_cc8=pla-online&wt_cc9=41959169468&storeId=&gclid=CjwKCAjwzY2bBhB6EiwAPpUpZifVf78rBsn2vkeHoPK-8I7WIxqcgVRGgguK0LRT5_EZmZqKIhkHtxoCtqUQAvD_BwE&et_uk=b73c649be45745a48f914be2ef7f1500

Database entry

{"id":20,"type":"EndDevice","ieeeAddr":"0xa4c1386c5a0939dc","nwkAddr":58315,"manufId":4417,"manufName":"AwoX","modelId":"TLSR82xx","epList":[1,3],"endpoints":{"1":{"profId":260,"epId":1,"devId":2048,"inClusterList":[0,3,4,4096],"outClusterList":[0,3,4,5,6,8,768,4096],"clusters":{"genBasic":{"attributes":{"modelId":"TLSR82xx","manufacturerName":"AwoX"}}},"binds":[],"configuredReportings":[],"meta":{}},"3":{"epId":3,"inClusterList":[],"outClusterList":[],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"interviewCompleted":false,"meta":{},"lastSeen":1667474038591,"defaultSendRequestWhen":"immediate"}

Comments

Hello,

I bought this remote control yesterday, an employee was kind enough to look for the remote control out of a large box that was still on a pallet, today the supplier comes and puts the goods on the shelf.

in the configuration.yaml I added:

external_converters:

  • WSDCGQ01LM.js

I'm only failing at the on/off buttons.

I've already tried other converters, but I think fz.command_on/fz.command_on is the right choice.

debug 2022-11-03 12:38:24Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandOff', cluster 'genOnOff', data '{}' from endpoint 1 with groupID 32778 debug 2022-11-03 12:38:24No converter available for '33951/33948' with cluster 'genOnOff' and type 'commandOff' and data '{}' debug 2022-11-03 12:38:25Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandOn', cluster 'genOnOff', data '{}' from endpoint 1 with groupID 32778 debug 2022-11-03 12:38:25No converter available for '33951/33948' with cluster 'genOnOff' and type 'commandOn' and data '{}'

Can anyone explain what I haven't implemented correctly yet ?

External converter

const [ konst]  fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;

const definition = {
    zigbeeModel: ['TLSR82xx'], // The model ID from: Device with modelID 'lumi.sens' is not supported.
    model: '99099', // Vendor model number, look on the device for a model number
    vendor: 'Eglo', // Vendor of the device (only used for documentation and startup logging)
    description: 'Eglo Remote Connect.Z', // Description of the device, copy from vendor site. (only used for documentation and startup logging)
    fromZigbee: [fz.command_on, fz.command_on],
    toZigbee: [],
    exposes: [e.battery(), e.temperature(), e.humidity()],
};

module.exports = definition;

Supported color modes

No response

Color temperature range

No response

@MeisterAdebar MeisterAdebar added the new device support New device support request label Nov 3, 2022
@MeisterAdebar
Copy link
Author

MeisterAdebar commented Nov 3, 2022

I think the problem is the same modelId (TLSR82xx), like this one in awox.js ?

{
        zigbeeModel: ['TLSR82xx'],
        model: '33951/33948',
        vendor: 'AwoX',
        description: 'LED white',
        extend: extend.light_onoff_brightness(),
        whiteLabel: [{vendor: 'EGLO', model: '12229'}],
    }

That's probably the reason why I don't get the ...is NOT supported... .

The device will appear as this recognized.

@Koenkk
Copy link
Owner

Koenkk commented Nov 3, 2022

What z2m version are you using?

@MeisterAdebar
Copy link
Author

1.28.1

@Koenkk
Copy link
Owner

Koenkk commented Nov 3, 2022

External converters override the z2m ones. Make sure you add it correctly to the z2m configuration.yaml. There is one syntax error btw: const [ konst] fz = require('zigbee-herdsman-converters/converters/fromZigbee'); -> const fz = require('zigbee-herdsman-converters/converters/fromZigbee');

@MeisterAdebar
Copy link
Author

MeisterAdebar commented Nov 3, 2022

Ok, syntax error fixed, now when I press a key I get:

debug 2022-11-03 18:27:27Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandOff', cluster 'genOnOff', data '{}' from endpoint 1 with groupID 32778
warning 2022-11-03 18:27:27Received message from unsupported device with Zigbee model 'undefined' and manufacturer name 'undefined'
warning 2022-11-03 18:27:27Please see: https://www.zigbee2mqtt.io/advanced/support-new-devices/01_support_new_devices.html
homeassistant: false
permit_join: true
mqtt:
  base_topic: zigbee2mqtt
  server: mqtt://localhost
  user: moi
  password: bliblablub
serial:
  adapter: deconz
  port: >-
    /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE2439900-if00
advanced:
  network_key:
    - 179
    - 30
    - 86
    - 35
    - 163
    - 160
    - 181
    - 10
    - 34
    - 190
    - 238
    - 93
    - 66
    - 249
    - 179
    - 131
  log_level: debug
  external_converters:
    - TLSR82xx.js
frontend:
  port: 8080
  host: 192.168.x.x
  auth_token: bliblablub
devices:
  '0x00158d000360ba24':
    friendly_name: '0x00158d000360ba24'
  '0x00158d0003274a6c':
    friendly_name: '0x00158d0003274a6c'
  '0x00158d000340eac3':
    friendly_name: '0x00158d000340eac3'
  '0x00158d0003609724':
    friendly_name: '0x00158d0003609724'
  '0x00158d0003602b8a':
    friendly_name: '0x00158d0003602b8a'
  '0x00158d000302cc1e':
    friendly_name: '0x00158d000302cc1e'
  '0x00158d0003278378':
    friendly_name: '0x00158d0003278378'
  '0x00158d0002fdc5d7':
    friendly_name: '0x00158d0002fdc5d7'
  '0x00158d00028aedf7':
    friendly_name: '0x00158d00028aedf7'
  '0x00158d0003e5ee0c':
    friendly_name: '0x00158d0003e5ee0c'
  '0x00158d0002fd8bb4':
    friendly_name: '0x00158d0002fd8bb4'
  '0x00158d00047d3f22':
    friendly_name: '0x00158d00047d3f22'
  '0x00158d0004038f6b':
    friendly_name: '0x00158d0004038f6b'
  '0x00158d000411c41c':
    friendly_name: '0x00158d000411c41c'
  '0x00158d00031c22fa':
    friendly_name: '0x00158d00031c22fa'
  '0x2c1165fffedecf76':
    friendly_name: '0x2c1165fffedecf76'
  '0x00158d000411b050':
    friendly_name: '0x00158d000411b050'
  '0x00158d00032c6d54':
    friendly_name: '0x00158d00032c6d54'
  '0x04cd15fffea4c6ad':
    friendly_name: '0x04cd15fffea4c6ad'
  '0xa4c1386c5a0939dc':
    friendly_name: '0xa4c1386c5a0939dc'
\n\nadvanced:\n    network_key: GENERATE
blocklist: []
-rw-r--r--  1 pi pi  1926 Nov  3 17:52 configuration.yaml
-rw-r--r--  1 pi pi 19117 Nov  3 17:52 database.db
drwxr-xr-x 12 pi pi  4096 Nov  3 15:15 log
-rw-r--r--  1 pi pi    19 Nov  3 10:34 secret.yaml
-rw-r--r--  1 pi pi  3785 Nov  3 17:52 state.json
-rw-r--r--  1 pi pi  1309 Nov  3 14:39 TLSR82xx.js
const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;


const definition = {
    zigbeeModel: ['TLSR82xx'], // The model ID from: Device with modelID 'lumi.sens' is not supported.
    model: '99099', // Vendor model number, look on the device for a model number
    vendor: 'Eglo', // Vendor of the device (only used for documentation and startup logging)
    description: 'Eglo Remote Connect.Z', // Description of the device, copy from vendor site. (only used for documentation and startup logging)
    fromZigbee: [fz.command_on, fzLocal.colors, fzLocal.refresh, fzLocal.refreshColored, fz.command_off,
            fz.command_step, fz.command_move, fz.command_stop, fz.command_recall, fz.command_step_color_temperature],
    toZigbee: [],
    exposes: [e.battery(), e.temperature(), e.humidity()],
};

module.exports = definition;

@Koenkk
Copy link
Owner

Koenkk commented Nov 3, 2022

external_converters should not be under advanced (move it one tab to the left)

@MeisterAdebar
Copy link
Author

Thank you so much, everything should be the same then

model: '33952',
        vendor: 'AwoX',
        description: 'Remote controller',
        fromZigbee: [fz.command_on, fzLocal.colors, fzLocal.refresh, fzLocal.refreshColored, fz.command_off,
            fz.command_step, fz.command_move, fz.command_stop, fz.command_recall, fz.command_step_color_temperature],
        toZigbee: [],
        exposes: [e.action(['on', 'off', 'red', 'refresh', 'refresh_colored', 'blue', 'yellow',
            'green', 'brightness_step_up', 'brightness_step_down', 'brightness_move_up', 'brightness_move_down', 'brightness_stop',
            'recall_1', 'color_temperature_step_up', 'color_temperature_step_down'])],
    },

I'll deal with that later, I mean, only the two favorite keys would have to be added.

Maybe the instructions should be adjusted:

https://www.zigbee2mqtt.io/advanced/support-new-devices/01_support_new_devices.html#_1-pairing-the-device-with-zigbee2mqtt

@Koenkk
Copy link
Owner

Koenkk commented Nov 3, 2022

The instructions are correct, external_converters is not indented:

Screenshot 2022-11-03 at 19 40 43

@MeisterAdebar
Copy link
Author

I've now found the following, I'm dealing with it for the first time, and so far, even after a very long test, I haven't been able to determine exactly how to pair it:

I copied this template 1:1:

        model: '33952',
        vendor: 'AwoX',
        description: 'Remote controller',

with externals converters:

const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;

const awoxRemoteHelper = {
    convertToColorName: (buffer) => {
        const commonForColors = buffer[0] === 17 && buffer[2] === 48 && buffer[3] === 0 && buffer[5] === 8 && buffer[6] === 0;

        if (commonForColors && buffer[4] === 255) {
            return 'red';
        } else if (commonForColors && buffer[4] === 42) {
            return 'yellow';
        } else if (commonForColors && buffer[4] === 85) {
            return 'green';
        } else if (commonForColors && buffer[4] === 170) {
            return 'blue';
        }
        return null;
    },
    isRefresh: (buffer) => {
        return buffer[0] === 17 && buffer[2] === 16 && buffer[3] === 1 && buffer[4] === 1;
    },
};

const fzLocal = {
    colors: {
        cluster: 'lightingColorCtrl',
        type: ['raw'],
        convert: (model, msg, publish, options, meta) => {
            const color = awoxRemoteHelper.convertToColorName(msg.data);
            if (color != null) {
                return {
                    action: color,
                };
            }
        },
    },
    refreshColored: {
        cluster: 'lightingColorCtrl',
        type: ['commandMoveHue'],
        convert: (model, msg, publish, options, meta) => {
            if (msg.data.movemode === 1 && msg.data.rate === 12) {
                return {
                    action: 'refresh_colored',
                };
            }
        },
    },
    refresh: {
        cluster: 'genLevelCtrl',
        type: ['raw'],
        convert: (model, msg, publish, options, meta) => {
            if (awoxRemoteHelper.isRefresh(msg.data)) {
                return {
                    action: 'refresh',
                };
            }
        },
    },
};


const definition = {
        fingerprint: [
            {
                type: 'EndDevice', manufacturerName: 'AwoX', modelID: 'TLSR82xx', powerSource: 'Battery', endpoints: [
                    {ID: 1, profileID: 260, deviceID: 2048, inputClusters: [0, 3, 4, 4096], outputClusters: [0,3,4,5,6,8,768,4096]},
                ],
            },
        ],
    zigbeeModel: ['TLSR82xx'], // The model ID from: Device with modelID 'lumi.sens' is not supported.
    model: '99099', // Vendor model number, look on the device for a model number
    vendor: 'Eglo', // Vendor of the device (only used for documentation and startup logging)
    description: 'Eglo Remote Connect.Z', // Description of the device, copy from vendor site. (only used for documentation and startup logging)
    fromZigbee: [fz.command_on, fz.command_off, fzLocal.colors, fzLocal.refresh, fzLocal.refreshColored, fz.command_step, fz.command_move, fz.command_stop, fz.command_recall, fz.command_step_color_temperature],
    toZigbee: [],
    exposes: [e.action(['on', 'off', 'red', 'refresh', 'refresh_colored', 'blue', 'yellow',
            'green', 'brightness_step_up', 'brightness_step_down', 'brightness_move_up', 'brightness_move_down', 'brightness_stop',
            'recall_1', 'color_temperature_step_up', 'color_temperature_step_down'])],
};

module.exports = definition;

Everything works, except for the keys 1,2,3, nothing is recognized there?
How can that be, they only send via Bluetooth?

If I remove external_converters from the configuration.yaml, the remote control is displayed as:

zigbeeModel: ['TLSR82xx'],
       model: '33951/33948',
       vendor: 'AwoX',
       description: 'LED white',

Can you do something with this information and see where the problem lies?
If the buttons 1,2,3 really don't send anything, the remote control should be called

        model: '33952',
        vendor: 'AwoX',
        description: 'Remote controller',

be recognized in the future and simply add 99099 to model

@MeisterAdebar MeisterAdebar changed the title [New device support]: Eglo Remote Nov 5, 2022
@MeisterAdebar MeisterAdebar changed the title Eglo Remote Eglo Remote 99099 Nov 5, 2022
@MeisterAdebar
Copy link
Author

The two remotes are different.

I'm ready now:

const fz = require('zigbee-herdsman-converters/converters/fromZigbee');
const tz = require('zigbee-herdsman-converters/converters/toZigbee');
const exposes = require('zigbee-herdsman-converters/lib/exposes');
const reporting = require('zigbee-herdsman-converters/lib/reporting');
const extend = require('zigbee-herdsman-converters/lib/extend');
const e = exposes.presets;
const ea = exposes.access;

const awoxRemoteHelper = {
    convertToColorName: (buffer) => {
        const commonForColors = buffer[0] === 17 && buffer[2] === 48 && buffer[3] === 0 && buffer[5] === 8 && buffer[6] === 0;

        if (commonForColors && buffer[4] === 255) {
            return 'red';
        } else if (commonForColors && buffer[4] === 85) {
            return 'green';
        } else if (commonForColors && buffer[4] === 170) {
            return 'blue';
        }
        return null;
    },
    isRefresh: (buffer) => {
        return buffer[0] === 17 && buffer[2] === 16 && buffer[3] === 1 && buffer[4] === 1;
    },
};

const fzLocal = {
    colors: {
        cluster: 'lightingColorCtrl',
        type: ['raw'],
        convert: (model, msg, publish, options, meta) => {
            const color = awoxRemoteHelper.convertToColorName(msg.data);
            if (color != null) {
                return {
                    action: color,
                };
            }
        },
    },
    refreshColored: {
        cluster: 'lightingColorCtrl',
        type: ['commandMoveHue'],
        convert: (model, msg, publish, options, meta) => {
            if (msg.data.movemode === 1 && msg.data.rate === 12) {
                return {
                    action: 'refresh_colored',
                };
            }
        },
    },
    refresh: {
        cluster: 'genLevelCtrl',
        type: ['raw'],
        convert: (model, msg, publish, options, meta) => {
            if (awoxRemoteHelper.isRefresh(msg.data)) {
                return {
                    action: 'refresh',
                };
            }
        },
    },
};


const definition = {
        fingerprint: [
            {
                type: 'EndDevice', manufacturerName: 'AwoX', modelID: 'TLSR82xx', powerSource: 'Battery', endpoints: [
                    {ID: 1, profileID: 260, deviceID: 2048, inputClusters: [0, 3, 4, 4096], outputClusters: [0,3,4,5,6,8,768,4096]},
                ],
            },
        ],
    zigbeeModel: ['TLSR82xx'], // The model ID from: Device with modelID 'lumi.sens' is not supported.
    model: '99099', // Vendor model number, look on the device for a model number
    vendor: 'Eglo', // Vendor of the device (only used for documentation and startup logging)
    description: 'Eglo Remote Connect.Z', // Description of the device, copy from vendor site. (only used for documentation and startup logging)
    fromZigbee: [fz.command_on, fz.command_off,
                fzLocal.colors, fzLocal.refresh,
                fz.command_step,
                fz.command_recall,
                fz.command_move_to_color_temp, fz.command_step_color_temperature],
    toZigbee: [],
    exposes: [e.action(['on', 'off',
            'red', 'green', 'blue', 'refresh',
            'brightness_step_up', 'brightness_step_down',
            'recall_1','recall_2',
            'color_temperature_step_up', 'color_temperature_step_down', 'color_temperature_move'])],
};

module.exports = definition;

What's missing are the long button presses, I haven't quite understood that yet.

debug 2022-11-05 13:38:52Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandMoveToLevelWithOnOff', cluster 'genLevelCtrl', data '{"level":254,"transtime":4}' from endpoint 1 with groupID 32779
debug 2022-11-05 13:38:52No converter available for '99099' with cluster 'genLevelCtrl' and type 'commandMoveToLevelWithOnOff' and data '{"level":254,"transtime":4}'
debug 2022-11-05 13:38:58Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandMoveToLevelWithOnOff', cluster 'genLevelCtrl', data '{"level":1,"transtime":4}' from endpoint 1 with groupID 32779
debug 2022-11-05 13:38:58No converter available for '99099' with cluster 'genLevelCtrl' and type 'commandMoveToLevelWithOnOff' and data '{"level":1,"transtime":4}'

@Koenkk
Copy link
Owner

Koenkk commented Nov 6, 2022

Add fz.command_move_to_level to fromZigbee

@MeisterAdebar
Copy link
Author

Many Thanks.

now all buttons work, there are no more "No converter available for ..." messages.

If something needs to be added now, I just don't know what and you would have to point it out to me.

With point 4 of the instructions I don't know what I have to do at first, I've never done it before, I have to deal with it, I would prefer you to check it in.

I have one more question, because I have no idea about it (of javascript I don't know at all).

Does it have to be that these keys are always followed by "action":"on"?

fzLocal.colors, fzLocal.refresh,
fz.command_move_to_color_temp, fz.command_step_color_temperature

@Koenkk
Copy link
Owner

Koenkk commented Nov 6, 2022

Does it have to be that these keys are always followed by "action":"on"?

Can you explain this more? I don't know what you mean.

@MeisterAdebar
Copy link
Author

MeisterAdebar commented Nov 6, 2022

debug 2022-11-06 14:49:33Received Zigbee message from '0xa4c1386c5a0939dc', type 'raw', cluster 'lightingColorCtrl', data '{"data":[17,31,48,0,255,8,0],"type":"Buffer"}' from endpoint 1 with groupID 32779
info 2022-11-06 14:49:33MQTT publish: topic 'zigbee2mqtt/0xa4c1386c5a0939dc', payload '{"action":"red","linkquality":95}'
debug 2022-11-06 14:49:33Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandOn', cluster 'genOnOff', data '{}' from endpoint 1 with groupID 32779
info 2022-11-06 14:49:33MQTT publish: topic 'zigbee2mqtt/0xa4c1386c5a0939dc', payload '{"action":"on","action_group":32779,"linkquality":95}'
debug 2022-11-06 14:49:40Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandStepColorTemp', cluster 'lightingColorCtrl', data '{"maximum":0,"minimum":0,"stepmode":1,"stepsize":32,"transtime":4}' from endpoint 1 with groupID 32779
info 2022-11-06 14:49:40MQTT publish: topic 'zigbee2mqtt/0xa4c1386c5a0939dc', payload '{"action":"color_temperature_step_up","action_group":32779,"action_step_size":32,"action_transition_time":0.04,"linkquality":95}'
debug 2022-11-06 14:49:40Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandOn', cluster 'genOnOff', data '{}' from endpoint 1 with groupID 32779
info 2022-11-06 14:49:40MQTT publish: topic 'zigbee2mqtt/0xa4c1386c5a0939dc', payload '{"action":"on","action_group":32779,"linkquality":95}'
debug 2022-11-06 14:49:43Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandMoveToColorTemp', cluster 'lightingColorCtrl', data '{"colortemp":454,"transtime":4}' from endpoint 1 with groupID 32779
info 2022-11-06 14:49:43MQTT publish: topic 'zigbee2mqtt/0xa4c1386c5a0939dc', payload '{"action":"color_temperature_move","action_color_temperature":454,"action_group":32779,"action_transition_time":4,"linkquality":95}'
debug 2022-11-06 14:49:43Received Zigbee message from '0xa4c1386c5a0939dc', type 'commandOn', cluster 'genOnOff', data '{}' from endpoint 1 with groupID 32779
info 2022-11-06 14:49:43MQTT publish: topic 'zigbee2mqtt/0xa4c1386c5a0939dc', payload '{"action":"on","action_group":32779,"linkquality":95}'

@MeisterAdebar
Copy link
Author

and one more question, I only bought the remote control because of the three channels (1,2,3). Nothing arrives, why will that be the case?

@Koenkk
Copy link
Owner

Koenkk commented Nov 6, 2022

Does it have to be that these keys are always followed by "action":"on"?

This matches with what the device sends so yes.

I only bought the remote control because of the three channels (1,2,3). Nothing arrives, why will that be the case?

Are these separate buttons?

@MeisterAdebar
Copy link
Author

Are these separate buttons?

look at the link above

@Koenkk
Copy link
Owner

Koenkk commented Nov 6, 2022

Is anything logged to the herdsman debug log when pressing these buttons?

See https://www.zigbee2mqtt.io/guide/usage/debug.html on how to enable the herdsman debug logging. Note that this is only logged to STDOUT and not to log files.

@MeisterAdebar
Copy link
Author

nothing

@MeisterAdebar
Copy link
Author

MeisterAdebar commented Nov 6, 2022

funny, if I press the buttons (1,2,3) for 10 seconds, I can pair and control them with one of my Müller Tint GU10.

With
DEBUG=zigbee-herdsman* npm start
I still see nothing

how do i get it unpaired now? ¯_(ツ)_/¯

@Koenkk
Copy link
Owner

Koenkk commented Nov 7, 2022

how do i get it unpaired now? ¯_(ツ)_/¯

try resetting the bulb

I think the buttons somehow use a proprietary protocol. To figure out how this work it needs to be reverse engineered when used via the original hub (sniff). https://www.zigbee2mqtt.io/advanced/zigbee/04_sniff_zigbee_traffic.html

@MeisterAdebar
Copy link
Author

try resetting the bulb

Thank you.

to all who read here.

(In the case of lights paired directly with the remote control, the switching status is not transmitted to z2m.)

To unpair (reset) the remote control with the lamp, you have to switch the lamp on and off 5 times.

It is not necessary to repair the light in z2m.

To figure out how this work it needs to be reverse engineered when used via the original hub (sniff).

That's why I won't buy a gateway from Eglo Connect.Z.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 8, 2022

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

@github-actions github-actions bot added the stale Stale issues label Dec 8, 2022
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Dec 16, 2022
@Stegi02345
Copy link

will this remote be in the next version of z2m that i dont have to use un external converter?

@m1k3f15h
Copy link

Hello,

How is the Status here?
Did the remote work?

Mike :)

@ustix
Copy link

ustix commented Feb 5, 2024

Good evening, Sorry for my English, I'm French. The remote control works quite well and I understood the 3 groups with the keys 1,2,3 -> Group 32778 32779 32780. 1- how to add the blue red and green keys 2- Is it possible to change the group number when purchasing a second remote control?

THANKS

Do you mean you can use the 1,2,3 buttons somehow? The color buttons are working with the external converter as intended.

@msaphoto06
Copy link

YES! The buttons are associated with the groups mentioned.
Just create a group with id 32778 for button 1
By pressing 1, only the group reacts to the command.
ditto 2 and 3..

@Pirupuku
Copy link

Pirupuku commented Feb 5, 2024

I had to debug through it and check the payload of each color to get them to work.

How do the buttons 1, 2 and 3 work? What do you mean by making a group?

@msaphoto06
Copy link

In z2m, create a group with id code 32778 (1) 32779 (2) 32780 (3)
in each group you add the devices (one or more)
when pressing 1, the remote control sends the command to group 32778, same as 2 and 3...
In addition, I discovered that the remote control memorized the state of each group by remaining pressed on heart 1 and heart 2...
which creates 2 stored scenes for each group.

how to proceed in debugging.. I'm fairly new to z2m.
I just see "on" instead of "red" or "green"

@Pirupuku
Copy link

Pirupuku commented Feb 6, 2024

Can you show me an example with the groups and group ids? I am fairly new myself :D

For debugging:
Go to -> File Editor -> homeassistant/zigbee2mqtt/configuration.yaml and add these lines

advanced:
  - log_level: debug

I am pretty sure you already have "advanced" written somewhere so you only add " - log_level:debug"
Than you can see in Zigbee2MQTT -> log -> filter through "debug" and "your device". That way you see the payload and with the example of MeisterAdebar change the values to your color codes

@ustix
Copy link

ustix commented Feb 6, 2024

Can you show me an example with the groups and group ids? I am fairly new myself :D

For debugging: Go to -> File Editor -> homeassistant/zigbee2mqtt/configuration.yaml and add these lines

advanced:
  - log_level: debug

I am pretty sure you already have "advanced" written somewhere so you only add " - log_level:debug" Than you can see in Zigbee2MQTT -> log -> filter through "debug" and "your device". That way you see the payload and with the example of MeisterAdebar change the values to your color codes

I think thats the way he thought:
z2m_group_eglo99099
I haven't tried it, because there is no other device in my z2m now (test config) but i think that could work. I will try this week.

@Pirupuku
Copy link

Pirupuku commented Feb 6, 2024

@ustix
Yeah, that worked. Great! Thanks for explaining!

Only thing I need now is the color buttons! The problem is not the remote but the light bulb!

@ustix
Copy link

ustix commented Feb 6, 2024

@ustix Yeah, that worked. Great! Thanks for explaining!

Only thing I need now is the color buttons! The problem is not the remote but the light bulb!

@Pirupuku Please, explain it further, what's wrong with what kind of light bulb? If I understand, you can use the color buttons, HA recognize them in the automation menu, and if you push them they are sent to the Action history too, but you want to use them to change the bulbs to the actual color of the button? So you need help figuring out how to automate that in HA?

@msaphoto06
Copy link

I don't use the converter, so I don't have the colors.
Can someone explain to me how to set it up to get the colors?
I will always have the groups with the converters?
Possible to change the group IDs with a converter to have several remote controls?
THANKS

@msaphoto06
Copy link

Ps:
No addon Homeassistant but Z2m dockers

@Pirupuku
Copy link

Pirupuku commented Feb 6, 2024

@ustix Yeah, that worked. Great! Thanks for explaining!
Only thing I need now is the color buttons! The problem is not the remote but the light bulb!

@Pirupuku Please, explain it further, what's wrong with what kind of light bulb? If I understand, you can use the color buttons, HA recognize them in the automation menu, and if you push them they are sent to the Action history too, but you want to use them to change the bulbs to the actual color of the button? So you need help figuring out how to automate that in HA?

Yes! In Developer Tools of HA I can see all attributes of the light bulb (e.g. brightness, color temp, rgb color) but I don't see rgb color as an action in my automation for the light bulb. Hence I have to use a data template or mqtt as action and send the payload or something. For that I don't know how to increment the rgb color.

@ustix
Copy link

ustix commented Feb 6, 2024

@Pirupuku Can you post a screenshot of what are you trying to do in the automatization? And what do you see in the developer tools in HA?

@Pirupuku
Copy link

Pirupuku commented Feb 6, 2024

So to break down my automation:

alias: REMOTE
description: ""
trigger:
  - platform: device
    domain: mqtt
    device_id: 05982ac37efea136a98203bbe3fc54d6
    type: action
    subtype: red
    discovery_id: 0xa4c138bb9495b0e6 action_red
    id: red
condition: []
action:
  - conditions:
    - condition: trigger
      id:
        - red
    sequence:
      - service: mqtt.publish
        metadata: {}
        data:
          qos: 0
          retain: false
          topic: zigbee2mqtt/Kinderzimmerlicht/set
          payload: "{\"color\":{\"rgb\":\"255,0,0\"}}"
mode: single

I can send the color as you can see in the line payload. But what I want is to increment it. Like read the current state of rgb_color and then increment by a value x when I press (in this case) the red button on my remote control.

My ´developer tools´ look like this (for the corresponding light bulb
grafik
As you can see, the light bulb has the attributes rgb_color, hs_color and xy_color. All of those should be able to change the color of the LED ring of the light bulb.

It would be easy if I could just see those values like in this image
grafik
But the only thing (a part from On, Off, Toggle) is the brightness I see there.

@ustix
Copy link

ustix commented Feb 6, 2024

@Pirupuku You won't see such setting at automations. It is much easier to make a Scene for this. At the Scene you have to set manually your device to for example red (doesnt matter where you are setting it, you can do it in HA or in the native app of the bulb), then save the Scene. Then make the automation: select the trigger (like red button on the remote) then select "Activate Scene", and try the Scene you have just created in the previous step. It is much easier and much more configurable then writing it by hand.
scene
automat

@Pirupuku
Copy link

Pirupuku commented Feb 6, 2024

I would like to recreate the original actions from the remote control.
Originally what each button did is kinda increase the color of the button you pressed and decrease the color of the other 2 colors.
An example:

The LED ring of the buld is <red>.
I hit the <green> button once → increase <green> and decrease <red> and <blue> color
LED ring color changed to a <orangish> color
I hit <green> again and again
LED ring color is now <green>

Same would apply if I hit blue. Or think about it like this.
grafik
You kinda wander around the color scheme. Due to that I try to increase or decrease the colors with each button press. And I can't really see how that's possible with a scene. Because I am only able to set the LED ring to a specific color.

@msaphoto06
Copy link

I created my .js file and added it to my z2m.
I don't know what to do next.
Here is my debug for group (2) on the color keys
Screenshot_20240207_063308_Home Assistant

@ustix
Copy link

ustix commented Feb 7, 2024

I would like to recreate the original actions from the remote control. Originally what each button did is kinda increase the color of the button you pressed and decrease the color of the other 2 colors. An example:

The LED ring of the buld is <red>.
I hit the <green> button once → increase <green> and decrease <red> and <blue> color
LED ring color changed to a <orangish> color
I hit <green> again and again
LED ring color is now <green>

Same would apply if I hit blue. Or think about it like this. grafik You kinda wander around the color scheme. Due to that I try to increase or decrease the colors with each button press. And I can't really see how that's possible with a scene. Because I am only able to set the LED ring to a specific color.

@Pirupuku that seems like a very odd behaviour to me 😀, with that you can just fairly guess what color you will get. But you are right, that behaviour needs to know what was the last color, and with scenes i don't think it is possible to do that. Maybe you can give a condition to the automation where you change the color according to which color was the bulb last time, and make a lot of scenes and automations to activate. That still wont be perfect for what you need (in my opinion thats still a strange method for changing colors) but you can get a lot more colors for your needs, more the scenes and automations with conditions, more the colors you get. I think you should forget that difficult method, and try this simpler one.

@msaphoto06
Copy link

J'ai créé mon fichier .js et l'ai ajouté à mon z2m. Je ne sais pas quoi faire ensuite. Voici mon débogage pour le groupe (2) sur les touches de couleur Capture d'écran_20240207_063308_Assistant à domicile

I changed my values to -1 as well. But it does not change anything. How to force the remote control to use the converter?

@ustix
Copy link

ustix commented Feb 7, 2024

J'ai créé mon fichier .js et l'ai ajouté à mon z2m. Je ne sais pas quoi faire ensuite. Voici mon débogage pour le groupe (2) sur les touches de couleur Capture d'écran_20240207_063308_Assistant à domicile

I changed my values to -1 as well. But it does not change anything. How to force the remote control to use the converter?

It is using it automatically if you are given it. From your log it seems to me that it is working as intended. I can't try groups for now, but i will try when i have the time. What do you want to achieve exactly?

@Pirupuku
Copy link

Pirupuku commented Feb 7, 2024

I created my .js file and added it to my z2m. I don't know what to do next. Here is my debug for group (2) on the color keys !

Well for the colors, you have to decrease the 5th element (actually the 4th because array elements start with 0) by 1.
See those pictures from your debug log
grafik
grafik
grafik
And the corresponding color values from MeisterAdebar's external converter
grafik
So you don't change the values to -1 rather descrease/substract them by 1.

@Pirupuku that seems like a very odd behaviour to me 😀, with that you can just fairly guess what color you will get. But you are right, that behaviour needs to know what was the last color, and with scenes i don't think it is possible to do that. Maybe you can give a condition to the automation where you change the color according to which color was the bulb last time, and make a lot of scenes and automations to activate. That still wont be perfect for what you need (in my opinion thats still a strange method for changing colors) but you can get a lot more colors for your needs, more the scenes and automations with conditions, more the colors you get. I think you should forget that difficult method, and try this simpler one.

I don't think it's an odd behaviour. If you start at red and hit the green button the color just transitions from red to green with the colors in between. Obviously not every color as I assume there is a step size to increment them as well.
And for the steps, I did the same approach with color temperature. I read the value from the bulb and increment or decrement it. It doesn't work flawlessly but it works. For the rgb color I couldn't get it to work at all!

@msaphoto06
Copy link

I have already changed the values. 254, 84, 69.
However, the red, green or blue action does not go up 🤔. Neither in z2m, nor in HA, nor in mqtt explorer.

@Pirupuku
Copy link

Pirupuku commented Feb 7, 2024

I have already changed the values. 254, 84, 69. However, the red, green or blue action does not go up 🤔. Neither in z2m, nor in HA, nor in mqtt explorer.

Did you delete the remote control from your Z2M and pair it again? And when you enter Z2M paired the remote control, than go into the device under Details you should have 2 values:

  • A string → when you hit any button that value should change (well not a value but something is triggered)
  • LQI Value

So if that is recognized than you should see the red, green and blue button in your automation. E.g. use it as a trigger.

@msaphoto06
Copy link

I have not re-associated my device.
I will do it this evening.

@Pirupuku
Copy link

Pirupuku commented Feb 7, 2024

It is using it automatically if you are given it. From your log it seems to me that it is working as intended. I can't try groups for now, but i will try when i have the time. What do you want to achieve exactly?

Oh on that @ustix - how exactly does the device know which external converter is assigned to it (in case you have multiple external converters for different devices)? That's one thing I don't understand yet.

@msaphoto06
Copy link

Great
It's OK for the color coded return.
However, how to associate with the group. in the debug the group is displayed but not when sending the command unlike the recognized command

image

image

@Pirupuku
Copy link

Pirupuku commented Feb 7, 2024

Great
It's OK for the color coded return.
However, how to associate with the group. in the debug the group is displayed but not when sending the command unlike the recognized command

image

image

So yeah colors work as well!
For the groups, you go to Z2M and there is a groups tab! There you have to add groups as mentioned above and put the lights you want into those groups. Then when hitting the appropiated group button on your remote you will only send commands to those light bulbs

@msaphoto06
Copy link

Super
, c'est OK pour le retour à code couleur.
Cependant, comment s'associer au groupe. dans le débogage le groupe est affiché mais pas lors de l'envoi de la commande contrairement à la commande reconnue
image
image

Alors oui, les couleurs fonctionnent aussi ! Pour les groupes, vous allez sur Z2M et il y a un onglet groupes ! Là, vous devez ajouter des groupes comme mentionné ci-dessus et placer les lumières souhaitées dans ces groupes. Ensuite, lorsque vous appuyez sur le bouton de groupe approprié de votre télécommande, vous n'enverrez des commandes qu'à ces ampoules.

hey,
I know about how groups work, it comes from my post.
but the colors do not go up with the group id.. if you compare my 2 images, the status "brightness step" is assigned to the group id but not the status "red"

@msaphoto06
Copy link

I don't know enough about zigbee to know if it's possible but given that each payload is published with its "action_group" is it not possible to create 3 "endpoints"

@msaphoto06
Copy link

@Koenkk
Is it possible to directly integrate the colors?
Is it possible to create endpoints using the GroupeId, this will allow you to have several remote controls.

THANKS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new device support New device support request stale Stale issues
Projects
None yet
Development

No branches or pull requests

10 participants