Multiroom Logitech Media Server et EEDOMUS

L’idée de départ était d’avoir une radio en l’occurrence RTL dans la SDB le matin, les jours de travail.

Les prérequis sont :

  • Logitech Media Server sur un serveur (pour ma part un NAS Synology),
  • Une platine Squeezebox (j’ai pris un Raspberry avec la distribution Max2Play),
    les autres distributions doivent fonctionner de la même manière mais je ne les ai pas testé.
  • Une box EEDOMUS qui gère les règles.

Pour le Raspberry, deux options (j’ai fait les deux),

  1. vous connectez des hp amplifiés en sortie (installé dans la SDB),
  2. vous installez la carte Hifiberry pour connecter en sortie un HP non amplifié (installé dans la cuisine). La distri Max2Play gère la carte Hifiberry, à vérifier si vous choisissez une autre distri.

Logitech Media Server

Le NAS Synology possède le paquet ‘Logitech Media Server’ d’origine, il suffit juste de l’installer.
Attention, le NAS doit avoir une IP fixe pour les règles EEDOMUS.

Squeezebox

J’utilise un Raspberry (wifi et Bluetooth intégré) et la distribution Max2Play.
Pour la SDB j’ai ajouté en façade du PI, un écran, ce qui me permet de le transformer en horloge lorsque  le PI est en veille. (Il est sur le mur avec du scotch double face).
j’ai connecté des HP amplifiés (d’ordinateur) en sortie, ceux-ci sont branchés sur une prise Wall Plug (qui allume les HP et l’éclairage du miroir).
Pour commander la prise Wall Plug, j’ai mis un détecteur de présence au dessus de la porte d’entrée à l’intérieur de la SDB afin d’allumer la prise seulement si on entre dans la SDB.
Notez l’adresse MAC du PI pour les règles EEDOMUS

Après avoir installé le Logitech Media Server et la platine Squeezebox, lancer le Media Server, cliquez en bas à droite sur paramètres puis sur l’onglet information. Vous devez pouvoir visualiser votre platine.

Faire un test de bon fonctionnement en lançant une radio ou un mp3.
Hé oui toujours RTL, non je n’ai pas d’action dans cette radio 😆

Pour interfacer les radios ou une Play liste avec EEDOMUS, dans LMS, j’utilise la liste de lecture dans le menu ‘ma musique’.

EEDOMUS

Nous allons à présent préparer notre périphérique qui vas permettre d’utiliser notre Squeezebox.

En fait je vais en créer 2 :

  1. Pour sélectionner, allumer ou éteindre la radio,
  2. Pour le volume.

1°) Créer un périphérique HTTP actionneur.

Variable Var1 = l’adresse IP fixe de votre LMS ainsi que son port
Variable Var2 = l’adresse MAC de votre platine.

Cliquer sur l’onglet valeur et créer les Radio, play list et les fonctions.
Ci-dessous un exemple de mes fonctions via LMS (à adapter en fonction de votre media server).

2°) Le volume

Se référer au point 1 pour la création du périphérique, mêmes variables VAR1 et VAR2.

Ci-dessous un exemple de mes fonctions volumes via LMS (à adapter en fonction de votre media server).

Les règles

Je rappelle le projet :
Allumer la radio le matin dans la salle de bain au réveil.
Je profite de cette règle pour allumer aussi la lumière de la chambre mais à 1% (c’est déjà assez fort), et oui, faut être sympa quand même 🙂

La macro lance la radio RTL puis éteint la radio au bout de 20Mn.
Cette règle allume bien la radio mais je n’ai pas de son jusqu’à que j’entre dans la SDB.

Activation de la lumière et des HP de la salle de bain (via un détecteur de mouvement et un Wall Plug).

La macro allume la lumière et les HP pendant 30Mn

Extinction de la lumière et des HP.
Après plusieurs essais de règles pour l’allumage et l’extinction des lumières avec un détecteur de présence, j’ai pris cette option, d’autres existent et sont aussi fonctionnelles mais celle-ci ma vas très bien.

Pour info,
– Je n’ai pas branché ma squeezebox sur le wall plug car elle me sert d’horloge.
– Un détecteur de mouvement dans le couloir fait éteindre la radio de la SDB et allume celle de la cuisine, toujours sur RTL 😥 .
– A l’activation de l’alarme, j’éteins toutes les radios (au cas où).
– J’utilise une tablette avec Imperihome pour gérer mes radios.

Je suis à votre disposition si vous avez des remarques sur ce tuto.

Détection de présence Bluetooth à l’aide d’un Raspberry ou d’un NAS pour l’EEDOMUS

Vous voulez désactiver l’alarme dès que vous arrivez, et l’activer si personne n’est à la maison, ce tutoriel est fait pour vous.

Pré-requis

  • Un NAS ou un Raspberry
  • Une clé Bluetooth si vous choisissez le NAS
  • Installer le paquet FHEM (C’est un paquet domotique allemand qui permet de faire énormément de choses mais je n’utilise que la détection de présence Bluetooth)

J’ai testé les deux et cela fonctionne sans problème par contre mon Raspberry était utilisé pour faire du multiroom audio et j’avais parfois des lags audio avec la détection de présence.

Raspberry

Je me suis largement inspiré du tuto fait par Domotique Info et vous pouvez suivre la procédure d’installation pour le Raspberry sur le lien suivant.
Étant donné que j’avais mis Max2Play, le paquet FHEM était intégré. J’ai donc sauté les premières étapes et commencé au chapitre 3
– Récupérer l’adresse physique Bluetooth de vos smartphones.

NAS

Télécharger et installer en manuel sur votre NAS le paquet FHEM, pour ma part avec un NAS 215J, j’ai installé le fhem_noarch-all_5.7-mfr-20160330 téléchargeable ici

De la même manière que le Raspberry, vous pouvez suivre la procédure d’installation pour le Raspberry sur le lien suivant.
Sautez les premières étapes et commencez au chapitre 3
– Récupérer l’adresse physique Bluetooth de vos smartphones.

SMARTPHONE

Recherchez l’adresse MAC Bluetooth de vos smartphone et notez la.

EEDOMUS

Créez un périphérique ETAT, usage état présence Humaine.
récupérez et notez les valeurs API sur cet état.

Menu :
Configuration -> Mon Compte -> Consulter vos identifiants
destination -> Local Box
direction -> SET
action -> Periph.value
dans la liste, recherchez le périphérique et sélectionnez la valeur Absent ou Présent, normalement 0 ou 1 en fin de ligne.
Exemples :
Valeur Présent :
http://192.168.0.xx/api/set?api_user=ZZZZZ&api_secret=XXXXXX&action=periph.value&periph_id=YYYYY&value=1
Valeur Absent :
http://192.168.0.XX/api/set?api_user=ZZZZZ&api_secret=XXXXXX&action=periph.value&periph_id=YYYYY&value=0
Les deux lignes seront copiées dans le fichier fhem.cfg, voir ci-dessous.

CONFIGURATION FHEM

Une fois installé, lancez FHEM  en suivant le Tuto sur le lien suivant. Chapitre 5, Les usages.
Vous devez préalablement autoriser la modification du fichier fhem.cfg en écrivant la ligne de commande : ATTR WEB editConfig 1

Ci-dessous un exemple de détection de présence sur mon téléphone.
Pour plusieurs téléphones, il suffit de dupliquer et de changer les valeurs MAC et API EEDOMUS. Chez moi cela fonctionne pour le mien et celui de ma femme.

La ligne define Marc PRESENCE permet d’effectuer une vérification :
Vérification de présence toutes les 30 secondes si je ne suis pas là (la valeur 30).
Vérification d’absence toutes les 120 seconde quand je suis là (la valeur 120).
Vous pouvez changer les valeurs à votre guise.

A copier dans le fichier fhem.cfg

# test de présence IPHONE Marc
 define Marc PRESENCE local-bluetooth xx:xx:xx:xx:xx:xx 30 120
 attr Marc event-on-change-reading state
 define Marc_present notify Marc:present {system("curl –user admin:METTRE_MDP_ADMIN \"http://192.168.0.xx/api/set?api_user=ZZZZZ&api_secret=XXXXXX&action=periph.value&periph_id=YYYYY&value=1\"")}
 define Marc_absent notify Marc:absent {system("curl –user admin:METTRE_MDP_ADMIN \"http://192.168.0.XX/api/set?api_user=ZZZZZ&api_secret=XXXXXX&action=periph.value&periph_id=YYYYY&value=0\"")}

Vérifications

Une fois toutes les manipulations effectuées, désactivez votre Bluetooth sur votre téléphone et réactivez le, vous devez voir les changements de l’état présence dans votre interface EEDOMUS.

J’ai amélioré un peu en utilisant un autre État, Présence Temporaire.
Deux valeurs, Absent et RAS.
C’est celui-ci qui est activé par FHEM lors du passage à absent.
J’ai mis une règle EEDOMUS, Présence Temporaire est égal à Absent et n’a pas changer depuis 10 Minutes alors Présence égal Absent et je remet l’état Présence Temporaire à la valeur RAS.
Cela me permet de ne pas activer l’alarme lors d’une micro-coupure de mon Bluetooth (Hé oui sa arrive).

Je suis à votre disposition si vous avez des questions sur ce tutoriel.