Home AMX User Forum NetLinx Studio

LifeSize Room VTC Remote Control Protocols

i am trying to use the command protocols for the remote control buttons. i know that my communication is working fine but the way i am inputting my command protocols are still unsure of if i am doing it correctly. if anybody has some kind of experience with LifeSize Room VTC please chime in.

examples of what i been trying:
BUTTON_EVENT[dvTP,166]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p call'"					//CALL
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r call'"
	}
}

BUTTON_EVENT[dvTP,45]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p back'"					//BACK
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p back'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r back'"
	}
}

BUTTON_EVENT[dvTP,130]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 0'"							//0
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 0'"	
	}
		RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 0'"
	}
}
BUTTON_EVENT[dvTP,131]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 1'"							//1
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 1'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 1'"
	}
}
BUTTON_EVENT[dvTP,132]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 2'"							//2
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 2'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 2'"
	}
}
BUTTON_EVENT[dvTP,133]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 3'"							//3
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 3'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 3'"
	}
}
BUTTON_EVENT[dvTP,134]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 4'"							//4
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 4'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 4'"
	}
}
BUTTON_EVENT[dvTP,135]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 5'"							//5
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 5'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 5'"
	}
}
BUTTON_EVENT[dvTP,136]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 6'"							//6
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 6'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 6'"
	}
}
BUTTON_EVENT[dvTP,137]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 7'"							//7
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 7'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 7'"
	}
}
BUTTON_EVENT[dvTP,138]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 8'"							//8
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 8'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 8'"
	}
}
BUTTON_EVENT[dvTP,139]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p 9'"							//9
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p 9'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r 9'"
	}
}
BUTTON_EVENT[dvTP,140]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p *'"							//*
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p *'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r *'"
	}
}
BUTTON_EVENT[dvTP,141]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p #'"							//#
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p #'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r #'"
	}
}

BUTTON_EVENT[dvTP,213]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p near'"						//NEAR CAMERA
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r near'"
	}
}
BUTTON_EVENT[dvTP,214]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p far'"							//FAR CAMERA
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r far'"
	}
}

BUTTON_EVENT[dvTP,174]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p zin'"							//ZOOM IN
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p zin'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r zin'"	
	}
}
BUTTON_EVENT[dvTP,175]
{
	PUSH:
	{
		SEND_STRING dvVTC,"'control remote -p zout'"							//ZOOM OUT
	}
	HOLD[2,REPEAT]:
	{
		SEND_STRING dvVTC,"'control remote -p zout'"	
	}
	RELEASE:
	{
		SEND_STRING dvVTC,"'control remote -r zout'"
	}
}

Comments

  • JeffJeff Posts: 374
    Yea, you've got it right but you're overdoing it a bit.

    If I remember correctly, the -p and -r flags refer to push and release. if you don't care about holding down the button, you don't need to do that.

    so you could do something like this.
    button_event[dvTP,nVTCButtons]
    {
    	push:
    	{
    		SWITCH (button.input.channel)
    		{
    			case VTC_KEY_1:
    			case VTC_KEY_2:
    			case VTC_KEY_3:
    			case VTC_KEY_4:
    			case VTC_KEY_5:
    			case VTC_KEY_6:
    			case VTC_KEY_7:
    			case VTC_KEY_8:
    			case VTC_KEY_9:				send_string dvVTC,"'control remote ',ITOA(button.input.channel-10),$0A"
    			case VTC_KEY_0:   			send_string dvVTC,"'control remote 0',$0A"
    			case VTC_KEY_STAR:			send_string dvVTC,"'control remote *',$0A"
    			case VTC_KEY_POUND:			send_string dvVTC,"'control remote #',$0A"
    			case VTC_CANCEL:			send_string dvVTC,"'control remote back',$0A"
    			case VTC_ARROW:				send_string dvVTC,"'control remote tri',$0A"
    			case vtc_circle:			send_string dvVTC,"'control remote cir',$0A"
    			case vtc_delete:			send_string dvVTC,"'control remote squ',$0A"
    			case vtc_square:			send_string dvVTC,"'control remote squ',$0A"
    			case VTC_CONNECT:			send_string dvVTC,"'control remote call',$0A"
    			case VTC_DISCONNECT:		send_string dvVTC,"'control call hangup -a',$0A"
    			case VTC_SELFVIEW:			send_string dvVTC,"'control remote home near tri',$0A"
    			case VTC_ADDRESSBOOK:		send_string dvVTC,"'control remote dir',$0A"
    			case VTC_MENU:				send_string dvVTC,"'control remote home',$0A"		
    			case VTC_UP:				send_string dvVTC,"'control remote up',$0A"				
    			case VTC_DOWN:				send_string dvVTC,"'control remote down',$0A"			
    			case VTC_LEFT:				send_string dvVTC,"'control remote left',$0A"			
    			case VTC_RIGHT:				send_string dvVTC,"'control remote right',$0A"
    			case VTC_OK:				send_string dvVTC,"'control remote ok',$0A"	
    			case VTC_VOLUP:				send_string dvVTC,"'control remote vup',$0A"	
    			case VTC_VOLDN:				send_string dvVTC,"'control remote vdn',$0A"	
    			case VTC_MUTE:				send_string dvVTC,"'control remote mute',$0A"	
    			case VTC_ZOOM_IN:			send_string dvVTC,"'set camera position -n',$0A"
    			case VTC_ZOOM_OUT:			send_string dvVTC,"'set camera position -f',$0A"
    			case VTC_CAM_UP:			send_string dvVTC,"'set camera position -u',$0A"
    			case VTC_CAM_DOWN:			send_string dvVTC,"'set camera position -d',$0A"
    			case VTC_CAM_LEFT:			send_string dvVTC,"'set camera position -l',$0A"
    			case VTC_CAM_RIGHT:			send_string dvVTC,"'set camera position -r',$0A"	
    		}
    	}
    }
    

    In this example, nVTCButtons is an array of buttons, and all the case statements are constants defined elsewhere.

    There's nothing wrong with how you're doing it that I can see, but for a lot of the buttons, do you really care that it keeps sending for as long as you push it down? Just send the command once and you're done.

    J
  • playskool1playskool1 Posts: 64
    thanks Jeff for your input. however i am trying to figure out why the command protocols are not working. i tried using "Control a Device" and i am getting no control from the 8500 TP. i am getting feedback from the NI-3100 that the Tx and Rx led lights blink when i push a button on the 8500 TP.

    on NLS2 "Control a Device" i tried these strings for example:
    "'control remote tri',$0A"
    
    "'control remote tri'"
    
    "'<control><remote><tri>',$0A"
    
    "'<control><remote><tri>'"
    

    i tried the <> brackets because in their PDF manual it showed that they were using those parameters for example:

    <verb> <object> <target> [optional]

    were those strings you used for an example working from a previous project you had?
  • JeffJeff Posts: 374
    If the Rx LED is lighting up, then you should be able to see in notifications what is coming back. Enable Asynchronous Notifications and see what is actually coming back from it when you send it.

    The LifeSize Room has some really goofy ways it handles the setup of the RS232 baud rate. Are you sure you're using the correct baud rate and the correct serial port?

    The first string you had listed is correct

    And yes, those strings I had were lifted directly from a functioning project.

    J
  • playskool1playskool1 Posts: 64
    im using the default baud rate.
    DATA_EVENT[dvVTC]
    {
    	ONLINE:
    	{
    		SEND_COMMAND data.device,"'SET BAUD 9600,N,8,1 485 disable'"
    		//WAIT 30 SEND_STRING dvVTC,"'set timer sleep 20',$0A"
    	}
    }
    
  • JohnMichnrJohnMichnr Posts: 279
    If I remember correctly the Lifesize needs to have it's control port setup for control (at least control port 1) have you tired control port 2. There is some convoluted setup routine that is described in the protocol manual.
  • JeffJeff Posts: 374
    That's what I was referring to earlier, and also why I was asking about what you were seeing in notifications

    What exactly are you getting back when the Rx led lights up?

    J
  • playskool1playskool1 Posts: 64
    ended up being that the installers had it in Port 1 and i didnt acknowledge it having a Port 2. thank you again.
  • jcereckejcerecke Posts: 40
    had similar issues with Lifesize HD units. They only have 1 control port and it's not activated by default, so you have to ssh into it and set the shell to auto. Pretty annoying really... and pointless considering on two port systems the 2nd port is active by default.
  • playskool1playskool1 Posts: 64
    jcerecke wrote: »
    had similar issues with Lifesize HD units. They only have 1 control port and it's not activated by default, so you have to ssh into it and set the shell to auto. Pretty annoying really... and pointless considering on two port systems the 2nd port is active by default.

    i personally think they should have reversed the ports, have port 1 active by default.
Sign In or Register to comment.