Advanced Remote Configuration

Using Remotes without NPVR in focus, through Hauppauge IR software or IR Server Suite

Needing NPVR to have focus in order to use your remote can be a major nuisance. It is possible to have your remote commands sent directly to NPVR whether or not it is the program in focus. This is particularly useful with dual display setups; I can browse the web on the monitor attached to my NPVR server while someone else continues to use the remote to operate NPVR, running on a secondary display. This can be done using ‘window messages’ targeting NPVR. We just need to know the message codes that correspond to various commands, and how to implement them in either the Hauppauge IR software, or IR server suite.

Hauppauge IR Software

As standard this software sends commands to the window in focus. To send the commands direct to NPVR, we can target it using its window class1. (There are other options, but this works best)2 This is done with the ‘findwnd’ command, combined with the appropriate message code for the commands you want to send. Details of the message codes are shown here: Command List

For example, the lines specifying the ‘arrow-up’ and 'arrow down' commands looks like this:

NAVUP={findwnd(WindowsForms10.Window.8.app.0.33c0d 9d,,)}{SendMsg(32775,38,0)} \\
NAVDOWN={findwnd(WindowsForms10.Window.8.app.0.33c0d9d,,)}{SendMsg(32775,40,0)}

'WindowsForms10.Window.8.app.0.33c0d9d' is the 'window class' of NPVR. 32775 specifies the type of message to be sent, so this will stay the same for all the commands. 38 and 40 are the codes for the 'arrow up' and 'arrow down' keystrokes respectively.

You can use this attached irremote.ini file to control NPVR exclusively with a Hauppauge 45 button remote: Irremote.zip (670 downloads)

Just drop the file into the C:\Windows folder (be sure to take a backup of your old one first), and restart the IR utility.

The green power button will start NPVR. (Change C:\Progra~1\…. To C:\Progra~2\... in 64 bit Windows versions.)

You can change the functions of buttons as you wish to add extra functionality. For example, in the attached file the ‘text’ and ‘subcc’ keys have no commands associated with them, so these could be set to other keystrokes, or to trigger .bat files (i.e. to close NPVR, or tell the PC to sleep).

For example, the following line would use the 'text' button to trigger a file named closenpvr.bat, in the root of the C: drive:

TEXT={run(C:\closenpvr.bat)}

Additional info on using this software can be found here:


IR Server Suite [IRSS]

IR Server Suite is a powerful and easy to use program that, with a supported receiver, will allow you to use almost any remote control with your PC. (It can also be set up to change channels on your STB, and run command when your PC goes in and out of standby.)

It can be downloaded here: Once installed and configured with your receiver, setup for NPVR will be done in the ‘Translator’ component. Guide here:

To set this up for NPVR you will need to add each key and assign commands to it. These should be set up as ‘system wide’ commands.

For each key you will need to follow these steps:

  • Click the ‘New’ button and teach Translator the command by pressing the button on your remote.
  • Select the ‘Window Message’ tab
  • Under ‘Target’ select ‘Class’ and paste in the Window Class of NPVR: WindowsForms10.Window.8.app.0.33c0d9d
  • Enter 32,775 in the ‘Message’ box.
  • Enter the appropriate message code from the command list in the ‘Word Param’ box. 'Long Param' should be left at 0
  • Press ‘Set’.

The configuration can be exported to an xml file. I’ve attached a sample XML configuration which should work with a Hauppauge 45 button remote if imported: IRServerSuite.zip (404 downloads)
Again, the volume keys alter the system wide volume, and the ‘text’ and ‘subcc’ keys are unassigned.

1 Window class is currently ‘WindowsForms10.Window.8.app.0.33c0d9d’ It is possible that this could change with a future release, but you can check what it is with Spy++. It is also the same in PVRX2, so the attached configurations can be used to control GBPVR too.

2 You can target the window name, but the window name can change, as it does when you start watching something. Also, other windows can have ‘NPVR’ in their title (i.e. a browser when looking at the support forum) and can receive commands by mistake. Similarly, IR Server Suite can target ‘NextPVR.exe’, but this will stop working if you enable a second instance of NextPVR.exe for an NMT or MPV.

Page last modified on November 22, 2016, at 02:09 PM