Multiroom : Raspberry SqueezeLite en WiFi avec enceinte Bluetooth

Nous allons voir ici un truc très WAF (Wife Acceptance Factor) pour nos Home Sweet Home. Vous pourrez ainsi avoir du multiroom avec simplement une prise de courant, c’est pas beau ça ?

En effet, je vais vous détailler l’installation de A à Z d’un RPI avec Raspbian, d’un dongle WiFi et d’un dongle BT avec une connexion automatique au démarrage du RPI à votre enceinte Bluetooth. En ligne de commande bien sûr !

Je vous vois venir : un RPI ce n’est pas vraiment WAF même avec un beau boitier… En effet mais une fois caché, vu que les connexions entre votre RPI et votre serveur LMS sera en WiFi et en Bluetooth avec l’enceinte, vous pouvez le placer où vous voulez : au dessus d’une armoire, derrière/dessous un meuble (du scotch double face c’est pratique…), dans un tiroir  😉

Pour la démonstration, je suis parti d’un RPI 1 B, d’une clef wifi Netgear et d’une clef Bluetooth 4 et j’ai également testé sur un RPI 3 avec le WiFi et le Bluetooth intégré.

Niveau enceinte, j’ai testé les 2 RPI avec 3 enceintes BT de différentes gamme de prix : Une enceinte no name de mauvaise qualité d’environ 10/15 euros, une enceinte Xiamo Speaker 2 de 30 euros et une enceinte Bose Sound Mini 2 à 175 euros.

Pour la clef WiFi, j’ai pris une Netgear à 9 euros qui fonctionne sans problème. Si vous voulez être tranquille, vous pouvez choisir celles proposées par Rosty mais elles proposent les mêmes caractéristiques, à savoir du 150 Mbits. Suivant votre configuration, n’hésitez pas à prendre une clef avec une meilleur portée/débits.

Pour la clef Bluetooth, j’ai pris une clef BT 4 la moins chere de celles proposées par Rosty à 2.98 € (la liste des clefs BT de Rosty).

Les prix sont susceptibles de changer quelque peu au fil de l’eau.

Sommaire :


Préparation du RPI

Récupérer la dernière version de Raspbian sur le site officiel et choisissez la version lite, pas besoin de surcharger le RPI.

Cliquer sur l’image pour accéder au site officiel

Pourquoi Raspbian d’ailleurs ? D’une, Raspbian est basé sur Debian et fonctionne vraiment bien. Deux, ça vous permet d’être sur un système qui pourra tout accueillir par la suite quoique vous vouliez faire, sauf ceux incompatibles Raspbian bien sûr. Adieu donc les distributions toutes faîtes. Pour finir, la distribution reçoit régulièrement des mises à jour et ça c’est bien !

Installation de l’image

Suivant le RPI que vous aurez choisi, vous aurez besoin d’une carte SD ou d’une microSD de 8 Go minimum pour être vraiment tranquille.

  • Décompresser le fichier et vous obtiendrez un fichier IMG.
  • Lancer le logiciel W32DiskImager, sélectionner votre fichier IMG. Vérifier que la lettre est bien celle de votre SD/MicroSD
  • Cliquer sur « Write » et patienter.

Déconnecter la carte SD et insérer la dans votre RPI et brancher l’écran, le clavier, la clef WiFi et enfin le plus important, l’alimentation  😆

Configuration du WiFi

Par défaut, le clavier est en anglais donc attention pour vous connecter : identifiant pi et mot de passe raspberry (taper rqspberry).

On va vérifier que votre clef est bien reconnue avec la commande lsusb  (Pas besoin avec un RPI3) :

On voit bien ma clef NetGear, Inc….

Je suppose que votre clef est reconnue pour la suite.

On va éditer le fichier Interfaces pour le wlan0 avec la commande « sudo nano /etc/network/interfaces »

auto lo

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
auto wlan0

iface wlan0 inet dhcp
 wpa-ssid "nom du réseau"
 wpa-psk "mot de passe wifi"

Avec l’éditeur nano, sauvegarder en faisant Ctrl+X puis Y puis Entrée. Enfin faites sudo reboot. Au redémarrage, faites un ifconfig et regardez si votre interface wlan0 a bien une IP attribuée.

L’adresse IP est pour moi 192.168.1.15

Pour contrôler que vous avez bien Internet tout de même, faîtes un ping vers www.domoteek.fr par exemple 🙂

Pensez à faire une réservation de l’adresse IP sur votre serveur DHCP pour être tranquille.

Configuration du RPI

Etant donné que je suis sur un RPI 1 B, je n’ai que 2 ports USB, je ne peux donc pas brancher mes 2 clefs et mon clavier, je passe donc via Putty directement depuis le PC et puis vous le ferez tôt ou tard de toute façon…

Faites « sudo raspi-config » pour activer le SSH dans Advanced Options pour SSH et répondez Yes.

Je vous conseille fortement de modifier la langue et le fuseau horaire dans « Localisation Options » puis 1 et 2. J’ai en effet vu que la suite de l’installation ne fonctionnait pas si on restait en anglais et avec le fuseau de base.

Pour finir, un petit « sudo apt-get update & sudo apt-get upgrade » pour mettre à jour les paquets. Attention ça peut prendre un petit moment sur un RPI 1, j’avais 103 Mo moi.

Une fois fait, un sudo reboot pour que tout soit bien installé.

Configuration du Bluetooth

Brancher votre clef BT et faire un lsusb à nouveau (pas besoin pour le RPI3)

Ma clef est bien reconnue en Cambridge Silicon Radio…

Je suppose que votre clef est reconnue pour la suite.

On va installer ce qu’il nous faut pour la suite

sudo apt-get -y install pi-bluetooth pulseaudio pulseaudio-module-bluetooth pulseaudio-module-zeroconf dbus-x11 bluez bluez-firmware

On ajoute l’utilisateur pi au groupe pulse-access : sudo adduser pi pulse-access

On autorise PulseAudio à utiliser l’interface BlueZ

sudo bash -c "cat <<EOF>> /etc/dbus-1/system.d/pulseaudio-bluetooth.conf 

<busconfig> 
 <policy user=\"pulse\"> 
   <allow send_destination=\"org.bluez\"/> 
 </policy> 
</busconfig> 
EOF"

On charge le module Bluetooth Discover s’il est présent.

sudo bash -c "cat <<EOF>> /etc/pulse/system.pa

########################
### Bluetooth Support ##
########################
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif
EOF"

On autorise les connexions anonymes sur Pulse

sudo bash -c "cat <<EOF>> /etc/pulse/system.pa

#######################
### Network Support ###
#######################
load-module module-native-protocol-tcp auth-anonymous=1
load-module module-zeroconf-publish
EOF"

On créé un service PulseAudio pour tous les utilisateurs

sudo bash -c "cat <<EOF>> /etc/systemd/system/pulseaudio.service

[Unit]
Description=PulseAudio Daemon
[Install]
WantedBy=multi-user.target
[Service]
Type=simple
PrivateTmp=true
ExecStart=/usr/bin/pulseaudio --system --realtime --disallow-exit --no-cpu-limit
EOF"

On recharge la configuration et on lance PulseAudio

sudo systemctl enable bluetooth
sudo systemctl restart bluetooth

Attendez 2 ou 3 secondes et faites :

sudo systemctl daemon-reload
sudo systemctl enable pulseaudio.service
sudo systemctl start pulseaudio.service

Appairage de l’enceinte BT

Taper bluetoothctl
[NEW] Controller 00:1A:7D:DA:71:13 raspberrypi [default]

[bluetooth]# power on
[CHG] Controller 00:1A:7D:DA:71:13 Class: 0x0c0000
Changing power on succeeded
[CHG] Controller 00:1A:7D:DA:71:13 Powered: yes

[bluetooth]# agent on
Agent registered

[bluetooth]# default-agent
Default agent request successful

[bluetooth]# scan on
Discovery started
[CHG] Controller 00:1A:7D:DA:71:13 Discovering: yes
[CHG] Device 8C:C8:CD:BE:69:C3 RSSI: -69
[CHG] Device F8:04:2E:D0:FF:AD RSSI: -73
[CHG] Device 8C:C8:CD:BE:69:C3 RSSI: -77
[NEW] Device 00:58:50:00:2A:D9 BTSPEAKER <– Voici mon enceinte.

[bluetooth]# scan off
Discovery stopped

[bluetooth]# pair 00:58:50:00:2A:D9
Attempting to pair with 00:58:50:00:2A:D9
[CHG] Device 00:58:50:00:2A:D9 Connected: yes
[CHG] Device 00:58:50:00:2A:D9 UUIDs:
00001108-0000-1000-8000-00805f9b34fb
0000110b-0000-1000-8000-00805f9b34fb
0000110e-0000-1000-8000-00805f9b34fb
0000111e-0000-1000-8000-00805f9b34fb
[CHG] Device 00:58:50:00:2A:D9 Paired: yes
Pairing successful
[CHG] Device 00:58:50:00:2A:D9 Connected: no

[bluetooth]# trust 00:58:50:00:2A:D9
[CHG] Device 00:58:50:00:2A:D9 Trusted: yes
Changing 00:58:50:00:2A:D9 trust succeeded

[bluetooth]# connect 00:58:50:00:2A:D9
Attempting to connect to 00:58:50:00:2A:D9
[CHG] Device 00:58:50:00:2A:D9 Connected: yes
Connection successful

[bluetooth]# exit
Agent unregistered
[DEL] Controller 00:1A:7D:DA:71:13 raspberrypi [default]

On démarre le service PulseAudio : sudo systemctl start pulseaudio.service

On vérifie que l’enceinte BT est bien connectée : pactl list short | grep bluez

11 module-bluez5-discover
12 module-bluez4-discover
16 module-bluez5-device path=/org/bluez/hci0/dev_00_58_50_00_2A_D9
2 bluez_sink.00_58_50_00_2A_D9 module-bluez5-device.c s16le 2ch 44100Hz SUSPENDED
2 bluez_sink.00_58_50_00_2A_D9.monitor module-bluez5-device.c s16le 2ch 44100Hz SUSPENDED
1 bluez_card.00_58_50_00_2A_D9 module-bluez5-device.c

Connecter l’enceinte BT au boot du RPI

sudo nano /etc/rc.local

Copier-coller la ligne ci-dessous en remplaçant votre adresse MAC entre les balises « fi » et exit »

echo -e 'power on\nconnect 00:58:50:00:2A:D9 \nquit' | bluetoothctl
Sauvegarder et faire "sudo reboot"

Au redémarrage, faire un « pactl list short | grep bluez » et vous devrez avoir votre enceinte bluetooth de connectée automatiquement.

Suivant les enceintes, il faudra peut être activer le scan Bluetooth sur l’enceinte elle-même pour que la connexion se fasse au démarrage suite à un plantage notamment. Le temps de redémarrer le RPI, même sur la version 1, je n’ai pas à le faire. Par contre si le RPI plante, vous serez forcé de le faire là.

Installation de Squeezelite

Pour l’installation, le mérite revient à l’auteur : http://www.gerrelt.nl/RaspberryPi/wordpress/tutorial-installing-squeezelite-player-on-raspbian/.

Installation de quelques librairies nécessaires :

sudo apt-get install -y libflac-dev libfaad2 libmad0

On installe Squeezelite :

mkdir squeezelite
cd squeezelite
wget -O squeezelite-armv6hf http://ralph_irving.users.sourceforge.net/pico/squeezelite-armv6hf-noffmpeg
sudo mv squeezelite-armv6hf /usr/bin
sudo chmod a+x /usr/bin/squeezelite-armv6hf
On récupère un fichier de configuration pour la platine SqueezeLite :
cd /home/pi/squeezelite
sudo wget http://www.gerrelt.nl/RaspberryPi/squeezelite_settings.sh
sudo mv squeezelite_settings.sh /usr/local/bin
sudo chmod a+x /usr/local/bin/squeezelite_settings.sh
sudo wget http://www.gerrelt.nl/RaspberryPi/squeezelitehf.sh
sudo mv squeezelitehf.sh /etc/init.d/squeezelite
sudo chmod a+x /etc/init.d/squeezelite
On va mettre SqueezeLite en service au démarrage et permettre une gestion plus simple ensuite si besoin.
sudo wget http://www.gerrelt.nl/RaspberryPi/squeezelite.service
sudo mv squeezelite.service /etc/systemd/system
sudo systemctl enable squeezelite.service 
A partir de maintenant, le service démarrera automatiquement au démarrage du RPI. Vous pourrez le gérer avec « sudo /etc/init.d/squeezelite start » ou « sudo /etc/init.d/squeezelite stop ». Il y a également d’autres commandes dans le fichier.

Configuration de SqueezeLite

 Vérifier la carte son par défaut avec la commande : sudo /usr/bin/squeezelite-armv6hf -l
  La carte son par défaut est bien PulseAudio Sound Server
 On va éditer le fichier settings précédemment installé pour modifier quelques éléments :
sudo nano /usr/local/bin/squeezelite_settings.sh
# The name for the squeezelite player (default the hostname
# will be used):
SL_NAME="NOM" <-- Nom qui apparaîtrait dans LMS

# ----- SOUNDCARD -----
# Set the soundcard
SL_SOUNDCARD="pulse" <-- Bien que la carte par défaut soit PulseAudio, j'ai remarqué des problèmes si on ne précisait pas pulse ici (voir la capture ci-dessus).

# ----- SERVER IP ADDRESS -----
# Uncomment the next line (remove hash) if you want to point squeezelite
# at the IP address of your squeezebox server (-s option). And change the IP address of course..
SB_SERVER_IP="192.168.1.10" <-- Adresse IP du serveur LMS. ça permet de connecter plus rapidement la platine avec le serveur LMS

# ----- MISC SETTINGS -----
# Uncomment the next line (remove hash) if you want to set ALSA parameters (-a option, set to buffer size 80).
# format: <b>:<p>:<f>:<m>, b = buffer time in ms or size in bytes, p = period count or size in bytes, f sample format (16|24|24_3|32), m = use mmap (0|1)
SL_ALSA_PARAMS="80" <-- Permet de mettre un buffer en place. Pratique avec le BT s'il y a une perte

# Uncomment the next line if you want to start the squeezelite daemon with a specific user.
SL_USER="pi"# Uncomment the next line if you want to start the squeezelite daemon with a specific working directory
SL_WORKING_DIR="/home/pi"

Enregistrer votre fichier et démarrer votre nouvelle platine SqueezeLite avec la commande « sudo /etc/init.d/squeezelite start"

Connectez-vous à votre serveur LMS et vérifier la présence de la nouvelle platine. Enjoy !

Faire un dernier redémarrage et vérifier que la platine remonte bien dans LMS et que le son sort bien de l’enceinte BT 🙂

Pour finir

Pour ajuster le son directement sur le RPI, faire la commande alsamixer et modifier avec les flèches du clavier le niveau de sortie. Je l’ai mis à 60 chez moi. Faire « Echap » pour quitter.

Si tout fonctionne, je ne saurai que vous recommander de sauvegarde votre précieuse SD avec W32DiskImager. Bien choisir un nouveau fichier nommé « Backup_RPI_Squeezelite.img » par exemple et faire « Read » ! Une fois fini, compressez-le pour un gain de place. En cas de pépin, vous serez très heureux d’avoir ce fichier.

Conclusion

Vous avez désormais fini votre RPI/SqueezeLite/WiFi/Bluetooth de A à Z. Vous pourrez profiter de votre multiroom sans-fil. Il ne vous reste plus qu’à investir dans de bonnes enceintes bluetooth pour rivaliser avec Sonos lol. Pour ma part, je suis très content de mes enceintes Bose Sound Mini 2. La porté en intérieur est de 10/12 m avec les cloisons et ça passe la dalle béton de l’étage malgré les clefs WiFi/bluetooth 1er prix. Je l’utilise même dehors dans le jardin l’été.

Il se peut qu’il y ait des éléments du tutoriel qui ne soient absolument pas utiles, si c’est le cas, merci de m’en informer que je le mette à jour (après test  😉 )

N’hésitez pas à me laisser un petit commentaire et même de noter l’article. En espérant que cela vous aidera 🙂

Sources : Pour m’aider, j’ai utilisé vraiment pas mal de sites différents et j’ai pris des notes par-ci par-là. J’ai particulièrement pris des infos sur :

  • https://github.com/davidedg/NAS-mod-config/blob/master/bt-sound/bt-sound-Bluez5_PulseAudio5.txt
  • http://www.gerrelt.nl/RaspberryPi/wordpress/tutorial-installing-squeezelite-player-on-raspbian/.

J’ai également regardé le plugin Pulse Audio de Slobberbone sur Jeedom. Merci à tous !

61 pensées sur “Multiroom : Raspberry SqueezeLite en WiFi avec enceinte Bluetooth

    • 23 février 2017 à 10 h 55 min
      Permalink

      Merci @Slobberbone. Quand tu as sorti ton plugin PulseAudio, ça m’a redonné envie de voir ça car faut avouer, c’est pas facile de trouver les informations !

      Répondre
      • 23 février 2017 à 11 h 45 min
        Permalink

        Si ça a pu t’aider tant mieux !

        Répondre
  • 23 février 2017 à 14 h 02 min
    Permalink

    Bonjour ce tuto est réalisable avec un PI Zéro?

    Répondre
    • 23 février 2017 à 14 h 07 min
      Permalink

      Je n’ai pas cette version de RPI sous la main et je me suis pas trop intéressé au produit.
      Dans la mesure où tu peux installer Raspbian Jessis dessus, aucun souci j’ai envie de dire mais le RPI Zero est pas limité à Wheezy ?

      Faudrait voir le nombre d’USB aussi, il en faut 2, ou partir sur un HUB USB auto-alimenté.

      Répondre
  • 23 février 2017 à 14 h 49 min
    Permalink

    Super le tuto! Je pense que je vais essayer de m’y coller un de ces 4!
    @+

    Répondre
    • 23 février 2017 à 14 h 52 min
      Permalink

      T’as mon mail perso toi, hésites-pas Chris ! :p

      Répondre
  • 23 février 2017 à 15 h 42 min
    Permalink

    Salut, merci pour ce tuto !
    Pour information, il y a max2play qui propose tout ça en quelques clics à condition de payer une dizaine d’euros pour 2ans ou une 20aine pour 5ans.

    Pour ma part je cherche plutôt à faire du airplay to bluetooth speaker mais je rencontre des lags, je ne sais pas si c’est dû à max2play, au bluetooth du pi3, à airplay, ou à l’enceinte.
    As-tu constaté des latences ou des coupures du son ?

    Avec ton système, peux-tu écouter deezer via l’appli mobile sur tes enceintes ou tu es obligé d’utiliser une librairie multimédia stockée sur LMS ?

    Répondre
    • 23 février 2017 à 15 h 54 min
      Permalink

      J’ai très souvent constaté des latences avec Airplay sans forcément être sous RPI. Les coupures de son se font uniquement quand on commence à être trop loin et qu’on passe dans le signal :p

      Pour Deezer, je ne l’utilise pas. Après suivant l’enceinte, tu peux appairer plusieurs équipements dessus donc suffit de switcher ensuite pour que soit le RPI ou soit ton téléphone se connecte. Un peu contraignant par contre. Je sais que certains utilisent Deezer depuis LMS par contre.

      Je sais pas si depuis les applications sur Play Store comme Squeezer (https://play.google.com/store/apps/details?id=uk.org.ngo.squeezer&hl=fr) on peut gérer Deezer sur LMS ?

      Répondre
  • 23 février 2017 à 17 h 33 min
    Permalink

    Pas mal comme article et bien complet.
    En revanche je ne vois pas en quoi c’est une solution multiroom, surtout si l’on prends en compte les différentes couches (BT, PulseAudio, WiFi, Rpi) et tout les décalages et latences que ça implique.
    J’ai constaté également un décalage entre les pistes audio en fonction du type de Squeezebox virtuel utilisé (SqueezePlayer sur Android se synchronise sans pb avec un autre Android, un peu moins avec Squeezelite sur pc ou VM, absolument pas avec un Chromecast Audio etc).
    Mais je me trompe peut-être, ne voyant pas trop à quoi peut servir PulseAudio dans cette configuration, dans ce cas là merci d’éclairer ma lanterne 🙂

    Répondre
    • 23 février 2017 à 17 h 39 min
      Permalink

      Multiroom car on peut streamer vers n’importe quelle pièce depuis un endroit de stockage unique. la synchronisation n’est qu’une possibilité en plus par forcément utile à tous.

      Ayant 3 RPI avec enceintes BT dont 2 en connexions WiFi, je n’ai pas de latence qui gêne l’oreille chez moi avec LMS.

      Après comme dit dans le tuto, j’ai peut être des librairies qui ne servent pas mais ça fonctionne ainsi alors qu’avant, je n’arrivais pas tout simplement à streamer sur le BT depuis une platine. On peut surement l’améliorer 🙂

      Répondre
    • 23 février 2017 à 22 h 47 min
      Permalink

      Il faut savoir que dans lms tu peux regler precisemment le delai de chaque squeezebox. pour justement contre carer les éventuels temps de traitement de chacune

      Répondre
      • 24 février 2017 à 7 h 24 min
        Permalink

        Merci Sarakha, j’avais oublié cette option 🙂

        Répondre
      • 25 février 2017 à 0 h 19 min
        Permalink

        Merci pour cette information je vais essayer de mettre cela en application.
        Utilise tu cette fonction ? Je me demande par curiosité si le délai est stable, je n’ai jamais pensé à tester cela

        Répondre
        • 25 février 2017 à 12 h 16 min
          Permalink

          Je vais essayer de faire quelques tests avec toutes mes SB synchronisées et si j’ai un dléai à mettre, je pourrais te répondre 🙂

          Répondre
  • 23 février 2017 à 19 h 20 min
    Permalink

    Super ce tuto!
    juste une question, pour couper le PI (l’alimentation)?
    j’utilise picoreplayer qui ne copie rien sur la SD, donc couper l’alim à la « sauvage » ne pose pas de problème pour la SD.
    et ici?

    Répondre
    • 23 février 2017 à 20 h 30 min
      Permalink

      Pour moi la vrai question est pourquoi couper le PI directement par l’alimentation ?

      sudo shutdown now fonctionne très bien couplé à une prise on/off pour remettre en route le RPI.
      Faut voir l’utilisation…

      Répondre
  • 25 février 2017 à 1 h 15 min
    Permalink

    Super ton tuto !! Je vais certainement tester tout ça pour la mettre en application si la solution me convient.

    Répondre
  • 25 février 2017 à 9 h 27 min
    Permalink

    Un serveur LMS est il nécessaire ? en plus du sqeezeboxlite?

    Répondre
    • 25 février 2017 à 12 h 04 min
      Permalink

      Oui sur un NAS Synology par exemple, ça fonctionne très bien 🙂

      Répondre
  • 25 février 2017 à 11 h 17 min
    Permalink

    Avec un tel tuto tu aurais pu gagner une licence pour Office ! LOL

    Répondre
    • 25 février 2017 à 12 h 14 min
      Permalink

      hihi 🙂

      Répondre
  • 27 février 2017 à 15 h 19 min
    Permalink

    bien le tuto. j’ai tout fait ce weekend et ça marche. merci

    Répondre
  • 27 février 2017 à 22 h 47 min
    Permalink

    Est ce que cette solution permet d’installer tout sur un PI et par la suite choisir l’enceinte BT de son choix ou une musique sur une enceinte BT et une autre musique sur une autre enceinte BT via un seul PI?

    Répondre
    • 28 février 2017 à 7 h 16 min
      Permalink

      Il faudrait que PulseAudio gère 2 sorties audio en BT indépendamment et il faudra lancer 2 Squeezelite sur le RPI.

      ça risque d’être tendu

      Répondre
      • 28 février 2017 à 7 h 38 min
        Permalink

        du coup ce n’est pas du multiroom dans ce cas…

        Répondre
        • 28 février 2017 à 9 h 07 min
          Permalink

          Si tu prend plusieurs RPI + enceintes, c’est du multiroom.

          SI tu prend une seule enceinte Sonos, ce n’est pas du multiroom non plus.

          Répondre
        • 28 février 2017 à 10 h 03 min
          Permalink

          Exactement, il faut plusieurs RPI (un par pièce/room) et une enceinte appairer à chaque RPI 🙂

          Répondre
  • 7 mars 2017 à 15 h 33 min
    Permalink

    Hello,

    Comme vu sur le forum jeedom, un très grand merci pour ce superbe tutoriel qui m’a permis de faire fonctionner l’enceinte Xiaomi sur un RPi3 en utilisant squeeze lite sur raspbian !!!

    Merci encore 🙂 !!!!
    TaG

    Répondre
    • 7 mars 2017 à 16 h 18 min
      Permalink

      Merci pour ton retour Tag et notamment pour le code.

      Répondre
  • 13 mars 2017 à 13 h 42 min
    Permalink

    Hello et merci pour ce superbe tuto. Deux petites questions svp:

    1) Au niveau performances et delais, que faut il preferer, max2play ou squeezelight svp? Qui a teste les deux?
    2) Ce qui me chifonne avec les enceintes deportees, c’est que l’automatisme n’existe pas. Tu dois obligatoirement appuyer sur on sur ton enceinte BT, ou je me trompe?
    Du coup opter pour une bonne enceinte filaire branchee sur ton raspberry (et carte hifiberry pour de la qualite) et tu as du multi room full automatique, non?

    Merci de votre repose,
    Cordialement

    Cedric

    Répondre
    • 13 mars 2017 à 13 h 59 min
      Permalink

      Merci à toi 🙂

      1: J’ai aucun délai entre le moment où sous LMS j’appuie sur play et j’entends sur n’importe quel enceinte. QUand je dis aucun c’est inférieur à 1/2 secondes sans problème.
      2 : J’ai mon enceinte Bose connecté sur sa base en permance et connecté au RPI sans pb tout le temps. De même pour l’autre de la chambre avec ma Xiaomi Speaker 2. Je n’ai fait aucun manipulation.

      La seule manipulation possible c’est quand tu dois reboot le RPI et que l’apparairage est trop long. Avec la bose, je n’ai pas ce pb mais avec la Xiaomi, c’est un peu plus pénible. Mais bon, je reboot jamais.

      Max2Play est une distribution qui utilise SqueezeLite ensuite me semble. C’est juste que Max2Play c’est une distribution qui ne fera que ça.

      Pour info, j’ai un RPI 2 avec squeezelite, hyperion et jarvis. Un autre RPI avec squeezelite, radius et jarvis. Max2Play je sais pas si t’es aussi libre…

      Répondre
  • 22 mars 2017 à 16 h 28 min
    Permalink

    Merci beaucoup pour ta reponse et ton aide!

    Mais il y a quand meme un dernier petit point si je peux encore t’embeter…
    Une enceinte tout le temps sur sa base est donc toujours branchee au courant?
    on ne peut jamais l’eteindre toute seule automatiquement (car meme si on debranche sa base avec une prise connectee, la batterie prend le relai non?)
    C est pour cette raison que je preferais opter pour quelquechose de filaire, quelquechose dont je puisse controler l’allumage/extinction automatiquement (et ainsi gerer la conso :p) lol

    Qu’en penses tu?

    Cordialement,
    Cedric

    Répondre
  • 22 mars 2017 à 18 h 36 min
    Permalink

    Pas de problème 🙂

    Mon enceinte Bose est posé sur sa base tout le temps en effet et elle-même raccordée au courant tout le temps. J’ai dessus une prise Wallplug pour mesurer la conso et oui, si je coupe le WP en effet, la batterie prend le relai.
    La prise m’indique toujours 0 W tellement la conso est faible. Par contre, si je l’enlève de la base et je la remet ensuite après un instant, ça consomme 10 W maxi (9.8 exactement).

    Rien ne t’empèche de mettre une enceinte filaire via la prise Jack en effet mais ça fera moins WAF xD

    Répondre
  • 23 mars 2017 à 21 h 59 min
    Permalink

    Bonjour, tu as completement raison, j’ai finalement adopte ta solution =)
    Dernier petit point sombre: j’ai certainement oublié une etape, mais ma squeezebox n’est pas reconnue dans Jeedom….. :'(
    Par contre, LMS voit bien ma squeezebox (meme si aucun son n’en sort pour le moment)

    Une idee svp?
    Merci beaucoup de votre aide :/

    Répondre
    • 24 mars 2017 à 16 h 14 min
      Permalink

      C’est en bluetooth ou filaire pour l’audio du coup ? SI bluetooth, redémarrer squeezelite en SSH et regarde si le son sort. SI oui, je te donnerai l’astuce 🙂

      Répondre
      • 24 mars 2017 à 17 h 03 min
        Permalink

        Bonjour,
        Alors, suite à mon dernier message, j’ai effectué l’installation et tout à bien fonctionné, sauf que….. il n’y a pas de son qui sort de l’enceinte, correctement connectée en bluetooth (l’enceinte est une Xiaomi Mi Smart Network Speaker).
        Il faut que j’essaie en filaire et remplacer le WiFi du Rpi3 par de l’ethernet pour voir ce que ça donne…
        Comment redémarrer LMS en SSH, sachant que LMS est installé et fonctionne sur mon NAS Synology ?
        Merci pour ton aide, tes conseils et astuce ….

        Répondre
  • 24 mars 2017 à 17 h 06 min
    Permalink

    Pardon, faut redémarrer squeezelite sur le RPI et pas LMS :oups:

    sudo /etc/init.d/squeezelite restart

    Répondre
  • 30 mars 2017 à 17 h 35 min
    Permalink

    Bonjour et encore merci de ton aide, j’ai finalement trouvé, il s’agissait d’LMS qui refusait de se lancer en admin au demarrage ^^
    Par contre, je n’ai jamais reussi a faire du TTS sur mon anceinte bluetooth avec le plugin Squeezebox Control… :'(
    Une idee?

    Merci a toi,
    Cordialement
    Cedric

    Répondre
  • 30 mars 2017 à 19 h 41 min
    Permalink

    Tu utilises quoi PicoTSS ou Voxygen/Google ? Les 2 derniers ne fonctionnent plus me semble et pour PicoTTS, il faut que les dépendances soit OK dans la configuration du Plugin.

    Répondre
    • 31 mars 2017 à 12 h 00 min
      Permalink

      Bonjour a toi, j’ai essayé chacun des trois, mais aucun ne fonctionne..
      J’ai aussi testé directement sur le port son du RPI, mais étant donné que tout le reste fonctionne en bluetooth, cela m’etonnait aussi que cela fonctionne…. 🙁
      Donc je suis toujours bloqué :/
      Merci de ton aide

      Répondre
  • 31 mars 2017 à 15 h 41 min
    Permalink

    Pour google et Voxygen, c’est HS pour le moment, il faudrait voir si les dépendants PicoTTS sont OK sur Jeedom ? ça donne quoi ?

    Répondre
  • 31 mars 2017 à 16 h 46 min
    Permalink

    Les dependances sont OK en tout cas c’est ce que dit le statut dans Squeezebox Control. Pas trouvé d’info affirmant le contraire dans les logs :/

    Répondre
    • 3 avril 2017 à 22 h 24 min
      Permalink

      Bonjour,
      Pareil pour moi. J’ai installé squeezelite sur un pi3 avec une carte son, un ampli, et des enceintes hifi en filaire. Tout fonctionne parfaitement sauf le TTS. Sûrement des réglages à faire sur le lecteur car celà fonctionnait sur picoreplayer. Mais je ne sais pas ou chercher. Si tu as des idées…

      Répondre
      • 4 avril 2017 à 7 h 44 min
        Permalink

        Pour le TTS, j’ai rien fait de spécial. Faudrait voir du coté du plugin SqueezeBox COntrol mais rien de sur

        Répondre
        • 4 avril 2017 à 12 h 49 min
          Permalink

          C’est tres curieux, et malheureusement je n’ai aucune log capable de nous aiguiller pour la resolution de ce probleme..
          Serait un probleme de droits sur la machine cliente? Dans le doute, j’ai attribue full droits (chmod 777) sur le repertoire ou sont crees les fichiers sons generes.
          Mais aucun changement…
          Peux etre connait tu un emplacement specifique de logs sur les squeezebox directement?
          Merci de ton aide,
          Cedric

          Répondre
          • 9 avril 2017 à 17 h 38 min
            Permalink

            As-tu trouvé une solution cedric pour notre tts ?

  • 1 avril 2017 à 23 h 04 min
    Permalink

    Pour info, ca marche nickel avec un raspberry pi zero w.
    C’est du coup le combo idéal ! un tout petit boitier de 8cm sur 4 tout plat (1cm max au millieur) qui peut passer facilement inaperçu.

    Répondre
    • 2 avril 2017 à 9 h 22 min
      Permalink

      Merci de l’information 🙂

      Le plus dur est d’en trouver maintenant !

      Répondre
  • 10 avril 2017 à 9 h 39 min
    Permalink

    Bonjour Mathieu,

    Malheureusement non, je n’ai toujours pas trouvé la solution pour le tts… 🙁
    Cela devrait fonctionner car j’arrive a faire du tts manuellement comme ceci:
    1)pico2wave -l fr-FR -w /tmp/test.wav « Ceci est un test »
    2)puis en jouant le fichier ainsi créé: aplay /tmp/test.wav

    Toujours en cours de recherche…

    Répondre
    • 22 avril 2017 à 21 h 02 min
      Permalink

      J’ai réussi à faire fonctionner le TTS. J’avais juste un problème d’ip locale dans jeedom. Le plugin ne semble pas trop aimer les lettres (mon adresse était sous forme jeedom-local), et avec les chiffres (192.168.31.xxx) tout fonctionne correctement…

      Répondre
      • 22 avril 2017 à 22 h 44 min
        Permalink

        Bonsoir Mathieu, je ne comprends pas, dans le nom de chacune de tes Squeezebox tu as indiqué leur IP a la place d’un nom (tel que SB_Chambre chez moi)?
        Je serai curieux d’avoir une capture de ton ecran stp =)
        (je suis cedricdirr sur le forum jeedom)
        Merci beaucoup de ton aide !

        Cedric

        Répondre
        • 23 avril 2017 à 0 h 29 min
          Permalink

          Non, mes SB sont nommées comme toi mais c’est dans la config reseau de jeedom que j’ai juste changé mon ip en chiffre…

          Répondre
          • 23 avril 2017 à 1 h 46 min
            Permalink

            Tu veux dire dans la configuration generale de jeedom?
            reseau interne
            reseau externe?

            Chez moi ce n’est cela le probleme, je suis en IP privee comme toi pour le reseau interne, et https://nom_srv_jeedom pour reseau externe…

  • 4 mai 2017 à 8 h 29 min
    Permalink

    Bonjour. Un super tuto, bien détaillé, agréable à lire et….. Fonctionnel.
    C’est chouette

    J’ai fait min installation avec pi zero W, un hifiberry miniamp et d’anciennes enceintes surround Focal sib.

    Ça marche plutôt bien.

    Une question cependant. A votre connaissance existe-t-il une possibilité pour streamer la musique directement depuis un téléphone (Android si possible) via mon application usuelle. Un truc de type « cast ».

    Merci beaucoup

    Répondre
    • 4 mai 2017 à 20 h 14 min
      Permalink

      Merci beaucoup 🙂

      Pour l’application, j’utilise squeezer sur Android pour lancer mes musiques mais je ne pense pas que c’est ce que vous cherchez.

      Répondre
      • 5 mai 2017 à 8 h 47 min
        Permalink

        Merci de ta réponse.
        Effectivement ce n’est pas tout à fait ça.
        Pour le moment, c’est aussi l’application que j’utilise. Mais il ne le semble pas possible d’envoyer directement un fichier audio de mon téléphone vers une enceinte spécifique.

        Je cherche du côté d’un Dlna renderer.

        Merci en tout cas

        Répondre
        • 18 mai 2017 à 3 h 30 min
          Permalink

          bonjour,

          super tuto! merci pour les details, j’ai cherché à faire ça depuis quelques jours sans succes avec PicoCore et PicoPlayer mais il me manquait des paquets…
          je me suis rabattu donc sur raspbian et avec ce tuto j’ai pu le faire en quelques heures à peine 🙂

          @MrNonoss : je suis un utilisateur d’Iphone (i’m sorry!) et j’ai installé sur mon serveur LMS 3 plugins qui se combine de façon magique : (squeeze2upnp-x86-64), interface multimédia UPnP/DLNA, upnp/dlna bridge et sharetunes2. la combinaison me permets de transformer pratiquement n’importe quel receiver upnp en squeezebox receiver ET en device compatible airplay. je peux donc depuis mes LMS envoyer du son sur mon ampli denon compatible upnp mais aussi depuis mon iphone en airplay. il en va de meme pour les autres squeezebox (comme mon rasp zero). Je ne suis pas expert Android, mais je sais qu’il y a des softs compatibles airplay, tu dois donc pouvoir utiliser ce principe pour stream depuis ton android, ou chercher un plugin equivalent pour android à la palce de sharetunes2 🙂

          encore merci pour le tuto 🙂

          Répondre
          • 18 mai 2017 à 10 h 03 min
            Permalink

            Bonjour et merci beaucoup 🙂

            Je ferai certainement un article complémentaire pour vos utilisations sur Android/Iphone un de ces jours 🙂

          • 24 mai 2017 à 17 h 57 min
            Permalink

            @Oniric : Merci de ta participation. J’avais installé le plug-in via Max2Play et n’avais pas vu qu’il existait directement sur le serveur squeezebox (et n’avait pas compris que je pouvais ajouter mon ampli Denon en squeezebox receiver. You roxx). Bref.
            J’ai refait mon installation en partant d’un Raspbian lite avec les plugins qui vont bien (sans shairport).

            Du coup, c’est exactement ce que je voulais. Me reste plus qu’a trouver l’application android capable de discuter uPnP qui me conviens et c’est good. Pour l’instant, j’utilises Mediamonkey, mais… bof.

            Merci beaucoup

  • 24 mai 2017 à 18 h 07 min
    Permalink

    Merci des retours 🙂

    Répondre

Laisser un commentaire

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