Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

[Plugin Officiel] Zigbee (openzigbee)

Pour échanger sur les plugins classés en catégorie "Protocoles domotiques"
ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 14 mai 2019, 14:27

J'ai fait 2 petites modifs dans le plugin afin de permettre de faire marcher des ampoules ikea et hue avec le retour d'information de l'état ainsi que de pouvoir gérer l'intensité avec un slider.
Pour le retour d'état j'ai modifier le fichier /var/www/html/plugins/openzigbee/resources/openzigbeed/openzigbeed.js ligne 107

Code : Tout sélectionner

      case 'attReport':
par

Code : Tout sélectionner

      case 'attReport':
      case 'devChange':
Pour la variation d'intensité j'ai modifié le fichier /var/www/html/plugins/openzigbee/core/class/openzigbee.class.php ligne 363 :

Code : Tout sélectionner

    if(!isset($data[3])){
      $data[3] = json_encode(array());
    } 
par

Code : Tout sélectionner

    if(!isset($data[3])){
      $data[3] = json_encode(array());
    } else {
      $data[3] = str_replace('#slider#', $_options['slider'], $data[3]);
    }
Et voici mes actions modifiées pour le HUE :
Image
et pour Ikea
Image

Je ne connais pas bien la programmation de Jeedom et ne mesure pas vraiment l'impact de mes modifications ... Si Loïc peut y jeter un coup d'oeil et me donner son avis ce serait TOP !!!

Merci pour ce plugin en tout cas !!!

Prochaine étape pour moi faire les fichiers json pour integrer automatiquement les ampoules HUE et ikea sans bidouiller les commandes ;-)
Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 14 mai 2019, 15:22

Salut,

Ca me semble correct, je viens de pousser en beta (dispo demain sur le market). Merci pour le retour.
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 14 mai 2019, 17:06

J'ai crée un fichier json pour le HUE dans /var/www/html/plugins/openzigbee/core/config/devices/philipshue/LWB010.json ... Il est bien pris en compte lorsque j'appaire mon ampoule par contre si quelqu'un s'y connais un peu dans cette syntaxe, je veux bien qu'il y jette un coup d'oeil ...
En effet ca manque un peu de cohérence car si l'ampoule est sur OFF et que l'on bouge le slider, le slider garde cette nouvelle valeur qui n'est pas prise en compte ... Je ne sais pas si on peut lier la valeur cmd du slider Level au retour d'information LevelValue ...

Code : Tout sélectionner


{
  "LWB010":{
    "name": "[LWB010] Ampoule E27 Blanc",
    "groupe" : "Philips hue",
    "commands": [
      {
        "name": "On",
        "type": "action",
        "subtype": "other",
        "generic_type": "LIGHT_ON",
        "isVisible": 1,
        "logicalId": "11|genOnOff|on"
      },
      {
        "name": "Off",
        "type": "action",
        "subtype": "other",
        "generic_type": "LIGHT_OFF",
        "isVisible": 1,
        "logicalId": "11|genOnOff|off"
      },
      {
        "name": "Toggle",
        "type": "action",
        "subtype": "other",
        "generic_type": "LIGHT_TOGGLE",
        "isVisible": 1,
        "logicalId": "11|genOnOff|toggle"
      },
      {
        "name": "Level",
        "type": "action",
        "subtype": "slider",
        "generic_type": "LIGHT_SLIDER",
        "isVisible": 1,
        "configuration": {
             "minValue": 0,
             "maxValue": 255
        },
        "logicalId": "11|genLevelCtrl|moveToLevel|[#slider#]"
      },
      {
        "name": "State",
        "type": "info",
        "subtype": "binary",
        "generic_type": "LIGHT_STATE",
        "configuration" : {
          "repeatEventManagement" : "always"
        },
        "template": {
            "dashboard": "light",
            "mobile": "light"
        },
        "isVisible": 1,
        "isHistorized": 0,
        "logicalId": "11.genOnOff"
      },
      {
        "name": "LevelValue",
        "type": "info",
        "subtype": "numeric",
        "generic_type": "GENERIC_INFO",
        "configuration" : {
          "repeatEventManagement" : "always"
        },
        "isVisible": 0,
        "isHistorized": 0,
        "logicalId": "11.genLevelCtrl"
      }
    ]
  }
}

Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 14 mai 2019, 18:29

Merci pour la conf je l'ai ajouté en mettant le lien avec les action/etat (et j'ai corrigé coté plugin aussi pour qu'on l'ai bien sur l'interface).

Par contre je l'ai appelé lumière la conf, faudra je fasse un truc pour qu'elle s'applique toute seule mais si on part dans les LBW yen a trop chez philips on va pas s'en sortir.
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 14 mai 2019, 19:15

Hâte de voir comment tu as fait ;-)
Si tu veux que je teste avant la maj beta, n'hésites pas !!!

Pour les différents lwb, on peut pas s'en sortir avec les modèle ?
J'ai pas très bien compris a quoi servait modèle sous équipements ....

Envoyé de mon Mi A2 Lite en utilisant Tapatalk

Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 14 mai 2019, 19:24

En faite openzigbee envoi le model du module et jeedom cherche la conf et l'applique sauf que des model d'ampoule philipshue yen a plus de 100 donc je fais un truc generic, lumiere normal, lumiere couleur, lumiere chaud/froid et l'utilisateur applique celui voulu
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 14 mai 2019, 19:37

Ok par contre Ikea et hue n'ont pas le même cluster id ... En tout cas pour les 2 lampes que j'ai ... Pour hue c'est 11 et pour Ikea 1 ...

Envoyé de mon Mi A2 Lite en utilisant Tapatalk

Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 15 mai 2019, 08:18

Merci pour la MAJ. Par contre je n'ai pas vu ton changement dans le type generique lumière ...

Il me semble que tu as glissé un bug dans le fichier openzibeed.js car il te manque un break entre case attReport et le case devChange a mon avis.
Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 15 mai 2019, 10:07

C'est bon pour le break (dispo demain en beta sur le market)

Par contre j'ai pas compris le générique... Ce que j'ai fait c'est juste liée l'état a la commande action pour que sur le dashboard ca soit plus sympa.
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 15 mai 2019, 10:40

En fait je n'ai pas trouvé la conf lumière ... J'ai toujours ma conf hue mais pas trouvée de conf lumière dans générique ...

Envoyé de mon Mi A2 Lite en utilisant Tapatalk

Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 15 mai 2019, 11:10

Normalement sur la page de configuration de l'équipement ya un champs Equipement qui devrait lister tous les truc possible.
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 15 mai 2019, 12:18

Je coris qu'on se comprends pas trop ;-) Je verrais demain avec la nouvelle mise à jour ... Mais je ne trouve pas ton fichier json lumière ... que ce soit dans les fichiers :

Code : Tout sélectionner

vinz@myjeedom:/var/www/html/plugins/openzigbee/core/config/devices$ ls -la *
generic:
total 12
drwxrwxr-x 2 www-data www-data 4096 mai   14 15:59 .
drwxrwxr-x 5 www-data www-data 4096 mai   13 11:20 ..
-rw-r--r-- 1 www-data www-data  717 mai   15 08:09 generic_onOff.json

philipshue:
total 28
drwxrwxr-x 2 www-data www-data 4096 mai   14 16:41 .
drwxrwxr-x 5 www-data www-data 4096 mai   13 11:20 ..
-rwxrwxr-x 1 www-data www-data 2831 mai   14 15:55 LWB010.jpg
-rwxrwxr-x 1 www-data www-data 1741 mai   14 16:40 LWB010.json
-rw-r--r-- 1 www-data www-data  124 mai   15 08:09 SML001.json
-rw-r--r-- 1 www-data www-data 4263 mai   15 08:09 SML001.png

xiaomi:
total 36
drwxrwxr-x 2 www-data www-data 4096 mai   14 16:12 .
drwxrwxr-x 5 www-data www-data 4096 mai   13 11:20 ..
-rw-r--r-- 1 www-data www-data  831 mai   15 08:09 lumi.remote.b286acn01.json
-rw-r--r-- 1 www-data www-data 6837 mai   15 08:09 lumi.remote.b286acn01.png
-rw-r--r-- 1 www-data www-data 1093 mai   15 08:09 lumi.weather.json
-rw-r--r-- 1 www-data www-data 9897 mai   15 08:09 lumi.weather.png
Ou dans équipement
Image

;-)
Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 16 mai 2019, 09:10

loic a écrit :
15 mai 2019, 10:07
C'est bon pour le break (dispo demain en beta sur le market)

Par contre j'ai pas compris le générique... Ce que j'ai fait c'est juste liée l'état a la commande action pour que sur le dashboard ca soit plus sympa.
Le break est bien arrivé avec la mise à jour !
Par contre je ne vois pas ton lien entre l'état et la commande ... dans quel fichier as-tu fait ca ?

MERCI !
Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 18 mai 2019, 10:30

J'ai joué un peu avec mes différents modules aqara et comme annoncé dans la doc du plugin, le support n'est pas tout a fait complet du coup j'ai fouillé un peu et j'ai commencé à intégrer la librairie zigbee-shepherd-converters. C'est prometteur !
J'ai commencé par integrer la librairie dans le script d'install des dependances:
sudo npm install git+https://github.com/Koenkk/zigbee-shephe ... git#master

J'ai un peu honte car j'ai repompé le code de https://github.com/ioBroker/ioBroker.zigbee ... Mais voila ce que ca donne :
Ajout en début de fichier openzigbeed.js :

Code : Tout sélectionner

var deviceMapping = require('zigbee-shepherd-converters');
Et en fin de fichier (ca c'est que j'ai honteusement recopié ... et très legerement modifié ... )

Code : Tout sélectionner

function onDevEvent(type, devId, message, data) {
    switch (type) {
        case 'interview':
//            Jeedom.log.debug('Device ' + devId + ' try to connect ' + JSON.stringify(data));
//            logToPairing('Interview state: step ' + data.currentEp + '/' + data.totalEp + '. progress: ' + data.progress + '%', true);
            break;
        case 'msg':
            Jeedom.log.debug('Device ' + devId + ' incoming event:' + JSON.stringify(message));
            // Map Zigbee modelID to vendor modelID.
            const mModel = deviceMapping.findByZigbeeModel(data.modelId);


            let payload = {};
            if (message.hasOwnProperty('linkquality')) {
                payload.linkquality = message.linkquality;
            }

            if (message.hasOwnProperty('available')) {
                payload.available = message.available;
            }

            Jeedom.log.debug('Publish ' + JSON.stringify(payload));
            publishToState(devId.substr(2), data.modelId, mModel, payload);
            break;

        default:
            Jeedom.log.debug('Device ' + devId + ' emit event ' + type + ' with data:' + JSON.stringify(message.data));

            // ignore if remaining time is set in event, cause that's just an intermediate value
            if (message.data.data && message.data.data.remainingTime) {
                Jeedom.log.debug('Found remaining time ' + message.data.data.remainingTime + ', so skip event');
                return;
            }
            
            // Map Zigbee modelID to vendor modelID.
            const modelID = data.modelId;
            const mappedModel = deviceMapping.findByZigbeeModel(modelID);
            // Find a conveter for this message.
            const cid = data.cid;
            if (!mappedModel) {
                Jeedom.log.error('Unknown device model ' + modelID + ' emit event ' + type + ' with data:' + JSON.stringify(message.data));
                return;
            }
            let converters = mappedModel.fromZigbee.filter(c => c.cid === cid && (
                (c.type instanceof Array) ? c.type.includes(type) : c.type === type));
            if (!converters.length && type === 'readRsp') {
                converters = mappedModel.fromZigbee.filter(c => c.cid === cid && (
                    (c.type instanceof Array) ? c.type.includes('attReport') : c.type === 'attReport'));
            }
            if (!converters.length) {
                Jeedom.log.debug(
                    `No converter available for '${mappedModel.model}' with cid '${cid}' and type '${type}'`
                );
                return;
            }
            converters.forEach((converter) => {
                const publish = (payload) => {
                    // Don't cache messages with click and action.
                    const cache = !payload.hasOwnProperty('click') && !payload.hasOwnProperty('action');
                    Jeedom.log.debug('Publish ' + JSON.stringify(payload));
                    if (payload) {
                      publishToState(devId.substr(2), modelID, mappedModel, payload);
                    }
                };

                //collectOptions(devId.substr(2), modelID, (options) => {
                //    const payload = converter.convert(mappedModel, message, publish, options);
                    const payload = converter.convert(mappedModel, message, publish, null);
                    if (payload) {
                        // Add device linkquality.
                        if (message.linkquality) {
                            payload.linkquality = message.linkquality;
                        }
                        publish(payload);
                    }
                //});
            });
            break;
    }
}

function publishToState(devId, modelID, model, payload) {
        //TODO ajout code pour envoyer à jeedom
}
Puis j'appelle ce bout de code lors de la reception des messages (j'ai gardé les anciennes notifications pour l'instant)

Code : Tout sélectionner

      case 'attReport':
      case 'devChange':
      msg.data.jeedom_value = Zigbee.getDataValue(msg.data)
      if(msg.data.jeedom_value === null){
        return;
      }
      var endpointDesc = msg.endpoints[0].getSimpleDesc();
      Jeedom.com.add_changes(msg.endpoints[0].getIeeeAddr()+'::'+endpointDesc.epId+'::'+msg.data.cid,msg.data);
      //break;
      default:
         // We dont handle messages without endpoints.
         if (!msg.endpoints) {
            Jeedom.log.debug('Message without endpoints!');
            return;
         }
         const device = msg.endpoints[0].device;
         if (!device) {
            Jeedom.log.debug('Message without device!');
            return;
         }
         // We can't handle devices without modelId.
         if (!device.modelId) {
              Jeedom.log.debug('Message without modelId!');
              return;
         }
         // After this point we cant handle msg without cid anymore.
         if (msg.data.cid === undefined) {
              Jeedom.log.debug('Message without data cluster!');
              return;
         }

        onDevEvent(msg.type, device.ieeeAddr, msg, {
             cid: msg.data.cid,
             modelId: device.modelId,
        });
        break;
Du coup pour l'instant ca fait que logguer ... et remonte pas dans jeedom mais j'arrive a avoir les niveaux de batteries de tout mes modules xiaomi :

Code : Tout sélectionner

[2019-05-18 05:10:17][DEBUG] : Publish {"battery":100,"voltage":3005,"linkquality":34}
[2019-05-18 05:11:42][DEBUG] : Publish {"battery":86,"voltage":2975,"linkquality":115}
[2019-05-18 05:32:43][DEBUG] : Publish {"battery":62,"voltage":2935,"linkquality":28}
[2019-05-18 05:35:40][DEBUG] : Publish {"battery":100,"voltage":3025,"linkquality":2}
J'ai les multi clicks de mon bouton xiaomi lumi.sensor_switch.aq2

Code : Tout sélectionner

[2019-05-17 17:29:58][DEBUG] : Publish {"click":"single","linkquality":5}
[2019-05-17 17:30:05][DEBUG] : Publish {"click":"double","linkquality":5}
[2019-05-17 17:30:10][DEBUG] : Publish {"click":"triple","linkquality":5}
Le capteur de presence xiaomi lumi.sensor_motion.aq2 qui ne renvoie pas le no_motion de lui même, renvoie un no_motion grace à la librairie:

Code : Tout sélectionner

[2019-05-18 07:59:13][DEBUG] : Publish {"occupancy":true,"linkquality":34}
[2019-05-18 08:00:43][DEBUG] : Publish {"occupancy":false}
Le capteur de temperature xiaomi lumi.weather marche toujours :

Code : Tout sélectionner

[2019-05-18 08:04:12][DEBUG] : Publish {"temperature":14.59,"humidity":63.61,"pressure":985.9,"linkquality":115}
Le capteur d'ouverture de porte xiaomi aussi lumi.sensor_magnet.aq2:

Code : Tout sélectionner

[2019-05-18 08:09:53][DEBUG] : Publish {"contact":true,"linkquality":23}
[2019-05-18 08:09:54][DEBUG] : Publish {"contact":false}
Mon cube xiaomi lumi.sensor_cube s'est mis a marcher

Code : Tout sélectionner

[2019-05-17 17:59:12][DEBUG] : Publish {"action":"flip90","from_side":3,"to_side":4,"linkquality":28}
[2019-05-17 17:59:20][DEBUG] : Publish {"action":"flip90","from_side":4,"to_side":0,"linkquality":28}
[2019-05-17 17:59:31][DEBUG] : Publish {"action":"flip180","side":5,"linkquality":28}
[2019-05-17 17:59:43][DEBUG] : Publish {"action":"tap","side":3,"linkquality":28}
[2019-05-17 18:00:36][DEBUG] : Publish {"action":"slide","side":3,"linkquality":28}
[2019-05-17 18:01:11][DEBUG] : Publish {"action":"rotate_right","angle":121.4,"linkquality":28}
[2019-05-17 18:01:22][DEBUG] : Publish {"action":"rotate_left","angle":-14.01,"linkquality":28}
[2019-05-17 18:01:40][DEBUG] : Publish {"action":"fall","linkquality":31}
et le capteur de vibration lumi.vibration.aq1

Code : Tout sélectionner

[2019-05-17 18:03:41][DEBUG] : Publish {"action":"vibration","linkquality":28}
[2019-05-17 18:41:50][DEBUG] : Publish {"action":"tilt","angle":5,"linkquality":31}
[2019-05-17 18:41:55][DEBUG] : Publish {"angle_x":1,"angle_y":77,"angle_z":13,"angle_x_absolute":89,"angle_y_absolute":13,"linkquality":26}
Il me reste a faire la même chose pour l'envoie des commandes ... ce qui permettra de s'affranchir des specificitées de chaque objet côté jeedom (par exemple l'adresse pour les commandes des ampoules Hue sont 11 contre celle ikea à 1 et j'en sais rien pour les autres ...)
Et de modifier côté jeedom pour prendre en compte les nouveau message ... mais je ne me rends pas trop compte si c'est difficile ou pas car je connais aussi bien le moteur de Jeedom que le nodejs ... niveau connaissance 0/100 :-(

Cette librairie gere les groupes ... ca permettra aussi de grouper des ampoules par exemples et d'envoyer des ordres groupé !
Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 19 mai 2019, 22:11

J'ai un peu avancé et j'ai fait la partie émission vers les devices mais il reste pas mal de ménage a faire, mon code est trop crade pour être publié ;-)
Du coup pour les commandes côté interface utilisateur, il suffit de mettre du json interprété directement par la librairie genre {"state":"on"} ou {"brightness":125} c'est très simple !!!

J'ai aussi ajouté une partie configuration des équipements, et du coup la télécommande dimmer d'Ikea fonctionne !

Loic, si vous partez sur cette clef, je pense que ça vaudra le coup d'utiliser cette librairie !


Envoyé de mon Mi A2 Lite en utilisant Tapatalk

Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

romanais
Actif
Messages : 1999
Inscription : 21 août 2014, 21:36
Localisation : Drôme

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par romanais » 19 mai 2019, 22:38

Beau boulot ! Intéressant !
Merci à toute l'équipe pour le taf

Mon matériel

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 20 mai 2019, 15:52

Bonjour,

Merci pour le boulot de rechercher, j'en ai mis des bout dans la beta mais pas mappé encore les events dessus (juste posé le code).

Le soucis c'est que j'utilise pas cette clef et pour l'instant on ne partirai pas la dessus mais plutot sur la clef deconz...
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

ioull
Timide
Messages : 135
Inscription : 11 juin 2015, 16:46

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par ioull » 21 mai 2019, 19:10

Salut Loïc,

Mauvaise nouvelle ca ;-) tant pis je continue si je peux aider un peu ;-)
Pourquoi est-ce que tu pointes sur un fork du package zigbee-shepherd hebergé par Jeedom et pas directement celui chez Koenkk ?
Je ne sais pas si c'est lié mais il manque dans le fichier node_modules/zcl-packet/lib/defs/zcl_meta.json les lignes suivante :

Code : Tout sélectionner

        "manuSpecificOsram": {
            "resetStartupParams": {
                "params":[],
                "dir":0
            },
            "saveStartupParams": {
                "params":[],
                "dir":0
            }
        },
        "manuSpecificPhilips": {
            "hueNotification":{
                "params":[
                    {"button":"uint8"},
                    {"unknown1":"uint24"},
                    {"type":"uint8"},
                    {"unknown2":"uint8"},
                    {"time":"uint8"},
                    {"unknown2":"uint8"}
                ],
                "dir":1}
        }
Le dernier commit sur zigbee-shepherd concernant l'ajout du specific osram, je pense que c'est lié ;-)
Si je bascule sur le repo de Koenkk, elles sont bien présentes ... Et du coup la librairie ne me renvoie plus d'erreur lors de la configuration de la telecommande Hue ...
J'ai du également ajouté le package zive : sudo npm install zive ... Ca sert à certains équipement, ce n'est pas lié directement à la librairie "zigbee-shepherd-converters" mais c'est utilisé par zigbee2mqtt pour supporter les équipements.

Ne serait-il pas prudent de pointer vers une version de commit plutot que le master de la librairie zigbee-shepherd-converter ? (Je ne sais pas comment marche les histoires de dépendances dans node, mais quand je regarde le fichier https://github.com/Koenkk/zigbee-shephe ... ckage.json
il fait réfernce à https://github.com/Koenkk/zcl-id.git#4f ... e3ad8f802d" et pas à https://github.com/Koenkk/zcl-id.git#master"

Du coup ça donnerait pour nous :

Code : Tout sélectionner

sudo npm install git+https://github.com/Koenkk/zigbee-shepherd.git#52d54ddb30a4ddc0722c51e077b4d843f0f52a6e
sudo npm install git+https://github.com/Koenkk/zigbee-shepherd-converters.git#20a1ebd3a9be4cc2ce91a81c166085f93af63fe3
Merci !
Jeedom sous proxmox sur HP54NL
Rfxcom : CM180i / UVN800 / 11 temperature / 2 VR Somfy
Z-Stick: 6 VR / 5 Fil Pilote / 1 Zipato / 1 sirene / 2 Smoke sensor
GW Xiaomi: 12 détecteurs ouvertures / 4 motions / 2 cubes
BLEA: Miflora / MiBand

mortyre
Actif
Messages : 1247
Inscription : 17 mai 2016, 16:51

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par mortyre » 22 mai 2019, 23:25

loic a écrit :
20 mai 2019, 15:52
Le soucis c'est que j'utilise pas cette clef et pour l'instant on ne partirai pas la dessus mais plutot sur la clef deconz...
Oui mais pour l'instant la clef Deconz n'est pas supporté sur les hard jeedom (smart / jeedom pro) utilisant la plateforme odroid C2. Donc tant que phoscon ne sort rien sur cette architecture cela ne va pas aider non plus. Donc je pense que c'est bien d'avoir un plugin qui tourne aussi sur cette clé que tu possède aussi :D
PROD: NAS1815+ VMM Buster 10.2 / Jeedom 4.0.31 / MariaDB 10.3.18 / PHP 7.3.9
DEV: DIY Odroid C2 16gb Strech 9.11 / Jeedom 4.x Alpha / MariaDB 10.1.41 / PHP 7.0.33

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: [Plugin Officiel] Zigbee (openzigbee)

Message par loic » 23 mai 2019, 08:32

Bonjour,
Oui sauf que deconz va pas tarder d'arriver sur la smart et on ne veut pas maintenir 2 plugins pour la même chose on arrivera pas a le faire de toute façon.
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

Répondre

Revenir vers « [Catégorie] Protocoles domotiques »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 6 invités