Control your Pioneer home theater amplifier using http requests

Share

pioneer_widgets_eedomus2Pioneer home-theater amplifiers can connect to your LAN using ethernet cable or wifi network. They can be remotely controlled by your main smart home controller or other kind of devices. In old days this control was done through a telnet connection. It means the controller can act as a telnet guest and this isn’t everytime possible.

There’s another method, less documented, which uses http requests. This method may not work with all Pionee references, particularly the old one. I will try to maintain a compatibility list if you provide your test results

Compatibility

Model Verified http requests
Pioneer SC-LX59 01 nov. 2016  Compatible

To verify compatibility :

  • Define IP address used by your home theater amplifier.
    For the SC-LX59 model, IP address is displayed on screen and on amplifier display when pressing STATUS key on the remote.
    pioneer_remote_info
  • In a web browser, open the webpage at address : http://amplifier_IP_Address/StatusHandler.asp
    You should have this kind of answer :
    {"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"}
  • If you have this kind of answer, it should confirm the compatibility of your amplifier with http requests ( I’m waiting you confirm for other models)
    You can then continue to read the post  🙂

Requests format

Status request

This is the one we’ve just seen which answer is device status.

Format : http://amplifier_IP_Address/StatusHandler.asp
Example :
http://192.168.0.201/StatusHandler.asp

There’s no input argument.  Output is in JSON format. If we look in details about answer contents, we can find those information :

  • A status for each of the different audi zones of amplifier, the “Z” bloc containing
    • The main zone “MZ”
    • The secondary zone “Z2” if available
    • and the following audio zone depending of your amplifier options
  • Information about those zones are the same for all  :
    • “P” : Powered ON (1) or Powered OFF (0)
    • “V” : volume defined with the values in this excel file from Pioneer
    • “M” : Mute ON (1) or Mute OFF (0)
    • “F” : Selected input defined with the values in this excel file from Pioneer
  • I haven’t took time to understand the following values, but their meaning should all appear in the same excel sheet

Amplifier control request

This request changes a parameter of the amplifier (volume, input, …)

Format : http://amplifier_IP_Address/EventHandler.asp?WebToHostItem=
Example :
http://192.168.0.201/EventHandler.asp?WebToHostItem=PF

There’s an input argument following the “=” which is the command to be sent. No particular output from this request apart the standard http status feedback.

Codes to be used are strictly equivalent to those sent through telnet. Those codes are exhaustively listed in the excel file from Pioneerzip .

Setting a new peripheral in eedomus to control amplifier

I need to control only three parameters : Power, Volume, input selection. I’ve then added three new http control peripherals for eedomus controller for each parameter
The post Mobile operator Free propose free SMS is indicating the way to create those peripherals.

Values to be defined for each peripherals are described below.

Power ON/OFF control

Value update request should contain those parameters :

  • pioneer_power_requestUpdate request = http://amplifier_IP_Address/StatusHandler.asp
  • XPATH path (for the main audio zone) = (//MZ/P) * 100
  • Don’t forget to select option “Convert JSON to XML”

Action values are those one :

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

Input selection

Value update request should contain those parameters :

  • pioneer_input_requestUpdate request = http://amplifier_IP_Address/StatusHandler.asp
  • XPATH path (for main audio zone) = //MZ/F

There are lots of action values, they’re all listed in this excel sheet . Here is an extract for the most useful :

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

pioneer_input_value

Volume control

I control volume using 5dB steps. A finest tunig is possible, amplifier steps being 0.5dB. If increasing the number of steps, you should add the missing control values and adapt the rounding done with the update request (for instance using a 2.5dB step , request rounding should be modified to ... div 5)) * 5 ... ).
The volume range’s from -80 dB (value is 1) to +12dB (value is 185). An increment of 1 of the value means a 0.5dB increase in volume.

Value update request should contain those values :

  • Update request = http://amplifier_IP_Address/StatusHandler.asp
  • XPATH path (for the main audio zone) = (round((//MZ/V - 1) div 10)) * 10 + 1pioneer_volume_request

Here is the beginning of actions for the volume control :

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

Vincent Recipon

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

You may also like...

1 Response

  1. Tuesday April 18th, 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 […]

Leave a Reply

Your email address will not be published. Required fields are marked *