Contrôle de relais Nikobus avec Home de Apple

Dans cet article nous allons voir comment transformer une installation électrique “Nikobus” (ancienne génération) en un module “Nikobus Home control” afin de la contrôler avec l’application Home de votre appareil Apple (iPad, iPhone etc…).

Alors oui, au moment où j’écris cet article, il existe sur le marché un module “Niko Home Control” déjà tout fait par Niko, avec avec une application smartphone. OK… Mais ça, c’est trop simple et trop cher ! Ici, si votre maison est déjà équipée du système Nikobus, on parle d’un investissement financier de moins de 100€ !

Petite vidéo pour vous montrer le résultat final sur ma planche de test :

Intéressé ? Alors suivez le guide 😀

Prérequis pour ce tutoriel : Installation du Homebridge.

1: Matériel de base

Ma maison n’étant (pour le moment) pas équipée d’une installation électrique Nikobus, j’ai donc réalisé un prototype sur une planche de test :

Pour ceux qui ont lu mon précédent tutoriel, vous retrouverez dans le coin inférieur droit le montage pour le contrôle d’ouverture/fermeture de porte de garage via l’application Home de Apple.

Pour ce qui est de l’installation Nikobus (partie supérieure de la planche de test), elle est extrêmement basique, voici ce qui la compose :

  • Deux interrupteurs S1 et S2;
  • Deux lampes L1 et L2;
  • Un switch de quatre relais (à gauche);
  • Un switch de douze relais (au centre);
  • Un PC-Link (à droite).

La configuration de l’installation est également extrêmement basique :

  • Le bouton haut de l’interrupteur S1 allume la lampe L1;
  • Le bouton bas de l’interrupteur S1 éteint la lampe L1;
  • Le bouton haut de l’interrupteur S2 allume la lampe L2;
  • Le bouton bas de l’interrupteur S2 éteint la lampe L2.

En plus de tout cela, il vous faudra un câble compatible PC-Link Niko RJ11 / RS232, si vous n’en avez pas, pas de panique, vous pouvez le faire vous même, pour le tuto, suivez le guide 🙂

2: Installation des prérequis sur le Raspberry Pi

2.1 : Activation du port série

Exécutez la commande suivante : sudo raspi-config

Sélectionnez interfacing Options, ensuite sélectionnez Serial.

À la question : Would you like a login shell to be accessible over serial, sélectionnez No, tapez ENTER.

À la question Would you like serial port hardware to be enables, sélectionnez Yes, tapez ENTER.

Dans la fenêtre de confirmation, tapez ENTER, et vous reviendrez sur la fenêtre principale.

Tapez TAB deux fois pour sélectionnez Finish et tapez ENTER.

S’il vous est demandé de redémarrez le Raspberry PI, acceptez.

 

2.2: Plugin Serialport

Le plugin de contrôle du Nikobus nécessite l’installation du plugin Serialport.

Entrez la commande suivante : sudo npm install -g --unsafe-perm serialport@3.1.2

 

2.3: Plugin Async

Installons maintenant Async, pour ce faire entrez la commande suivante : sudo npm install -g --unsafe-perm async

3: Installation du plugin homebridge-nikobus

Ici nous allons mettre en place la partie software qui est la plus importante de ce projet.

Pour cela nous allons installer le plugin créé par M. Tim qui le met à disposition sur le site d’NPMJS et GIT.

Pour installer ce plugin, exécutez la commande suivante: sudo npm install -g homebridge-nikobus --unsafe-perm

4: Identification du port série

Avant de connecter votre câble RJ11/RS232 à votre Raspberry Pi, on va identifier quel est le nom du port série, généralement il ressemble à : ttySx ou ttyUSBx où x est un nombre.

Tapez la commande suivante : ls /dev/

Vous avez maintenant la liste de tous vos ports affichée sur votre écran, elle nous servira au point suivant.

5: Connexion du Raspberry Pi au PC-Link

Rien de plus simple, connectez votre câble RJ11/RS232 d’un côté à votre PC-Link Niko, et de l’autre à un des ports USB de votre Raspberry Pi.

Tapez à nouveau la commande suivante : ls /dev/

Et maintenant on va jouer au jeu des différences, recherchez qu’est-ce qui a changé par rapport à la première fois que vous avez tapé cette commande au point 4.

Personnellement j’ai ttyUSB0 qui est apparu.

Une autre façon de voir si Linux a bien détecté votre câble c’est la commande lsusb

6: Configuration du plugin Homebridge-Nikobus

Maintenant que le plugin est installé, nous allons le configurer en y introduisant les données de notre installation électrique Nikobus.

Pour réaliser cela, il faut que vous connaissiez les différant modules composant votre installation électrique Nikobus ainsi que leurs adresses. Si vous ne disposez pas ces données, vous trouverez sur ce tutoriel les instructions à suivre pour les extraire directement de votre PC-Link.

Ces données doivent être entrées dans le fichier de configuration config.json se trouvant dans ~/.homebridge.

Si le fichier config.json n’existe pas, il faut le créer, pour ce faire tapez les commandes suivantes :

cd ~/.homebridge.

sudo nano config.json.

S’il existe déjà, on va l’éditer ce fichier, entrez la commande suivante : sudo nano ~/.homebridge/config.json

Sur CE LIEN vous trouverez la structure que doit avoir votre fichier config.json.

Le fichier que je vous propose ci-dessus contient la configuration de mon installation, c.-à-d. un module PC-Link, un module de quatre relais et un module de douze relais, à vous d’adapter ce contenu en fonction de votre installation.

Dans la partie “port”: “/dev/XXX”, entrez le nom du port série que nous avons identifié au point 5, dans cet exemple c’était ttyUSB0 , donc ici ce sera : “port”: “/dev/ttyUSB0”.

Attention, soyez attentif, s’il manque la moindre virgule ou un guillemets, Homebridge ne démarrera pas.

Lorsque vous aurez fini, tapez ctrl+o puis ENTER pour sauvegarder vos modifications, puis ctrl+x pour quitter l’éditeur.

Redémarrez votre Raspberry PI : sudo reboot now

7: Home, sweet Home…

Pour terminer, allez dans l’application “Home” de votre appareil Apple, et vous devriez voir apparaître tous vos relais.

Il n’y a plus qu’à profiter 😀

N’hésitez pas à partager cet article.

8 Replies to “Contrôle de relais Nikobus avec Home de Apple”

  1. Bonjour, je suis intéressé à suivre ce tutoriel, mais à l’heure actuelle, je n’ai pas le module pc-link, je me demande simplement si vous connaissez n’importe où où je peux acheter cela à un prix raisonnable. (Désolé pour mon français, j’ai dû utiliser Google Translate car je ne parle que l’anglais)

  2. Bonjour,
    Je viens d’essayer d’installer homebridge et nikobus (j’ai d’abord essayé avec openhab, mais rien ne passe sur le cable).
    J’ai des erreurs pour installer serialport@3.1.2, j’avais donc installé serialport (dernière version), mais dans ce cas homebridge-nikobus plante (pre-requis)
    Il n’y a pas de version uilisant le dernier node.js ?
    Merci
    PS : si par hasard vous avez réussi à faire fonctionner sous openhab, je suis preneur aussi

    1. Bonjour,
      Le dernier commit dans le GitHub de Tim (créateur du plugin homebridge-nikobus) date d’y a deux ans.
      Je vais essayer de prendre contact avec lui pour avoir plus d’infos.
      Quant à openhab, désolé, je n’ai aucune expérience avec cette interface.

  3. Est-ce que ça fonctionne aussi si vous avez le module pc logic au lieu de pc link? Je peux acheter 2e main le logic mais pas le link module.

    1. Bonjour,

      Je n’ai pas de PC-Logic, mais si je ne me trompe pas, le PC-Logic n’implémente pas toutes les fonctionnalités d’un PC-Link. Du coup, je doute que cela fonctionne.

      Désolé.

  4. Bonjour,

    J’ai tenté de suivre votre tutoriel, très bien fait d’ailleurs. Tout est OK, homebridge se lance bien, j’obtiens bien le QRCode ou le code… mais pas moyen de faire le lien avec HomeKit, j’ai essayé avec mon iPhone et iPad. Rien dans les logs. Quand je fais un tcpdump je vois bien les paquets sur les ports 5353 … si je fait un netcat sur le port d’écoute de homebridge j’ai bien un connected…
    Avez-vous eu le problème?
    Merci

    Lionel

    1. Bonjour, difficile à dire, à l’époque j’ai eu quelques soucis lorsque mon iPhone était connecté à un point d’accès et mon PI à un autre. Lorsque j’avais connecté les 2 au même point d’accès, je n’avais plus aucun souci.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.