IR Server Suite for Media Center (1 Viewer)

cafe.racer

Portal Pro
August 5, 2008
74
1
Home Country
United Kingdom United Kingdom
Hi, I also saw Aaron's post over on TGB, and as it seems the discussion is over here, thought I'd join up...

How are you getting on Aaron?
 

cafe.racer

Portal Pro
August 5, 2008
74
1
Home Country
United Kingdom United Kingdom
Tried it, downloaded it, and it just works - it's given me back HIP functionality to VMC.

Quickly configured it to control my amp via the serial port.

Triple tap still works, MS MCE keyboard still works...

Thanks Aaron.

Edit: P.S. When I couldn't get anythng to work last week, I gave up and got a SRM7500, which came today (typical, the day I realised I dn't need it). I might keep it, but I just tried it and the RF "bit" doesn' work with IR server Suite. It appears to install as a standard HID device - is there anything I can test for you to help get it working?
 

cafe.racer

Portal Pro
August 5, 2008
74
1
Home Country
United Kingdom United Kingdom
A couple of feature requests, then I'll stop pestering.

Modes/Profiles - it would be really good if you could have different "modes" for the remote, so you could configure IRSS to do different system wide things. For example, I have the four buttons at the bottom of the remote that don't do anything natively in MCE - currently I have them mapped to Source 1, Source 2 etc. and the rest of the buttons control MCE. It'd be really good if I could map one button to "change" the remote's function to purely control the amp, so a press of the button changes mode, then I can use Button 1 to change surround sound modes...

MST Integration - The functionality I was using HIP for and now have cracked with IRSS is to switch on the amp when the PC resumes, and off on suspend. This works well, we only have to press one button to turn everything on - high WAF. But, when the PC wakes up to record, everything turns on, even though nobody is actually there. MST has some tracking of whether it's waking up on user request or whether the system is waking up the PC, could some integration be implemented?

Great tool, thanks again.
 

tadr

Portal Member
October 4, 2008
11
0
Hi All-

Is the test version (zip + reg entries) posted earlier in this file the latest/only version of this?
I need to repurpose some MCE remote keys so I'm going to try and set it up this afternoon, but wanted to confirm first.

Edit: It looks like this only works for XP-MCE. Any chance of getting a vista MCE version? At a minimum, the provided reg keys are XP-MCE specific (as they reference the XP sdk).
Thank you!

A couple of feature requests, then I'll stop pestering.

Modes/Profiles - it would be really good if you could have different "modes" for the remote, so you could configure IRSS to do different system wide things. For example, I have the four buttons at the bottom of the remote that don't do anything natively in MCE - currently I have them mapped to Source 1, Source 2 etc. and the rest of the buttons control MCE. It'd be really good if I could map one button to "change" the remote's function to purely control the amp, so a press of the button changes mode, then I can use Button 1 to change surround sound modes...

MST Integration - The functionality I was using HIP for and now have cracked with IRSS is to switch on the amp when the PC resumes, and off on suspend. This works well, we only have to press one button to turn everything on - high WAF. But, when the PC wakes up to record, everything turns on, even though nobody is actually there. MST has some tracking of whether it's waking up on user request or whether the system is waking up the PC, could some integration be implemented?

Great tool, thanks again.

I solved your unattended recording problem by using event watcher triggers in Vista. Basically how it works:
1) Watch for suspend event
2) Check if suspend event was triggered by remote receiver. If yes, power on amp and END. If no, goto step 3
3) Launch custom MCE watcher app that does step 4
4) wait 5 sec... is ehome running? If No, repeat step 4. If yes, goto step 5.
is system being suspended? If yes, end MCE watcher app.
5) power on amp and END MCE watcher app.

Let me know if you want more details, or the app itself. I'm not sure if the same level of event triggering is available in XP-MCE.
 

cafe.racer

Portal Pro
August 5, 2008
74
1
Home Country
United Kingdom United Kingdom
Hi,

There were a couple of different versions kicking around - it did get a bit confusing. I'll reference them in a second or two.

The version I'm using, I'm am using with Vista MCE - changing the buttons' purpose is fine. BUT, I have noticed that some buttons on one of my MCE remotes don't get "seen" by IRSS, and that on the remote that the buttons do work on, the received code is different. I can't see any visual difference between the remotes, the label in the battery compartment gives exactly the same part numbers, and this is with the same MCE receiver.

I would love the functionality you mention, in fact it would be like an early Christmas. I think in your point 2) you meant power OFF the amp, but ideally if it could run a macro in IRSS, that would be perfect. If the event watcher trigger thing you mention was part of the list of events in IRSS, that would be sublime.

Hi,

The version I'm currently using is:

https://forum.team-mediaportal.com/...-freezing-resume-45357/index3.html#post314323

I had a problem with IRSS freezing on resume, and Clinton fixed it in the above post.
 

tadr

Portal Member
October 4, 2008
11
0
Hi,

There were a couple of different versions kicking around - it did get a bit confusing. I'll reference them in a second or two.

The version I'm using, I'm am using with Vista MCE - changing the buttons' purpose is fine. BUT, I have noticed that some buttons on one of my MCE remotes don't get "seen" by IRSS, and that on the remote that the buttons do work on, the received code is different. I can't see any visual difference between the remotes, the label in the battery compartment gives exactly the same part numbers, and this is with the same MCE receiver.

I would love the functionality you mention, in fact it would be like an early Christmas. I think in your point 2) you meant power OFF the amp, but ideally if it could run a macro in IRSS, that would be perfect. If the event watcher trigger thing you mention was part of the list of events in IRSS, that would be sublime.

Hi,

The version I'm currently using is:

https://forum.team-mediaportal.com/...-freezing-resume-45357/index3.html#post314323

I had a problem with IRSS freezing on resume, and Clinton fixed it in the above post.



Actually, steps 1 and 2 in the above post should read:

1) Computer is brought out of suspend
2) Check if resume event was triggered by remote receiver. If yes, power on amp and END. If no, goto step 3

My suspend task (powering off the amp) is powered using the IR server suite translator app.

Here is my resume-from-suspend approach:

I have two scripts: resume.bat and suspend.bat.
Resume.bat contains my Amp-ON command:
"C:\Program Files\IR Server Suite\IR Blast\IRBlast.exe" multich.ir

Suspend.bat contains my Amp-OFF command:
"C:\Program Files\IR Server Suite\IR Blast\IRBlast.exe" ampOff.ir

In the Vista task scheduler I have two event-triggered tasks:
ReturnFromStandby-OtherThanByRemote (triggered on wake-on-lan, scheduled wakeup, etc)
This task is set to launch the Watcher app I wrote.
When you create the task, you have to use a custom filter for the trigger. The filter I use is:
Code:
<QueryList>
  <Query Id="0" Path="System">
    <Select Path="System">*[System[(Keywords='0x8000000000000000') and (EventID=1)]]</Select>
    <Suppress Path="System">*[EventData[Data[@Name="WakeSourceText"] = "USB Root Hub"]]</Suppress>
  </Query>
</QueryList>

ReturnFromStandby-byRemote (triggered by the USB remote receiver)
This task is set to launch resume.bat (which turns on the amp)
Here is the filter:
Code:
<QueryList>
  <Query Id="0" Path="System">
    <Select Path="System">*[   System[(Keywords='0x8000000000000000') and (EventID=1)] and EventData[Data[@Name="WakeSourceText"] = "USB Root Hub"]      ]</Select>
  </Query>
</QueryList>

-----------------------------
Watcher app
This is a VB .NET 2003 application. It works as I described in the steps in the last post. Nothing fancy, AT ALL. Let me know if you want me to send you a compiled version. Here is the code:


Code:
Imports Microsoft.Win32
Imports System.IO

Module Module1
    Dim enteringSuspendScript As String = "c:\Users\Tad\Desktop\scripts\enter_standby.bat"
    Dim resumingSuspendScript As String = "c:\Users\Tad\Desktop\scripts\return_from_standby.bat"
    Public Function IsProcessRunning(ByVal ProcessName As String) As Boolean
        Return (Process.GetProcessesByName(ProcessName).Length > 0)
    End Function
    Private Sub powerStateChangeHandler(ByVal sender As Object, ByVal e As PowerModeChangedEventArgs)
        If e.Mode = PowerModes.Suspend Then
            Console.Write("Entering suspend. Exiting")
            Environment.Exit(0)
            'Shell(enteringSuspendScript)
            'Whatever you want to happen when it goes in standby/hibernate goes here
            'NOTE: This does NOT work reliably to call IRSS functions, as it only gets triggered RIGHT when the system goes into suspend.
        End If
        If e.Mode = PowerModes.Resume Then
            'MessageBox.Show("Return from suspend")
            'If you want something to happen when it wakes back up, put it here
        End If
    End Sub
    Sub Main()
        AddHandler SystemEvents.PowerModeChanged, AddressOf powerStateChangeHandler
        Console.WriteLine("Waiting for MCE to start...")

        While (1)
            If (IsProcessRunning("ehshell")) Then
                'MCE interface is running - 
                Console.WriteLine(ControlChars.NewLine + "MCE running")
                Console.WriteLine("Turning on amplifer...")
                If (System.IO.File.Exists(resumingSuspendScript)) Then
                    Shell(resumingSuspendScript)
                    Console.WriteLine("Exiting...")
                    Environment.Exit(0)
                Else
                    Console.WriteLine(resumingSuspendScript + " not found!")
                End If
            Else
                    Console.Write(".")
                End If
                'wait 2 seconds before checking again
                System.Threading.Thread.Sleep(2000)
        End While
    End Sub
End Module
 

cafe.racer

Portal Pro
August 5, 2008
74
1
Home Country
United Kingdom United Kingdom
A compilied version would be great - I need to check that I can do what I want with the IRBlast program, though; I control my amp via RS232.

Edit: nope, don't seem to be able to IRBlast serial commands, I could use some other program, I suppose - so would need two entires in your compiled program, please.

Would be really great to have this built into IRSS...
 

tadr

Portal Member
October 4, 2008
11
0
A compilied version would be great - I need to check that I can do what I want with the IRBlast program, though; I control my amp via RS232.

Edit: nope, don't seem to be able to IRBlast serial commands, I could use some other program, I suppose - so would need two entires in your compiled program, please.

Would be really great to have this built into IRSS...

What do you mean when you ask for "two entries"? Do you mean you want to run two commands upon resume? If so, that is why I have the program call a .bat file, which can then contain multiple commands (and be edited as needed). As I mentioned in the code, the "entering suspend" call doesn't work to call IRSS functions. So, the only path I need is the path to your resuming-suspend script, which I can then hardcode in and compile a copy for you. Sorry it's not more "streamlined," but I hadn't even thought about distributing this.
 

cafe.racer

Portal Pro
August 5, 2008
74
1
Home Country
United Kingdom United Kingdom
That's what I meant. Batch file, of course. I wasn't thinking, sorry, "DOH!"

Could you just make it resume.bat? It might as well be in the same folder as the program? Will that work? If not what about "C:\Program Files\IR Server Suite\Resumer\Resume.bat"?
 

tadr

Portal Member
October 4, 2008
11
0
That's what I meant. Batch file, of course. I wasn't thinking, sorry, "DOH!"

Could you just make it resume.bat? It might as well be in the same folder as the program? Will that work? If not what about "C:\Program Files\IR Server Suite\Resumer\Resume.bat"?

No problem, I made it resume.bat in the same folder as the program. You can download it here:
http://homemadenoodles.net/vmc/ehShellWatcher.zip
Of course, you will still need to create the event watcher events I discussed above to get this to work correctly. Those same filters should work as long as you're using a USB remote receiver.

Let me know if it doesn't work for some reason.
 

Users who are viewing this thread

Top Bottom