Active TopicsActive Topics  Display List of Forum MembersMemberlist  Search The ForumSearch  HelpHelp
  RegisterRegister  LoginLogin
PowerHome General
 PowerHome Messageboard : PowerHome General
Subject Topic: Onkyo eISCP ethernet control Post ReplyPost New Topic
Author
Message << Prev Topic | Next Topic >>
smarty
Super User
Super User
Avatar

Joined: May 21 2006
Location: United States
Online Status: Offline
Posts: 728
Posted: June 16 2020 at 11:27 | IP Logged Quote smarty

I presently control my Onkyo AVR's through serial
control (either via a Global Cache or via direct
serial connection). With more and more appliances
having wired/wireless ethernet connectivity, I am
starting to play around with looking into how to
control my receivers over wired/wireless ethernet via
PH.

For my Sony XBR tv's, IP control was accomplished with
Dave's help here:
http://www.power-home.com/forum/forum_posts.asp?
TID=10783&KW=socket

I have been looking into the same approach for my
Onkyo recievers.

The Onkyo reciever eISCP ("e"thernet Integrated Serial
Control Protocal) messaging is slightly different than
the direct serial protocal messaging (ISCP).
Onkyo protocal documentation is attached here:

From my web searching and testing with the "Packet
Sender" utility (found here: https://packetsender.com/
), I can make my Onkyo receiver turn on/off, change
volume, mute etc....

The Packet Sender strings look like:(in ASCII)
PowerOn:ISCP\00\00\00\10\00\00\00\08\01\00\00\00!1PWR0
1\r
Power Off
:ISCP\00\00\00\10\00\00\00\08\01\00\00\00!1PWR00\r
Power
QSTN:ISCP\00\00\00\10\00\00\00\n\01\00\00\00!1PWRQSTN\
r
Vol 20    
:ISCP\00\00\00\10\00\00\00\08\01\00\00\00!1MVL14\r

The Packet Sender strings look like:(in HEX)
Power On :49 53 43 50 00 00 00 10 00 00 00 08 01 00
00 00 21 31 50 57 52 30 31 0d
Power Off :49 53 43 50 00 00 00 10 00 00 00 08 01 00
00 00 21 31 50 57 52 30 30 0D
Power QSTN:49 53 43 50 00 00 00 10 00 00 00 0a 01 00
00 00 21 31 50 57 52 51 53 54 4e 0d
Vol 20    :49 53 43 50 00 00 00 10 00 00 00 08 01 00
00 00 21 31 4d 56 4c 31 34 0d

Similiar to what I did with my XBR TV's, I have set up
a PH_Socket.phsocket plugin (called ONKYO_SOCKET") to
send commands directly to the Onkyo IP address and
control port (port 60128 by default). The plugin has
the full initialzation data (192.168.0.83 60128).

Like with the XBR tv's, I think it again comes down to
how the PH_Socket.phsocket plugin handles special
characters (FYI - from the Help:About:Plugins area:
Raw Socket Plugin, Plugin Version is 2.4, SDK version
is 1.2).

I have tried most every variation that I can guess at:
ph_picmd(2,"ONKYO_SOCKET",1,0,0,"ISCP0000000000000000~
n","")

My question likely centers around how the plugin
handles (or doesn't handle) special characters. I
also have some uncertainty with respect to 8th and
12th characters from the left (has to do with Onkyo's
protocal and data field sizes). Not being a computer
engineer/scientist, I am a bit at a disadvanged here.

16_121355_eISCP.JPG">

Edited by smarty - June 16 2020 at 12:13


__________________
Elk - Insteon - BlueIris - DMC1 - PowerHome - XLobby - HA_Bridge w/Dots - Brultech
Back to Top View smarty's Profile Search for other posts by smarty
 
smarty
Super User
Super User
Avatar

Joined: May 21 2006
Location: United States
Online Status: Offline
Posts: 728
Posted: June 16 2020 at 12:38 | IP Logged Quote smarty



__________________
Elk - Insteon - BlueIris - DMC1 - PowerHome - XLobby - HA_Bridge w/Dots - Brultech
Back to Top View smarty's Profile Search for other posts by smarty
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: June 16 2020 at 20:30 | IP Logged Quote dhoward

Steve,

Should be doable as long as you're running the latest version of the ph_socket plugin dated 02/07/2019.

Since you're going to be sending binary characters, you have to use a different command number and escape the binary characters (anything
below ASCII 32 or above ASCII 128). Your Power On command would look like this:

ph_picmd(2,"ONKYO_SOCKET",10,0,0,"\x49\x53\x43\x50\x00\x00\x 00\x10\x00\x00\x00\x08\x01\x00\x00\x00\x21\x31\x50\x57\x52\x 30\x31\x0d","")

I didnt have to escape every character but just thought it would be easier to do so. When escaping characters, you start with a "\" and
follow with either an "x" and 2 hex digits or 3 decimal digits so a carriage return can be escaped as either \013 or \x0d. The thing to
remember is if you're using a command 10 (instead of a 1), you MUST escape the "\" character as either \x5c or \092.

Your initialization data for the plugin should also be changed to: 192.168.0.83 60128 1

The third parameter after the port (1) is a flag telling whether data returned by the socket should be escaped or not. I didnt get a chance
to review the protocol to see if it was absolutely necessary but it cant hurt. A value of 0 (or not including the 3rd parameter) means that
no returned data will be escaped. This could be a problem if binary data is returned. A value of 1 means to escape characters that fall
outside of the range of printable ASCII characters. A value of 2 means to escape ALL returned characters. Returned data that is escaped will
always be escaped in the decimal format.

Anyways, hope this helps.

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 
smarty
Super User
Super User
Avatar

Joined: May 21 2006
Location: United States
Online Status: Offline
Posts: 728
Posted: June 17 2020 at 14:54 | IP Logged Quote smarty

Thanks Dave, I would have NEVER figured it
out...especially the "CMD" of binary "10" after
"ONKYO_SOCKET".

PWR01: On command looks like:
ph_picmd(2,"ONKYO_SOCKET",10,0,0,"\x49\x53\x43\x50\x00
\x00\x00\x10\x00\x00\x00\x08\x01\x00\x00\x00\x21\x31\x
50\x57\x52\x30\x31\x0d","")


PWR00: Off Command looks like:
ph_picmd(2,"ONKYO_SOCKET",10,0,0,"\x49\x53\x43\x50\x00
\x00\x00\x10\x00\x00\x00\x08\x01\x00\x00\x00\x21\x31\x
50\x57\x52\x30\x30\x0d","")


The Plugin Trigger Returns info like:
temp1= _ONK-SOCKET-TRIG temp2= 0 temp3= 62 temp4=
60128 temp5= ISCP\000\000\000\016\000\000\000
\001\000\000\000!1PWR00\026
temp6= 27 temp7= ONKYO_SOCKET temp8= 1 temp9= 1
temp10= 192.168.0.83



The PWRQSTN: Power Question is trickier, because the
string length is longer, and the data field size
changes (note the "\x0a\" character...

ph_picmd(2,"ONKYO_SOCKET",10,0,0,"\x49\x53\x43\x50\x00
\x00\x00\x10\x00\x00\x00\x0a\x01\x00\x00\x00\x21\x31\x
50\x57\x52\x51\x53\x54\x4e\x0d","")

MANY MANY thanks again to you Dave!

__________________
Elk - Insteon - BlueIris - DMC1 - PowerHome - XLobby - HA_Bridge w/Dots - Brultech
Back to Top View smarty's Profile Search for other posts by smarty
 
smarty
Super User
Super User
Avatar

Joined: May 21 2006
Location: United States
Online Status: Offline
Posts: 728
Posted: June 20 2020 at 13:45 | IP Logged Quote smarty

Dave,
While I was indeed able to get this working with your
help (again - thank you), it got me to thinking that
maybe I have somehow/somewhere overlooked where there
was instructions for how this PH_Socket.phsocket plugin
works and the initialazation options available for it.

The lastest PH "help" file for the socket plugin makes
no mention of these options...or did I overlook
something?     

__________________
Elk - Insteon - BlueIris - DMC1 - PowerHome - XLobby - HA_Bridge w/Dots - Brultech
Back to Top View smarty's Profile Search for other posts by smarty
 
dhoward
Admin Group
Admin Group
Avatar

Joined: June 29 2001
Location: United States
Online Status: Offline
Posts: 4447
Posted: July 06 2020 at 09:51 | IP Logged Quote dhoward

Steve,

Sorry I missed this.

Nope, you didnt overlook anything . The additional command options and such are new in the current ph_socket plugin and had
not been documented yet. I have since updated the latest Help file available in the 2.2 beta3 version with all current
functionality.

Hope this helps,

Dave.
Back to Top View dhoward's Profile Search for other posts by dhoward Visit dhoward's Homepage
 

If you wish to post a reply to this topic you must first login
If you are not already registered you must first register

  Post ReplyPost New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum