Contrôler son ampli Home Cinema Pioneer par requête http

pioneer_widgets_eedomus2Les amplis Home-cinema Pioneer se connectent à votre réseau local par câble ethernet ou réseau Wifi. Ils peuvent être pilotés à distance par une box domotique ou autre dispositif. Historiquement ce pilotage s’effectuait par connection telnet. Ce type de connection demande côté contrôleur un client telnet qui n’est pas forcément disponible.

Une autre méthode de contrôle moins documentée passe par des requètes http. Cette méthode peut ne pas s’appliquer à tous les modèles, en particulier les plus anciens. Je vais  maintenir une liste de compatibilité si vous m’indiquez le résultat de vos essais.

Compatibilité

Modèle Vérifié le Requête http
Pioneer SC-LX59 01 nov. 2016  Compatible

Pour vérifier la compatibilité de votre ampli :

  • Déterminer l’adresse IP de votre amplificateur Home Cinéma.
    Dans le cas du modèle SC-LX59, l’adresse apparaît sur la TV ou l’afficheur de l’amplificateur en appuyant sur la touche STATUS de la télécommande
    pioneer_remote_info
  • Dans un navigateur internet ouvrez la page à l’adresse suivante : http://Adresse_IP_ampli/StatusHandler.asp
    Vous devriez avoir une réponse du type :
    {"Z":[{"MZ":{"P":1,"V":117,"M":0,"F":25}},{"Z2":{"P":0,"V": 21,"M":0,"F": 6}},{"Z3":{"P":0,"V": 21,"M":0,"F": 6}},{"HZ":{"P":0,"V": 21,"M":0,"F":25}}],"DSP":2,"L":"0881","A": 3,"HOA":1,"LC":"STS" ,"MA":0,"MS":"0000000","MC":0,"HP":0,"HM":0 ,"DLBES":1,"DLBSR":1,"MN":"SC-LX59/SYXJ8"}
  • Une réponse de ce type devrait confirmer la compatibilité de votre amplificateur aux requêtes http ( j’attend vos confirmations sur d’autres modèles )
    Vous pouvez continuer votre lecture  🙂

Format des requêtes

Requête demande de statut

C’est la requête que nous venons de voir renvoyant le status de l’appareil.

Format : http://Adresse_IP_ampli/StatusHandler.asp
Exemple :
http://192.168.0.201/StatusHandler.asp

Il n’y a pas d’argument en entrée.  La réponse est au format JSON. Si l’on détaille quelques peu son contenu on y retrouve :

  • Un status sur les différentes zones audio de l’ampli, le bloc « Z » contenant
    • La zone Principale « MZ »
    • La zone secondaire « Z2 » si disponible
    • et les zones audio suivantes en fonction des capacités de votre amplificateur
  • Les données présentées pour chacune des zones sont identiques :
    • « P » : Zone allumée (1) ou éteinte (0)
    • « V » : volume défini suivant fichier excel en provenance de Pioneer
    • « M » : Mute activée (1) ou pas (0)
    • « F » : Entrée sélectionnée suivant fichier excel en provenance de Pioneer
  • Je n’ai pour le moment pas cherché à savoir ce que signifiaient les valeurs suivantes, mais leur signification doit apparaître dans le fichier excel

Requête de contrôle de l’amplificateur

Cette requête permet de modifier les paramètres de l’amplificateur (volume, entrée, …)

Format : http://Adresse_IP_ampli/EventHandler.asp?WebToHostItem=
Exemple :
http://192.168.0.201/EventHandler.asp?WebToHostItem=PF

Il y a un argument à rajouter derrière le « = » qui est la commande à envoyer. Pas de retour particulier à cette commande sauf le code de status http  standard réponse à la requête.

Les codes à utiliser sont strictement identiques à ceux qu’on peut envoyer par telnet. Tous ces codes sont présentés exhaustivement dans le fichier excel fourni par Pioneerzip .

Mise en place de périphériques de contrôle sur eedomus

Je souhaite avoir accès à seulement trois paramètres : Power, Volume, sélection d’entrée. J’ai donc créé trois périphériques http actionneur sous eedomus pour chacun des trois paramètres.
L’article L’opérateur Free propose les alertes SMS gratuites présente la procédure de création de tels actionneurs.

Les valeurs à définir pour chacun des périphériques sont décrites ci-dessous.

Contrôle Power ON/OFF

La requête de mise à jour doit contenir les valeurs suivantes :

  • pioneer_power_requestRequête de mise à jour = http://Adresse_IP_ampli/StatusHandler.asp
  • Chemin XPATH (pour zone audio principale) = (//MZ/P) * 100
  • N’oubliez pas de cocher l’option « Convertir le JSON en XML »

Les valeurs de l’actionneur sont les suivantes :

  • OFF = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=PF
  • ON = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=POpioneer_power_value

Sélection d’entrée

La requête de mise à jour doit contenir les valeurs suivantes :

  • pioneer_input_requestRequête de mise à jour = http://Adresse_IP_ampli/StatusHandler.asp
  • Chemin XPATH (pour zone audio principale) = //MZ/F

Les valeurs de l’actionneur sont nombreuses, elles sont toutes listées dans le fichier excel . Voici un extrait de celles qui me sont utiles :

  • Entrée HDMI1 = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=19FN
  • Entrée HDMI2 = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=20FN
  • Entrée HDMI3 = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=21FN
  • Entrée HDMI4 = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=22FN
  • Entrée HDMI5 = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=23FN
  • Entrée HDMI6 = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=24FN
  • Entrée Bluray = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=25FN

pioneer_input_value

Réglage du volume

Je contrôle le volume par pas de 5dB. Un réglage plus fin peut être possible, le pas de l’amplificateur étant de 0,5dB. Le changement de pas implique de rajouter des valeurs intermédiaires et d’adapter la façon d’arrondir la requête de mise à jour (exemple pour un pas de 2,5dB, elle est modifiée en ... div 5)) * 5 ... ).
La plage de réglage de volume s’étend de -80 dB (valeur 1) à +12dB (valeur 185). L’incrément de 1 de la valeur représente l’augmentation de volume de 0,5dB.

La requête de mise à jour doit contenir les valeurs suivantes :

  • Requête de mise à jour = http://Adresse_IP_ampli/StatusHandler.asp
  • Chemin XPATH (pour zone audio principale) = (round((//MZ/V - 1) div 10)) * 10 + 1pioneer_volume_request

Voici le début de la liste des valeurs d’action pour les volumes :

  • Volume -80dB = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=001VL
  • Volume -75dB = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=011VL
  • Volumen -70dB = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=021VL
  • Volume -65dB = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=031VL
  • Volume -60dB = http://Adresse_IP_Ampli/EventHandler.asp?WebToHostItem=041VL
  • pioneer_volume_value

Vincent Recipon

Propriétaire de ce blog. Owner of this blog.

Vous aimerez aussi...

4 réponses

  1. Marek dit :

    Witam .
    Wszystko działa bardzo prawidłowo, mam jednak problem z wybudzeniem amplitunera VSX924 ze standby.
    próbowałem wysłać komendę dwukrotnie, ale nic nie przynosi skutku.
    Jeśli zna Pan rozwiązanie proszę o podpowiedź.
    Drugie moje pytanie dotyczy odczytu wartości poziomu dźwięku danej strefy. Mogę odczytać status urządzenia , ale jeśli chciałbym wyświetlić coś na przykład tworząc aplikację na tablet to nie wiem jak to wyciągnąć .
    Pozdrawiam
    Marek Dyk

    • In English :
      Everything works very well, but I have a problem with waking the VSX924 from standby.
      i tried to send the command twice but nothing works.
      If you know the solution, please give me a hint.
      My second question concerns the reading of the sound level of a given zone. I can read the status of the device, but if I would like to display something, for example by creating an application for a tablet, I don’t know how to get it.
      Regards
      Marek Dyk

    • To be honest with you I don’t remember having used wake up command. In my setup we power on manually amplifier which implies powering up other elements.
      Regarding how to use it to display on a tablet, it depends on the skills you have, do you know how to program ? In my case I have an entire smarthome system , all smarthome systems are able to do http request and read back the value, also they have capacity to have funny display of values. Here is some example of free smarthome software to be installed on a server or a raspberry pi (for instance ) : jeedom, home assistant, domotics, … You can also buy a smarthome controller which will have such capacity. I used to use Eedomus controller.
      Another way to do is to use Tasker which is an android application. It’s also able to do http request, and you can setup a display panel to show those values. However, this it a bit difficult to correctly set a panel because it has to be done directly on a smartphone or tablet with touchscreen.

  1. mardi 18 avril 2017

    […] la différence des commandes http présentées dans ce article, c’est l’interface Telnet de l’ampli Pioneer qui est utilisée ici pour le […]

Laisser un commentaire

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

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