Home AMX User Forum AMX General Discussion

IP control of Panasonic plasmas without Java?

Greetings.

I have an interesting issue concerning control of multiple Panasonic plasma displays.

An existing project I have been brought in on has six Panasonic 65" plasma monitors. They are being controlled via IP, using the AMX supplied Java module that I myself have used before. The problem is that after several days of non-use (a weekend, for example) the plasmas stop working. There will be no control of any of them, until the NI-3100 is rebooted. All other functions (including three projectors, several cameras, et cetera) work just fine, so it isn't just the NI crashing.

Personally, I don't like using the Panasonic Java module: even though it works, it constantly generates errors. Each instance of the module in every system I have ever used the module in will generate errors from the Java module. As I am not proficient in Java, I tend to avoid these modules as they are practically impossible for me to troubleshoot.

I rewrote the code that handles the plasmas to eliminate the Java modules. I was hoping to fix the "needing to reboot every Monday" issue, as well as eliminate the barrage of errors the modules generate. As I am only turning the plasmas on & off, and the protocol is so simple, I thought it would be an easy task. I used a common module to handle the IP socket (which works perfectly), opened connections to the plasmas at port 1024 (from the Panasonic manual), and sent the RS232 strings (which the manual says will work the unit through IP).

I get no response whatsoever from the plasmas. No power control, nothing. All I get from the plasmas (using a send_string to the debugger to view the return strings) is a string "PDPCONTROL....(line of gibberish)". every minute or so (I believe it is when the socket is opened).
define_function MONITOR_1_POWERON()
{
  send_string dvmon1,"$02,$50,$4F,$4E,$03" // Power on
 }

DATA_EVENT [dvmon1]
{
    STRING:
    {
      send_string 0,"'Incoming from Monitor 1:',data.text"
      IF (FIND_STRING(data.text,'PASSWORD:',1))
      {
       WAIT 1 SEND_STRING dvmon1,"'Panasonic',13"
        }
     }
}

The plasmas never once sent the password request (I do have authentication disabled in the plasmas' menus)

I am doubly hindered by not being able to directly view the IP strings (the main reason I greatly prefer RS232 communications over IP) but I have not seen any reason why this didn't work.

Any ideas? Anyone ever control these monitors IP without Java modules? I can confirm that the socket is being opened with no problems, I can ping the plasmas (plus they work with the Java code) so I know the hardware is correctly set.

For some reason, I didn't retain a copy of the system debugger, but it didn't really show anything relevant to this issue. The plasmas don't return any errors (or anything at all) in response to my strings, so I am stuck.

Thanks for any help in advance.

Comments

  • The PDPCONTROL string is the monitor requesting authentication. I don't have the docs handy, but it is the same authentication method used for PJLink.

    --D
  • travistravis Posts: 180
    I think that PDPCONTROL stuff is for "authentication"

    There is a module posted somewhere on this forum for the MD5 stuff for interacting with panasonic.
  • HyyrHyyr Posts: 9
    Thanks for the responses. That information is what I needed. The Panasonic protocol manual I was using never mentioned anything about MD5 encryption. So much for disabling authentication in the display's menu.

    I did find a document on the web detailing the use of MD5 in relation to the command strings.

    What on earth were the Panasonic engineers smoking, thinking that simple control over a lousy flat-panel monitor requires 128-bit encryption??

    Thanks again for your help! I'm confident I can get these working now.
  • cristibadcristibad Posts: 69
    How isi it possible to disable enchryption?
    in my pdp admin1 password isn't Panasonic...
  • The PJLINK commands for Power On/Off are ..

    SEND_STRING port, "'%1POWR 1',13";

    and

    SEND_STRING port, "'%1POWR 0',13";


    But here's the problem with PJLINK - the password.

    So, remove the password and these commands will work.

    The default login is admin1/panasonic - so get rid of 'panasonic'

    You (or someone) can try to figure PJLINK with security, but I've never bothered, I just clear the password.
  • cristibadcristibad Posts: 69
    I removed the password (but from user1 account because admin1 doesn't work or panasonic is not the password) and instead of 1 xxxxxxxxxxx i receive 0 when connected to terminal.

    I'll try to remove the pass again - from user1 account - and use the commands you sent.

    keep in touch!

    thank you!
  • cristibadcristibad Posts: 69
    no success...
  • Attached file works for PJlink projectors and Panasonic plasmas with or without password. The trick is to replace the "PJLINK 1" string with "CONTROL 1"
  • cristibadcristibad Posts: 69
    using hercules terminal, i can send the commands, but no succes in netlinx.
    I think the port is not opened.
    I use ip_client_open in data_event - for other equips is working....Marantz avr (sr7007).
  • cristibadcristibad Posts: 69
    ok...so i have it online...still trying to send commands...
  • cristibadcristibad Posts: 69
    no success! connected with ip_client_open but no rections to commands
    "SEND_STRING dv_tv_living, "'%1POWR 0',13""
  • ericmedleyericmedley Posts: 4,177
    Are you able to setup a connectino via your computer? (PuTTY or whatever?)
  • cristibadcristibad Posts: 69
    Yes, i use Hercules terminal to send commands and it works.
    More, in netlinx i use ip_client_open and it works, but no reaction when send_string command.

    i have "CIpEvent::OnLine 0:40:1"
  • ericmedleyericmedley Posts: 4,177
    Can you post your code where you setup the connection and also where you try and send the command? It's probably something you're doing there.
  • cristibadcristibad Posts: 69
    works fine :)
    thank you!
  • gkolikovgkolikov Posts: 2
    Faced with a similar problem
    The situation is like that CRISTIBAD
    Tell me, how did you decide?
  • ericmedleyericmedley Posts: 4,177
    gkolikov wrote: »
    Faced with a similar problem
    The situation is like that CRISTIBAD
    Tell me, how did you decide?


    the basic principle is to see how to control it via a terminal program (like PuTTY) and then mimic that in your Netlinx Code. I don't know the protocol off the top of my head, but you'll probably have to follow these basic steps.

    1) open an IP conversation with the device (ip_client_open())
    2) wait for whatever response it sends out (perhaps something like password:__)
    3) when you get the first response - send the appropriate answer (something like send_string MyIP_Port,'password'
    4) wait for acknowledgment of the previous step
    5) send the next command
    wash rinse repeat...
Sign In or Register to comment.