Accueil | Niveau de difficulté | Débutant | Installer Jeedom v3 à partir du script d’installation sur Raspberry Pi 3 (ou PC Linux Debian 8)

Installer Jeedom v3 à partir du script d’installation sur Raspberry Pi 3 (ou PC Linux Debian 8)

Depuis le passage à la version 3 de Jeedom, l’image de la carte SD du serveur domotique n’est plus proposée au téléchargement. Jeedom s’installe maintenant sur n’importe quelle distribution Linux basée sous Debian 8 à l’aide d’un script (comme Domoticz d’ailleurs). On pourra donc créer une box domotique DIY en recyclant un ancien PC windows, un Raspberry Pi 3 ou un Orange Pi (suivez ce tutoriel pour installer Jeedom sur la carte SD ou la mémoire eMMC). Il est également possible de mettre à jour la version 2 de Jeedom. Pour cela, n’hésitez pas à aller lire cet article publié sur Maison et Domotique. Pour ce tutoriel, nous allons installer Jeedom v3 sur un Raspberry Pi 3 fonctionnant sous Raspbian Jessie avec le bureau Pixel.

Configuration de base

Si vous vous lancez dans la fabrication d’une box domotique Jeedom, voici une configuration à base de Raspberry Pi 3 très bien adaptée.

raspberry-pi3Raspberry Pi 3

Environ 40€

convertisseur hdmi vgaAdaptateur vidéo (optionnel, pour l’installation)

case raspberry pi 3Boitier pour Raspberry Pi 3

A partir de 6,99€

carte sdCarte SD 8 Go SDHC Classe 10

A partir de 6,90€

chargeur raspbery pi 3 5v 3000maAlimentation 5V – 3000mA

Environ 11€

Soit un budget d’environ 65€ (sans adaptateur vidéo).

Pour piloter vos appareils sans fils depuis Jeedom, vous pouvez ajouter une (ou plusieurs) passerelles domotiques.

RFXCOMRFXCom

Environ 110€

Module payant 4€

cle dongle jeedom domoticz z-wave zwave.meClé Z-Wave

Environ 34€

Module gratuit

montage rflink rfxcom arduino mega 2560 superheterodyne domoticzPasserelle Open Source RFLink

Tutoriel pour fabriquer une passerelle RFLink 100% DIY pour environ 15€

Module payant 4€

Préparer la carte SD Raspbian

Si vous débutez en domotique et que vous venez d’acheter un Raspberry Pi 3, la première chose à faire est de préparer la carte SD du système d’exploitation. Allez sur le site officiel de la fondation et téléchargez l’image de la distribution Raspbian Jessie ou Jessie Lite. La version Lite est plus légère. Il n’intègre pas de bureau graphique (appelé Pixel) et aucun logiciel pré-installé (navigateur internet, messagerie, suite bureautique…).

Si le Raspberry Pi est réservé à la box domotique (fortement conseillé), la version Lite est suffisante.

raspberry pi jessy lite raspbian

Pour ce tutoriel, nous allons installer Jeedom sur un Raspberry Pi 3 fonctionnant sous Raspbian Jessie avec le bureau Pixel. Suivez ce tutoriel pour installer Raspbian sans écran ni clavier.

Après avoir téléchargé l’image de la carte SD, utilisez le logiciel Open Source Etcher pour installer Raspbian sur la carte SD. Suivez ce guide qui explique toutes les étapes. Etcher est disponible sur Windows, macOS et Linux.

etcher sd card

Démarrer le Raspberry Pi

A la fin de l’opération, Etcher éjecte automatiquement la carte SD du lecteur. Insérez la dans le lecteur de carte du Raspberry Pi puis mettez le sous tension. Au premier démarrage, Raspbian s’occupe d’étendre la partition pour occuper tout l’espace disponible sur la carte SD.

Configurer le clavier

Pour tout mettre en Français, ouvrez le Menu puis Preferences -> Raspberry Pi Configuration et allez dans l’onglet Localisation.

Cliquez sur Set Locale…

Choisissez fr (French) en face de Language et Fr (France) en face de Country

raspberry raspbian configurer interface en francais

Votre Pi doit redémarrer pour prendre en compte les modifications.

Une fois redémarré, ouvrez le Menu -> Préférences -> Clavier et souris

Allez dans l’onglet clavier et cliquez sur Keyboard Layout…

raspberry pi 3 raspi 3 configurer clavier azerty francais
Dans la liste qui s’affiche, choisissez France en dessous de la colonne Country et cherchez le clavier qui s’approche le plus du vôtre dans la colonne Variant.

Validez. Votre clavier est maintenant en AZERTY.

Configurer le WiFi et le bluetooth

Le bluetooth est activé par défaut. Il n’y a rien de plus à faire.

Pour connecter le Raspberry Pi au réseau WiFi, cliquez sur l’icône réseau à coté de l’heure (dans le coin supérieur droit de l’écran). Sélectionner le réseau et saisir le mot de passe dans la fenêtre qui s’affiche.

activate wifi raspbian jessie

Modifier le mot de passe et activer  la connexion SSH

Raspbian est livré avec un mot de passe par défaut qui pourrait être utilisé par des pirates pour accéder à votre box domotique. Lisez cet article sur le Trojan Linux.MulDrop.14 récemment découvert. Il est impératif de le modifier. Pour cela, exécutez la commande passwd  et suivez les consignes.

Ne débranchez jamais le câble d’alimentation sans avoir arrêté le système. C’est le meilleur moyen de casser votre carte SD ! Pour arrêter le système, exécutez la commande sudo halt. Après l’extinction de la Led d’activité, attendez encore 5 secondes.

Pour activer la connexion SSH qui permettra d’installer ou de mettre à jour Jeedom et Raspbian depuis un autre ordinateur (sans avoir besoin d’un clavier et d’une souris pour le Raspberry Pi), il suffit d’aller dans le panneau de configuration. Suivez ce tutoriel pour apprendre comment fonctionne une connexion sécurisée SSH.

raspbian raspberry pi activer connexion ssh

Installer Jeedom v3 sur Raspbian

Maintenant que tout est prêt, nous pouvons lancer l’installation de Jeedom. Il n’y a quasiment rien à faire car c’est le script qui va se charger de tout. La procédure est détaillée dans la documentation officielle (point 5 – Autre/DIY). Le code du script d’installation est disponible sur GitHub ici.

L’installation de Jeedom va se dérouler en 11 étapes :

  • step_1_upgrade : mise à jour du système. C’est l’opération la plus longue car le script fait un update et un dist-upgrade du système
  • step_2_mainpackage : installation des librairies
  • step_3_database : installation et configuration de mysql. Durant cette étape, le mot de passe à la base de données sera affiché dans le Terminal. C’est une série de chiffres et de lettres générée au hazard. Notez le. En cas de plantage durant l’installation, il vous permettra de reprendre facilement celle-ci
  • step_4_apache : installation du serveur web apache
  • step_5_php : installation de php
  • step_6_jeedom_download : télécharge les ressources de Jeedom et décompresse le Zip dans /var/www/html
  • step_7_jeedom_customization : construction du système
  • step_8_jeedom_configuration : configuration de Jeedom. Si le script s’est planté auparavant, le script ne pourra plus se connecter à la base de données car un nouveau mot de passe aura été généré. La solution est données plus bas dans l’article
  • step_9_jeedom_installation : exécute le script php install.php
  • step_10_jeedom_post : mise en place de la cron table (exécutions programmées)
  • step_11_jeedom_check : dernière vérification

Exécutez ces trois commandes pour installer Jeedom sur Raspbian. La première commande permet de récupérer le script d’installation. On rend ensuite ce script exécutable (chmod +x) avant de le lancer.

Le temps d’installation va fortement dépendre de la vitesse de votre connexion internet et de l’état de votre système. S’il est déjà à jour, la première étape (qui est la plus longue) sera très rapide. En principe tout se fait tout seul. Il faut juste de la patience !

Attention. Il ne faut pas interrompre le script d’installation, surtout après l’étape 3. Un mot de passe est créé automatiquement pour configurer la base de données MySQL. Il n’est indiqué qu’à la fin de l’exécution du script. Suivez ce tutoriel pour ré-initialiser le mot de passe en cas de problème.

Voici un extrait des nouveautés proposées par la version 3 (la liste complète ici)

  • Suppression du mode esclave
  • Possibilité de déclencher un scénario sur un changement d’une variable
  • Les mises à jour de variables déclenchent maintenant la mise à jour des commandes d’un équipement virtuel (il faut la dernière version du plugin)
  • Possibilité d’avoir une icône sur les commandes de type info
  • Possibilité sur les commandes d’afficher le nom et l’icone
  • Ajout d’une action « alert » sur les scénarios : message en haut dans jeedom
  • Ajout d’une action « popup » sur les scénarios : message à valider
  • Les widgets des commandes peuvent maintenant avoir une méthode d’update ce qui évite un appel AJAX à Jeedom
  • Les widgets des scénarios sont maintenant mis à jour sans appel ajax pour avoir le widget
  • Le résumé global et des pièces sont maintenant mis à jour sans appel ajax
  • Un clic sur un élément d’un résumé domotique vous amène sur une vue détaillée de celui-ci
  • Vous pouvez maintenant mettre dans les résumés des commandes de type texte
    Changement des bootstraps slider en slider (correction du bug du double événement des sliders)
  • Sauvegarde automatique des vues lors du clic sur le bouton « voir le résultat »
  • Possibilité d’avoir les docs en local
  • Les développeurs tiers peuvent ajouter leur propre système de gestion de tickets
  • Refonte de la configuration des droits utilisateurs (tout est sur la page de gestion des utilisateurs)
  • Mise à jour des libs : jquery (en 3.0) , jquery mobile, hightstock et table sorter, font-awesome
  • Grosse amélioration des designs :
    • Toute les actions sont maintenant accessibles à partir d’un clic droit
    • Possibilité d’ajouter une commande seule
    • Possibilité d’ajouter une image ou un flux vidéo
    • Possibilité d’ajouter des zones (emplacement cliquable) :
      • Zone de type macro : lance une série d’actions lors d’un clic dessus
      • Zone de type binaire : lance une série d’actions lors d’un clic dessus en fonction de l’état d’une commande
      • Zone de type widget : affiche un widget au clic ou au survol de la zone
    • Optimisation général du code
    • Possibilité de faire apparaître une grille et de choisir sa taille (10×10,15×15 ou 30×30)
    • Possibilité d’activer une aimantation des widgets sur la grille
    • Possibilité d’activer une aimantation des widgets entre eux
    • Certains types de widgets peuvent maintenant être dupliqués
    • Possibilité de verrouiller un élément
  • Les plugins peuvent maintenant utiliser une clef api qui leur est propre
  • Ajout d’interactions automatiques, Jeedom va essayer de comprendre la phrase, d’exécuter l’action et de répondre

Erreur SQLSTATE[HY000] [2002] No such file or directory : problème avec la base de données MySQL

Jeedom utilise la base de données Open Source MySQL (aussi appelée MariaDB) pour fonctionner. Même si en théorie tout est installé et configuré par la script, vous risquez de rencontrer ce message après l’installation. Le message SQLSTATE[HY000] [2002] No such file or directory signifie que Jeedom n’arrive pas à se connecter à la base de données. Vous pourrez également rencontrer ce problème suite à un arrêt imprévu de Jeedom (une coupure de courant, un plantage de Jeedom…). Impossible de décrire toutes les solutions. Consultez le forum officiel ici. Pour ma part, j’ai obtenu le message d’erreur après l’installation. Je n’en connais pas la cause exacte mais voici comment je m’en suis sorti !

Tout d’abord, mettez en lieu sûre le mot de passe généré par le script au moment de l’installation. Il est indiqué  par le script à la fin de l’installation dans la section ALL CECKS COMPLET. C’est un identifiant unique composé de 15 caractères alphanumériques généré automatiquement au démarrage du script.

On commence par désinstaller MySQL du système

Puis tout le contenu du répertoire

Enfin, on installe MySQL

Durant l’installation, une fenêtre va apparaître pour vous demander le mot de passe root. Collez le mot de passe généré par le script précédemment. Rien ne vous interdit d’utiliser un autre mot de passe. Il faudra l’indiquer au script d’installation de Jeedom juste après.

Pour sécuriser encore plus MySQL, vous pouvez exécuter la commande mysql_secure_installation

Evidemment, désinstaller et ré-installer MySQL n’est pas sans conséquences sur Jeedom. Si vous actualisé le navigateur internet, vous aurez le message d’erreur suivant

Il va falloir “rejouer” le script d’installation pour tout remettre en ordre. Comme vous avez noté le mot de passe (et ré-installé MySQL avec le même), exécutez cette commande

Comme le système est déjà à jour et que toutes les ressources ont été téléchargées, quelques minutes suffisent.

Et voilà, vous pouvez commencer à configurer votre box domotique 100% DIY Jeedom v3 ! Ouvrez Jeedom en saisissant l’adresse IP du Raspberry PI depuis n’importe quel ordinateur ou tablette du réseau local.

Vous pouvez partager vos difficultés et vos astuces sur le forum ici