Premise [download] Vista Media Center New and Improved Module!

Motorola Premise

etc6849

Senior Member
index.php
File Name: Vista Media Center New and Improved Module!
File Submitter: etc6849
File Submitted: 3 May 2009
File Category: Premise
Author: etc6849
Contact: please post any issues
Version: 1

Please note: you may have to follow a regedit in this blog to enable media center to work with a universal remote (which should be your blaster): [URL="http://blogs.msdn.com/mswanson/archive/200.../01/272766.aspx"]http://blogs.msdn.com/mswanson/archive/200.../01/272766.aspx[/URL]

All needed commands and selectors are including in myVistaMediaCenter containers. The location and hidden attributes are customized. The TV at the bottom goes to liveTV in media center (assuming media center is already open), the DVD goes to play DVD in media center (assuming media center is already open).

Bind with a PVR. This version works with msense too, but won't do sub channels for some reason, but will do normal cable channels.

I use a GC-100 with a good ir emitter so transmission is very reliable for me, not sure how this will work for you. You may have to adjust the command times depending on the speed of your PC. My PC is a 2.4ghz Duo lightly loaded with VMC rollup and tv pack 2008 updates.

Remember to paste the three included gif files to: ...\Premise\SYS\web\Images\ClassImages

Cheers,

etc6849

Click here to download this file
 
Hey! I havent downloaded it yet, but let me be the first to applaud you for your contribution :rolleyes:

Once I get done with my current tasks on my server (I may/may not) be converting some DVDs...I'll give it a try!

Excellent!
 
Be sure to have media center open before changing the channels or before using msense with the channel provider. Live tv doesn't need to be selected though, this will happen automatically (I put in 4 seconds for this delay).

The power on and toggle actually will open media center and go to the menu allowing you to select live tv, recordings etc. If media center is already open, the power on and toggle will leave it open, not close it. I think the power on function takes 12.5 seconds to complete. The green button also does the same thing as the power on/toggle commands.

SUB CHANNEL ISSUE:
I use tvpack 2008 which allows me to receive clear qam HD channels from my cable company in a format like: 7.1.

I tried to get the sub channels to work by using the enter key on the media center remote and mapping it to a period using the irtrans software on my pc. This mapping works with the latest IR trans software after adding [KEY]\PERIOD beside the command you want to map to period. You may want to set this appropriately depending on your remote. Change the subchannel BEGIN command.

However, the subchannel portion of a tv provider channel will not fire at all and I don't know why. Neither the subchannel number or the period commands fire. If someone finds a solution to this, please post it here :)

As of now, the only solution I can come up with is to remap my HD stations in media center to 1000 + analog number. So 7.1 becomes 1071. I'm not sure how premise will handle a channel that is four digits long though, so I may have to remap them like this instead: 7.1 -> 117, 7.2 ->127, etc.

Hey! I havent downloaded it yet, but let me be the first to applaud you for your contribution :)

Once I get done with my current tasks on my server (I may/may not) be converting some DVDs...I'll give it a try!

Excellent!
 
The link to the registry hack appears to not work, so just be sure to do this if needed to disable debouncing in Media Center. I disabled the debounce feature for all remotes under HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\HidIr\Remotes...

How to disable the debounce feature of Media Center and use a single set of IR codes:

I don't know why this isn't exposed in the settings screens in Media Center, because it's something that anyone with a learning remote will run into. To disable the debounce feature, you need to modify a single registry key. Standard registry editing rules apply...make sure you create a backup, know what you're doing, etc., etc. The key is called EnableDebounce, and from what I've read in various posts, it's found in the following locations:

For Media Center 2004: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\idIr\Remotes\745a17a0-74d3-11d0-b6fe-00a0c90f57da

For Media Center 2005: The key is called EnableDebounce, and from what I've read in various posts, it's found in the following locations:

For Media Center 2004: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\idIr\Remotes\745a17a0-74d3-11d0-b6fe-00a0c90f57da

For Media Center 2005: HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\HidIr\Remotes\745a17a0-74d3-11d0-b6fe-00a0c90f57da

To use RegEdit click start->run->type regedit. Then, navigate to the appropriate key and change the EnableDebounce value from 1 (its default setting) to 0. Note that you'll have to reboot your system for this change to take effect.
 
FYI
Here are two utilities that permit you to control Windows Media Center and Vista Media Center via TCP/IP. Basically, they provide an API that lets you control Media Center.
MCE Controller (older; no longer enhanced but it works; also lets you control other Windows apps)
Vista Media Center TCP/IP Controller (newer)

It wouldn't be difficult to write a script that talks to MCE or VMC controller. But that's not as useful as having the kind of driver you've created that can bind to a PVR object. Creating a proper PVR driver that communicates via MCE or VMC would be an interesting exercise.
 
This is very neat! If only I knew how to use it with Premise! What I'm thinking about is using the ELK M1 trick on the VistaMediaCenter driver I wrote? All one has to do is add a UDS-10 driver and point it to the ip address and port of Vista Media Center TCP/IP Controller? We could then send the text strings trough a virtual serial connection to the VistaMediaCenter driver bound to a PVR?

123's past trick he showed me:
http://www.cocoontech.com/forums/index.php...107&hl=IPSC

The Device Wizard is used to create device drivers for all sorts of gear especially A/V equipment. The Wizard will ask if the device is controlled via IR or Serial commands (or both). By selecting Serial, the resulting device driver will allow you to enter a command string for each of the device's functions (like "!pwr01"). Now the device driver is able to send commands via a serial port. You'll run the Driver Wizard to help you create an "Onkyo Receiver" driver.

To make it communicate via a network port involves one more simple step: use the included Lantronix UDS-10 driver. It is all software; there's no hardware involved.

Configure the UDS-10 driver instance to talk to the Onkyo'sIP address and port. Call it "MyOnkyo" (or whatever). The final step is dead simple. When selecting a communications port for the Onkyo Receiver driver, instead of navigating to Device > SerialPorts and selecting a "COM" port, you go to Devices > Lantronix and select "MyOnkyo". Now your Onkyo Receiver driver will communicate via the network.

Here's an excerpt (page 5) from the ELK M1 driver's reference manual. it describes how to configure the Lantronix driver.

The Elk M1 Device Driver can communicate via an Ethernet port using a Lantronix device driver.

In Premise Builder, click File > Add-Ins.
Ensure Devices is selected in the Look In drop-down list.
Checkmark Lantronix and click OK.
In the Shortcut Bar, click Devices.
In the Explorer window, right-click Lantronix and select New > UDS 10.
Change the name from UDS10 to M1XEP (optional but recommended).
In the Properties window, locate the IPAddress property and enter the address used by your M1XEP card (factory default is 192.168.0.251).
Set the IPPort property to the non-secure port number used by your M1XEP card (factory default is 2101).
Leave the MAC property blank.



FYI
Here are two utilities that permit you to control Windows Media Center and Vista Media Center via TCP/IP. Basically, they provide an API that lets you control Media Center.
MCE Controller (older; no longer enhanced but it works; also lets you control other Windows apps)
Vista Media Center TCP/IP Controller (newer)

It wouldn't be difficult to write a script that talks to MCE or VMC controller. But that's not as useful as having the kind of driver you've created that can bind to a PVR object. Creating a proper PVR driver that communicates via MCE or VMC would be an interesting exercise.
 
DON'T ATTEMPT THE TV PACK FIX UNLESS YOU HAVE SYSTEM RESTORE TURNED ON. Even after fixing the program found here: http://vmccontroller.codeplex.com/Release/...ReleaseId=23251 control over ethernet is still unstable with TV PACK. I'm sure it works great with normal Vista Media Center though.

Thanks 123 for the program link :) The UDS-10 workaround works for me, but I had to use premise on a computer other than the one with media center (usually I run the premise server from my vista media center pc). I set the UDS-10 to port 40500 and ip address to match the vista media center pc. I also set the com rate to 115200. I enter serial commands as text in premise like this: button-stop\n Try a few commands, the only one that doesn't work for me so far is play-TV, but goto LiveTV works well so I'm happy. Forgot to mention, I also set the command count to 1.

The \n is necessary. Remember to telnet first and make sure the thing is working before attempting to use premise. I used Vista Media Center Controller download from here: http://vmccontroller.codeplex.com/Release/...ReleaseId=23251

If you install Vista Mediacenter and don't have tvpack 2008 it is likely to work great. I have tvpack, so I had to follow the workaround in this post:
http://vmccontroller.codeplex.com/Thread/V...?ThreadId=32804

I downloaded the replacement dlls found here:

http://www.nloit.co.uk/downloads/VmcControllerwin7v3.zip

Kill all processes and services starting with eh* and follow these steps:

WARNING TO ALL MAKING THESE MODIFICATIONS COULD DAMAGED YOUR SYSTEM

I WILL NOT BE HELD LIABLE, ALL INFO IS SUPPLIED AS IS AND IN GOOD FAITH.

Made sure Media Center was closed down

i Needed to remove the old dll from the system without removing the plugin to do this you need to remove VmcController.Add-In.dll from the GAC, (it would not let me remove it as it said it was required by a program)

you can can remove it, but only after you have removed the reference from the registry key ref ms link:
http://support.microsoft.com/kb/873195 ref to VmcController.Add-In only to be removed
now it will let you remove it from gac.

to do that explore \windows\assembly and find VmcController.Add-In ... right click ans select uninstall

then i unzipped by latest dll pack now

http://www.nloit.co.uk/downloads/VmcControllerwin7v2.zip (this includes multiple extender support upto 9)

copied the updated VmcController.Add-In.dll to the windows\ehome folder
(this is so the system uses this instead of the official one from the gac)

I then copied the other updated dll's into 'program files\Media Center Network Controller'

started media center,

This gave me: 40400 40500 and 40510 as the console startup inc web server
then extender1 Mcx1 gave me 40401 40501 and 40511
extender2 Mcx2 gave me 40402 40502 and 40512
extender3 Mcx3 gave me 40403 40503 and 40513
extender4 Mcx4 gave me 40404 40504 and 40514
 
So I played with the vista media controller 123 links too. It's in beta, so use at your own risk. I found it to be too unstable on my system and it eventually crashed the vista media center aggregator service so I did a system restore to before I installed it. I definitely wouldn't try using it with TV Pack 2008. It may run fine on regular vista media center.

BTW, I did get the vista media controller to work on the same machine as Premise. I think I was using a carriage return instead of a line feed when I originally tried it. For me the IR driver I built for premise seems more reliable as I have TV Pack and the IR driver I made is 100% stable.
 
Back
Top