Machine Virtuelle BLEA

Rédaction le 07/12/2018
Mise à jour le 11/02/2020

Pré-requis :

  • une clé Bluetooth sur votre serveur Proxmox ;
  • le plugin BLEA installé sur votre installation Jeedom.

Article court mais demandé … pour éviter le problème de stabilité propre au plugin BLEA (enfin à ses ressources), il est recommandé de mettre en place une antenne externe si on se base sur une clé Bluetooth.

Et c’est mon cas. J’avais relevé déjà des problèmes de stabilité fort à l’époque de Debian8 il y a plus d’un an sur le forum Jeedom. J’avais déjà résolu ce problème avec une VM sur mon NAS QNAP. La méthodologie reste la même… A ce jour en 2020, je reste par principe sur cette VM déportée, bien plus pratique à administrer…

A la demande générale, je partage ma méthodologie pour réaliser une machine virtuelle sous Proxmox à destination de l’antenne principale BLEA.

Principale ? Car j’utilise une clé SENA UDP100 qui a une portée impressionnante (plus de 100m avec du béton dans certains cas).

Sena ud100-g03 Bluetooth Class-1 Adaptateur USB avec antenne Externe remplaçable (Lextronic)

Directement chez le fabricant

Antenne 12 dBi pour augmenter la portée de réception

Voici les paramètres que j’ai attribués à cette machine virtuelle après quelques semaines d’utilisation :

Ma VM BLEA …

N’oubliez pas de récupérer votre IP ; le login et le mot de passe de votre  super-utilisateur pour la partie Jeedom.

Reprenez le fil de la machine virtuelle Apache dans sa partie générique et on se retrouve ensuite :

Déroulez la partie générique de l’installation Debian9 sous Proxmox

https://jeedom-facile.fr/index.php/2018/12/06/machine-virtuelle-apache/

Partie générique de la machine virtuelle

Installez quelques paquets nécessaires :

sudo apt-get install bluetooth
sudo apt-get install python-pip python-dev build-essential
sudo pip install requests

Dans votre client SSH préféré ou dans la console de cette machine virtuelle

Et ensuite direction, Jeedom. Conservez votre console ouverte sur votre machine virtuelle, vous allez en avoir besoin.

Direction le plugin BLEA :

Il est là ! ou installez-le par Gestion des plugins / recherche dans le Market

Créez une nouvelle antenne Bluetooth dans Jeedom :

Onglet Antennes

Puis ajoutez une antenne (un article pour les antennes Raspberry est à suivre) …

Ajout d’une antenne

Configurez-la comme suit :

  • nom de l’antenne – personnellement VM-BLEA ;
  • IP : l’IP de votre VM ;
  • User : le compte super-utilisateur que vous avez créé ;
  • Port : 22 par défaut celui du SSH ;
  • Password : le mot de passe du compte super-utilisateur ;
  • Device : le numéro du périphérique Bluetooth – habituellement hci0. Pour le vérifier dans votre console, tapez hcitool list :
Oui, il s’agit de hci0
Configuration d’une nouvelle antenne

La méthodologie est la suivante car elle est assez longue en installation :

  • envoyez les fichiers (côté Jeedom, le bouton orange) ;
  • côté console :
    • cd /home/user/
    • ls -la
    • vous devriez voir un répertoire ou fichier blead apparaître !
  • lancez les dépendances (côté Jeedom, le bouton orange) ;
  • côté console :
    • cd /tmp
    • more dependancy_blea_in_progress
    • cette commande va vous retourner un chiffre entre 0 et 100 ; c’est long !
    • en cas de problème, récupérez le log dépendances (bouton vert dans Jeedom et analysez le fichier dans la fenêtre de configuration du plugin BLEA).

Ensuite démarrez le démon ! Au bout de quelques secondes, le cœur passe vert à côté de votre VM ! Et vous voyez une date heure de communication récente.

Votre antenne est en marche !

Vous pouvez alors utiliser votre antenne pour ajouter de nouveaux périphériques Bluetooth par inclusion.

Fermez votre console, sauvegardez votre machine virtuelle après l’avoir éteinte. Aie, il faut relancer le démon côté Jeedom dans l’antenne. Non ce n’est pas automatique !

Cela fera l’objet d’un article pour :

  • la supervision des antennes (ping des antennes + état des démons) ;
  • leur relance automatique en cas d’arrêt.

Lors de mes dernières installations qui datent un peu, j’ai été confronté à un problème lors de l’envoi du fichier des dépendances depuis Jeedom vers la machine virtuelle. Il m’a fallu envoyer le fichier à la main et le placer dans le répertoire /home/user/blead ..

Peut être un problème anodin ; mais si vous avez ce cas, j’ai une solution ! Voir dans les commentaires…

Cet article clôture une demande de plusieurs personnes concernant la troisième machine virtuelle et la seconde dédiée à Jeedom. La possibilité de mettre une antenne Bluetooth externe.

La conclusion de cet article !

Si vous avez aimé cet article, faites le savoir, partagez-le ! Et n’hésitez pas à me supporter 🙂

Merci à vous !

One thought on “Machine Virtuelle BLEA

  1. Merci Benjamin, mais j’ai bloqué sur le bios du nuc à l’installation de proxmox. Ecran noir. A force de tripatouilller le bios, cela a fonctionné mais la la tuile car comme j’ai oublié ma souris du taf, et que n’en ai aucune à la maison, ben je me suis retrouvé bloqué, je pensais pouvoir m’enn sortir avec le clavier, mais cela ne fonctionne pas, il faut une souris 😉 Donc je reprendrai ça demain.
    Je ferai un imprim écran de mon bios que je mettrai en bas de ton article au cas ou cela arriverai à d’autre. NUC 8I5 BEH

    1. Tu as bloqué sur ? Peut être mettre la clé usb dans l’ordre de boot en premier? Je ne pense pas puisque tu es arrivé à l’écran proxmox. Oui ensuite souris ou touch Tab pour sauter de boutons en boutons.

  2. Bonjour,
    Je ne suis pas sûr de comprendre :
    On a Jeedom sur un serveur sous Proxmox
    On crée un serveur sous Proxmox pour une antenne Bluetooth dédiée à Jeedom

    Pourquoi ne pas déclarer directement l’antenne Bluetooth dans le matériel Jeedom sous Proxmox ?
    Puisque l’antenne est branchée sur le même device que Jeedom …
    Ce que j’ai fait et fonctionne très bien …

    1. Hello,

      Je sais que mes articles sont longs, mais cela est fait pour ;). Il faut prendre le temps de les lire.
      La raison est simple, les 2 premiers paragraphes avec un lien (recommandé) sur le forum Jeedom.
      Il y a eu de nombreux problèmes de stabilité de Jeedom en cas de virtualisation à plus d’un core.
      C’est clairement déconseillé de garder BLEA avec la clé Bluetooth en direct.
      J’en ai fait les frais il y a un an avec une installation par-terre et moi à 600 km.
      Encore une fois, mon expérience – mon avis ! Libre à vous de vous faire le vôtre ! Mon but que vous soyez informé !
      Bonne lecture ! Mais ta question est normale…

  3. Encore un bel article. Merci !

    Me tarde la suite:
    – la supervision des antennes (ping des antennes + état des démons).
    – leur relance automatique en cas d’arrêt.

  4. Salut,
    question bête : tu as mis cette vm Jeedom en “esclave” avec la vm Jeedom qui n’a pas blea ?
    question moins bête : quelle(s) application(s) ?
    Merci

      1. Non ça j’ai compris le principe, j’avais déjà fait une install d’ailleurs.
        Ce que je demande, c’est si tu as mis la vm jeedom avec blea en esclave avec la vm jeedom de base.

        1. Je ne comprends pas ce que tu appelles esclave de la VM de base.
          Chaque VM est autonome. La VM Jeedom utilise l’antenne déclarée par le plugin BLEA (comme une autre antenne Raspberry).
          Il n’y a pas d’esclave, car jeedom ne tourne pas sur la VM où tourne l’antenne déportée.
          C’est le démon BLEA qui tourne. Il me semblait que c’était assez clair dans l’article.
          Ce n’est qu’une antenne déportée comme une antenne RPI3 sauf qu’ici l’OS est en VM sous Debian9.

  5. C’est ce que j’ai finalement compris, c’était clairement écrit.
    Mais dans ma tête j’étais parti sur l’install de blea comme unique plugin sur une autre jeedom.
    Puis j’ai compris que le bug était dû à jeedom et là j’ai pigé.

    J’ai viré jeedom et testé avec un dongle BT usb pas cher, ça a fonctionné. Par contre l’antenne passe off comme ça et impossible de la relancer. Rien de spécial dans les logs (débug).

    Demain je reçois un pi zero W

    D’ici 1 semaine la Sena UD100-G03

    On verra bien.

  6. Hello Benjamin,

    Question stupide mais .. pour la prise en charge des ports USB vous n’en parlez pas. Dans la VM-Blea, onglet Matériel il est en effet possible d’ajouter un périphérique USB uniquement en mode root. Jusqu’à là OK.
    La méthode est-il correcte ? Ou bien faut-il affecter un port spécifique ?

    Une fois fait la commande hcitool dev (et non pas hcitool list) fait en effet apparaitre un device hci0.
    Présence de la clé SENA également confirmée avec la commande “sudo lsusb | grep -i Bluetooth”.

    En revanche côté Jeedom lorsque j’envoie les fichiers (avec mon nom d’utilisateur) j’ai le texte qui m’indique “Envoie réussie”. Mais le dossier et fichiers ne sont pas présents sur la VM-Blea.

    Commande “ls” et rien n’est présent.
    Peut-être faut-il le faire en root ? Dans ce cas j’ai une connexion SSH KO.

    Une solution ?
    Sinon je suis preneur également pour déposer les fichiers manuellement
    Merci d’avance

    1. Finalement j’ai réussi ! Avec un peu de persévérance :p
      Il m’a été nécessaire d’éteindre les droits superadmin (sudo visudo) sur mon user pour arriver à déposer les fichiers et lancer les dépendances. Avec le compte par défaut “root” cela ne fonctionnait pas.
      L’antenne VM-Blea est bien passé en vert (hearbeat), ça fonctionne, tandis que dans la configuration du plugin le démon est en statut NOK et port non configuré. Avez-vous cela aussi ?

      Autre point, je vois apparaitre dans la liste deux antennes de réception :
      – Local
      – Remote : VM-Blea

      1. Bonjour, attention, le KO concerne si vous avez une antenne en local sur votre jeedom, donc c’est normal que ce soit KO. Il y a un vrai problème de santé par ce démon, qui a été remonté de nombreuses fois sans traitement sur le forum. D’où la proposition que j’ai faite sur l’article de monitoring du blog (qui surveille les antennes et les relance).
        Bravo et bonne continuation !

        1. Je comprends mieux, super.
          Merci encore Benjamin pour ce dernier tuto. J’avance doucement mais sûrement.
          Je viens d’activer à l’instant un remote Blea sur un Pi, ça fonctionne.
          Je n’oublierai pas de laisser une participation Paypal !

          A très vite pour la suite 🙂

  7. Bonjour,
    Tout d’abord merci d’avoir passé du temps pour ce tuto très bien documenté !
    J’ai dû faire un “apt-get install sudo” avant d’envoyer les fichiers pour ça fonctionne 😉
    Bonne continuation

  8. hello, super tuto mais je bloque sur l’envoi des fichiers via jeedom vers la vm. le fichier blead ne se crée pas. Tu indiques le faire à la main… j’aimerais bien savoir comment tu fais pour m’en sortir !

    1. Tu peux le DL depuis la VM Jeedom que tu as dans le répertoire du plugin du même nom. Le fichier ZIP est dispo ;).
      Du coup faut le DL de la VM Jeedom sur ton PC intermédiaire puis du PC vers la VM BLEA ou la PI de destination.
      Et ensuite le placer dans le /tmp de mémoire (là où il doit se DL en fait).

      1. Hello, j’ai le même problème. Peux tu expliciter pour le débutant que je suis côté desbian et vm :
        – “répertoire du plugin du même nom” : tu veux dire “bluetooth advertisement” ?
        – “le fichier zip est dispo” : mais où ?
        Désolé hein, mais je bloque là et j’ai pris une vm pour cela justement.

      2. Bonsoir,

        Avec un peu de recherche et logique, en fait, tous les fichiers sources de l’antenne sont disponibles dans le répertoire du plugin blea de votre jeedom 😉 ! C’est logique, sinon comment le plugin envoie les fichiers.

        https://i.imgur.com/oXQAezT.png

        Je vous laisse chercher un peu, il vous suffit de récupérer les fichiers (blead) et les remettre dans votre /tmp avec les bons droits (chmod, chown si souci).

        Bonne soirée.

        1. Et bien en ma qualité de gros bébé en commandes, je bloque aussi, le fichier blead ne se crée pas et mes connaissances sont vraiment trop limitées ne serait-ce que pour aller récupérer un fichier là et le loger ici. Si vous avez un p’tit moment pendant les vacances, quel bonheur ce serait d’avoir quelques commandes/notions de base sur ce sujet ou carrément un tuto pour Noel !

          1. Hello,

            Dans le principe, je ne donnerai pas les commandes brutes car on peut vite faire de très grosses bétises si on n’est pas à l’aise.
            Mais quelques points :
            – allez sur votre machine Jeedom en SSH
            – ensuite déplacez vous dans le répertoire des plugins /var/www/html/plugins/ (de mémoire) puis celui de la blea
            – listez le contenu et vous verrez en cherchant dans le répertoire, un répertoire blead ! C’est celui-ci qu’il faut récupérer.
            – faites-en un zip et récupérer le par sftp (de votre client SSH).
            – pour les droits n’oubliez pas les commandes sudo, chown, chmod etc

            Mais attention à ce que vous faites. Ce n’est pas normal d’en arriver là…

  9. Salut,
    Il semblerait que le desbian 9 pose des problèmes avec les antennes BLEA. Ne penses-tu pas qu’il serait plus secure de passé par un desbian 8?

  10. salut,
    super tuto, par contre j’ai le soucis que tu as rencontré, le fichier n’est pas installé dans le /home/monuser/blead

    or tu dis dans une note

    “Lors de mes dernières installations qui datent un peu, j’ai été confronté à un problème lors de l’envoi du fichier des dépendances depuis Jeedom vers la machine virtuelle. Il m’a fallu envoyer le fichier à la main et le placer dans le répertoire /home/user/blead ..

    Peut être un problème anodin ; mais si vous avez ce cas, j’ai une solution !”

    quelle st donc cette solution ? 🙂
    un grand merci 🙂

    1. Bonjour,

      Voir les commentaires juste au dessus…
      Il faut aller chercher le fichier BLEAD.zip ou le répertoire et le zipper sur Jeedom.
      En date du 29 juin 2019 à 22 h 47 min …

      Bonnes fêtes.

  11. Bonjour,

    je suis en train de faire une install jeedom virtuel sur un qnap et je n’arrive pas a faire monter mon dongle usb sena ud100-g03 , il semble que tu ai resolu ce problème .

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *