Home AMX User Forum AMX Technical Discussion
Options

? RS232 Module for Panasonic Profesional Plasma Display PF-series

Hi there,

anyone has a Module to control over RS232 the Panasonic Professional Plasma Displays, like TH-50PF10, TH-65PF10, TH-103PF10? Please drop me a line. Thanks much in advance!

Comments

  • Options
    PhreaKPhreaK Posts: 966
    I haven't got a ready made module for you but the control protocol's pretty friendly for them. Comms are at 9600,N,8,1.
  • Options
    Pretty sure there's a module for a TH-42PH10UKA on the AMX website which I think is the same protocol. It's a way big Duet module though. I remember writing something basic for a Panasonic 65PF10UK and a 50PZ850U to handle power, inputs, volume and channels (on the pz850u) and it didn't take very long. I was in a rush and I ended up just throwing it into _main.axs. How much functionality were you looking for?

    --John
  • Options
    bobbob Posts: 296
    I am looking for basic funcitonality like power on/off, input selection and thats pretty much it as it would be using for display only. No TV function, etc.Thanks!
  • Options
    I wrote a this on-site at a project in Hawaii. The final version is mixed in with a lot of other code since I didn't write it as a module originally, but I think this was the one I used on one of my interim trips and was functioning. You'll want to implement a queue, parsing, and the rest of the features you want, but this should get you started. This was system 3, in a 3-master system. All of the TP button events were handled on System 1 so you'll need to add your routines to handle the button pushes from the Touchpanels and pulse the channels on the virtual device.
    PROGRAM_NAME='MBR Main'
    (***********************************************************)
    (***********************************************************)
    (*  FILE_LAST_MODIFIED_ON: 12/29/2008  AT: 13:28:02        *)
    (***********************************************************)
    (* System Type : NetLinx                                   *)
    (***********************************************************)
    (* REV HISTORY:                                            *)
    (***********************************************************)
    (*
        $History: $
    *)
    (***********************************************************)
    (*          DEVICE NUMBER DEFINITIONS GO BELOW             *)
    (***********************************************************)
    DEFINE_DEVICE
    (* REAL DEVICES *)
    dvTVMBR		=	5001:1:0
    
    (* VIRTUAL DEVICES *)
    
    vdvTVMBR = 33001:1:0
    
    
    
    (***********************************************************)
    (*               CONSTANT DEFINITIONS GO BELOW             *)
    (***********************************************************)
    DEFINE_CONSTANT
    
    
    (***********************************************************)
    (*              DATA TYPE DEFINITIONS GO BELOW             *)
    (***********************************************************)
    DEFINE_TYPE
    
    (***********************************************************)
    (*               VARIABLE DEFINITIONS GO BELOW             *)
    (***********************************************************)
    DEFINE_VARIABLE
    INTEGER nDebugMBRTV
    INTEGER bBusy
    
    
    
    (***********************************************************)
    (*               LATCHING DEFINITIONS GO BELOW             *)
    (***********************************************************)
    DEFINE_LATCHING
    
    
    (***********************************************************)
    (*       MUTUALLY EXCLUSIVE DEFINITIONS GO BELOW           *)
    (***********************************************************)
    DEFINE_MUTUALLY_EXCLUSIVE
    
    (***********************************************************)
    (*        SUBROUTINE/FUNCTION DEFINITIONS GO BELOW         *)
    (***********************************************************)
    (* EXAMPLE: DEFINE_FUNCTION <RETURN_TYPE> <NAME> (<PARAMETERS>) *)
    (* EXAMPLE: DEFINE_CALL '<NAME>' (<PARAMETERS>) *)
    
    
    (***********************************************************)
    (*                STARTUP CODE GOES BELOW                  *)
    (***********************************************************)
    DEFINE_START
    nDebugMBRTV = 0
    (***********************************************************)
    (*                THE EVENTS GO BELOW                      *)
    (***********************************************************)
    DEFINE_EVENT
    
    DATA_EVENT[dvTVMBR]
    {
      ONLINE:
      {
    	 SEND_COMMAND dvTVMBR, "'SET BAUD 9600,N,8,1'"
      }
      STRING:
      {
    	 IF(nDebugMBRTV)
    		SEND_STRING 0, "DATA.TEXT"
      }
    }
    
    
    CHANNEL_EVENT [vdvTVMBR,0]
    {
      ON:
      {
    	 SWITCH(CHANNEL.CHANNEL)
    	 {
    		CASE 24:  {WAIT 5
    	                     SEND_STRING dvTVMBR,"$02,'AUU',$03"	//Volume Up
    					 }
    		CASE 25:  {WAIT 5
    	                     SEND_STRING dvTVMBR,"$02,'AUD',$03"	//Volume Down
    					 }
    		CASE 26:  SEND_STRING dvTVMBR,"$02,'AMT',	 $03"	//Mute Toggle
    		CASE 27:  SEND_STRING dvTVMBR,"$02,'PON',	 $03"	//Power On
    		CASE 28:  SEND_STRING dvTVMBR,"$02,'POF',	 $03"	//Power Off
    		CASE 56:  SEND_STRING dvTVMBR,"$02,'AMT:1',	 $03"   //Mute On
    		CASE 57:  SEND_STRING dvTVMBR,"$02,'AMT:0',	 $03"   //Mute Off
    		CASE 81:  SEND_STRING dvTVMBR,"$02,'IMS:SL1',    $03"	//Input SL1
    		CASE 82:  SEND_STRING dvTVMBR,"$02,'IMS:SL2',    $03"   //Input SL2
    		CASE 83:  SEND_STRING dvTVMBR,"$02,'IMS:SL3',    $03"   //Input SL3
    	 }
      }
    }
    
    
    (***********************************************************)
    (*            THE ACTUAL PROGRAM GOES BELOW                *)
    (***********************************************************)
    DEFINE_PROGRAM
    
    (***********************************************************)
    (*                     END OF PROGRAM                      *)
    (*        DO NOT PUT ANY CODE BELOW THIS COMMENT           *)
    (***********************************************************)
    
    

    Minimum time between commands is 250ms, TV doesn't respond for up to 15 seconds after a power command is issued, and the cable is straight thru 2,3,5

    --John
  • Options
    bobbob Posts: 296
    Guys, thanks much!
Sign In or Register to comment.