Home AMX User Forum NetLinx Studio
Options

Problem on IR with TASCAM MD-350

Problem on my first AMX program again~.~
When I using NI-3100 IR port to control the TASCAM MD-350,
some command like "Title Edit" then with "Search>>" or "<<Search" to select character,
the character in MD-350 will shift 3 or 4 characters once I pressed the button on touch panel.
For example: Using "Title Edit" function of MD-350, if the character cursor located at "A", then
I pressed the programmed touch panel "Search>>", the character should change to "B", but actually
the character will shift to "E"......

I used the IR file provided at AMX data base named " Tascam06.irl ", I also re-learn the IR with IRIS,
the result is the same....any idea for this problem?
Is the problem arose from the length of IR?
If I found IR remote code from TASCAM (HEX code) attached below, what can I do with IRIS?

Comments

  • Options
    ericmedleyericmedley Posts: 4,177
    Are you using the PULSE command? If so it's probably holding the channel on too long.

    There are many ways to adjust the length of the pulse time. One is SET_PULSE_TIME()

    Myself, I don't use PULSE.

    I use the TO. My idea with that is that most people get used to a handheld remote and how long to hold a button down to CH up or Down, Vol Up or down, etc... They also learn the AMX touch pad the same way. Through normal use the user will get the feel of how long to hold the button.

    Some here would argue to use MIN_TO or a whole host of other ways to do it.

    Bottom line, a straight PULSE command may not work for all your situations.

    example:
    BUTTON_EVENT[DEV_TP_1,nIR_Buttons]
    {
    push:
      {
      tp_button_pushed=button.input.channel
      TO[dv_IR_Emitter,tp_button_pushed] // flashes the IR channel.
      TO[DEV_TP_1,tp_button_pushed] // For TP feedback
      }
    }
    
    

    Hope that helps.
  • Options
    Joe HebertJoe Hebert Posts: 2,159
    ericmedley wrote:
    BUTTON_EVENT[DEV_TP_1,nIR_Buttons]
    {
    push:
      {
      tp_button_pushed=button.input.channel
      TO[DEV_TP_1,tp_button_pushed] // For TP feedback
      }
    }
    
    Just as an FYI, all you need for TP button feedback is:

    TO[BUTTON.INPUT]

    Embedded objects are your friend.
  • Options
    ericmedleyericmedley Posts: 4,177
    Joe Hebert wrote: »
    Just as an FYI, all you need for TP button feedback is:

    TO[BUTTON.INPUT]

    Embedded objects are your friend.

    tru dat. That's actually what I do.
  • Options
    Give it a try with the 'CP' and 'SP' commands of the IR Ports.
    Essentials:
    DEFINE_DEVICE
    dvPANEL = 128:1:0
    dvDVD = 5001:5:0 // NI2000 IR1
    
    DEFINE_EVENT
    DATA_EVENT[dvDVD]
    {
    	ONLINE:
    	{
    		SEND_COMMAND dvDVD,"'CTON',1" // 100ms sending IR
    		SEND_COMMAND dvDVD,"'CTOF',2" // 200ms Pause to the next CP or SP command
    	}
    }
    
    SEND_COMMAND dvIR,"'CP',1" // clear IRs in queue and send IR code ch1, based on CTON and CTOF settings
    
    // This will create a sequence of channels 11,12,13
    // each Ch sent 100ms and 200ms pause between the channels 
    SEND_COMMAND dvIR,"'CP',11" // clear all previous codes in queue, add ch11
    SEND_COMMAND dvIR,"'SP',12" // add ch12
    SEND_COMMAND dvIR,"'SP',13" // add ch13
    
    This works independently of any SET_PULSE_TIME, and the CTON and CTOF can be set individually for each IR port.
  • Options
    Thanks all of you....the problem is solved with eric's suggestion^.^
Sign In or Register to comment.