Redesigning the Hardware for the Virtual TV Streaming Server

This article discusses a hardware design change to the Virtual TV Streaming Server discussed in Creating a Virtual TV Streaming Server.

If you are not familiar with the previous setup. The design revolved around an array of TV tuners connected to a 7-port USB 3.0 hub. In turn, this connected to a USB 3.0 controller which was passed through Discrete Device Assignment (DDA) through to a Windows 10 Virtual Machine. This run DVBLogic TV Mosaic, the IP TV streaming software.

 

Virtual TV Streaming Server Meltdown

The solution has run extremely well. There have been no crashes from TV Mosaic, the VM or the Hypervisor. Until last week.

The system missed last Saturdays recording schedules and on Sunday afternoon, wouldn’t initiate playback. On inspection of the VM, one of the Tuners was showing as “unknown” on the TV Mosaic console. The others were all fine. Once this phantom tuner was removed from the console, everything started working again.

Initially thinking that it was related to a coincidental BIOS update on the server, it turned out that the tuner was simply dead. I RMA’d it with DVBLogic – who didn’t challenge my diagnostic or offer any resistance – but I did have to ship it Internationally at my own expense.

A week later, I came to use the system again and, once more, it was dead. A trip to the attic later and the was dead. A multimeter confirmed that the power supply had died, and I begun an RMA process with StarTech this morning.

 

Analysis

If the power supply on the StarTech was defective, it could potentially have caused the fault with the TV Butler tuner. Although this is speculative and unprovable. My main suspicion is that the problems were caused by heat. The attic roof space is uninsulated, and the UK is in the summer period. With temperature in the attic space certainly to have ranged into the 40c’s.

Unlike with the physical TV server that this setup replaced – which had fans. This setup doesn’t. PCIe TV Tuners are intrinsically designed to withstand higher thermal variances than USB ones. The StarTech and TV Butler products are quite simply basic consumer devices. It is possible that this factor led to both of their demises.

There was a power outage mid-week last week, and the StarTech itself was not sitting on the server UPS – but it was on a surge protector. It is my belief that this did not contribute to the issue.

 

Hardware Redesign

The brief for the redesign is simple

  1. Remove essential electrical components from the attic
  2. Minimise space use
  3. Minimise electrical consumption (as everything will now be powered through the UPS)
  4. Do not clutter up the backplane of the server with dongles

 

Power

To accommodate #1, #2 and #3 the USB Hub is going to be eliminated from the design. The TV Tuners will now connect directly to the DDA USB controller. In order to do this, the dual port controller will need to be replaced.

After deliberating on whether to get an externally powered or bus powered 4-port controller, I chose a , bus powered card. A risk, given my previous experience here. The DG-PCIE-04B reviewed better than a similarly priced externally powered one. The decider was that it uses a NEC chipset and not a RealTek/SiS (i.e. cheap) chip. Finally, the fact that each of the ports had its own voltage management and fuse circuit is a valuable quality safeguard.

 

Patch Panel TV

To satisfy design brief #4, the USB TV Tuners will need to be mounted away from the server. To achieve this, I am going to mount the Tuners in the patch panel.

Using a set of keystone jacks. A USB lead will run between the USB controller and the Patch panel; simply mounting to the TV Tuners held in the patch panel.
TNP USB 3.0 Keystone Jack Image

The patch panel happens to be near the ceiling, directly above the TV aerial distributor for the house. Using 4m coaxial cable, the aerial feed can route through the existing ceiling cable run and clip neatly into the TV Tuners.

The Amazon order consisted of

  • 1x
  • 1x Pack of 5
  • 4x Rankie USB 3.0 Type A Male to Male Data Cable, 3m (Server – Patch Panel)
  • 3x Ex-Pro White Coax F Plug Type – to – Male M Coax plug Connection Cable Lead – 4m (Aerial distributor – TV Tuners)

 

Installation

The installation was extremely simple.

  1. Replace the existing 2 port USB controller with the 4 port one
  2. Clip the USB 3.0 keystones into the patch panel
  3. Run cables between the USB controller and the front profile (base) of the USB keystones
  4. Passing the USB controller through to Hyper-V
    1. Shutdown the Virtual Streaming TV Server VM
    2. Get the Device Instance Path from the Details tab > Device instance path section in Device Manager e.g.
      PCI\VEN_1912&DEV_0014&SUBSYS_00000000&REV_03\4&1B96500D&0&0010
    3. Use PowerShell to dismount the USB Controller from the Hypervisor and attach it to the VM
$vmName = 'TvServer'
$pnpdevs = Get-PnpDevice -PresentOnly | Where-Object {$_.InstanceId -eq 'PCI\VEN_1912&DEV_0014&SUBSYS_00000000&REV_03\4&1B96500D&0&0010'}
$instanceId = $pnpdev.InstanceId
$locationPath = ($pnpdevs[0] | get-pnpdeviceproperty DEVPKEY_Device_LocationPaths).data[0]
Write-Host "    Instance ID: $instanceId"
Write-Host "    Location Path: $locationpath"

# Disable the Device on the Host Hypervisor
Disable-PnpDevice -InstanceId $instanceId -Confirm:$false

# Wait for the dismount to complete
Start-Sleep -s 15

# Dismount the Device from the Host Hypervisor
Dismount-VmHostAssignableDevice -locationpath $locationPath -Force

# Attach the PCIe Device to the Virtual Machine
Add-VMAssignableDevice -LocationPath $locationpath -VMName $vmName

# Note: You may need to reboot the Hypervisor hosts at this point.
# If the VM's device manager informs you that it can see the controller, but is  unable to initialise
# the controllers USB Root Hub. A reboot should fix it.
  1. Clip the DVBLogic TV Butler TV Tuners into the patch panel USB keystone jacks using the inside (top) port on the keystones
  2. Start the TV Server VM
Photograph of USB Tuners mounted in patch panel
The patch panel now has three USB ports – the left-most TV Butler is missing as the RMA replacement has not yet arrived.

Photograph of USB Tuners mounted in patch panel Photograph of USB Tuners mounted in patch panel

The Virtualised Windows 10 Streaming TV Server came back online and there hasn’t been any instability caused by the bus-powered USB controller. The TV Butler’s are warm to the touch, have plenty of air-flow and the ambient temperature can be monitored via existing sensors in the room.

The completed assembly in the Patch Panel

With any luck, I will not need to revisit this project for quite some time!

Hyper-V Discrete Device Assignment (DDA) with a TV Tuner (Hauppauge HVR-4400)

System Requirements:

  • Windows Server 2016
  • Hauppauge HVR-4400 PCIe Tuner

The Problem:

I am a DVBLink user. DVBLink does not play nicely with Windows Service and consequently it wants to run on a client OS. This means that I have lots of server hardware running server Operating Systems and one device with 4 TV Tuners in it running Windows 10.

With the release of Windows Server 2016 came the promise of VMWare like PCIe Pass-through, allowing physical devices on the PCI bus to be attached to VMs. The plan is to attach the PCIe TV Tuner and attempt to get DVBLink working in a VM so that the physical unit can be decommissioned (saving the power bill).

More Info

As part of the process, I was considering building a new server at the start of 2017 to perform a consolidation against. The Windows 10 DVBLink machine would be one consolidated devices onto more powerful modern hardware. I would also need new TV Tuners as only 2 of the 4 in the DVBLink TV Server is PCIe, the rest are PCI. Again, there are opportunities to consolidate that into fewer PCIe devices too.

The driver for the new server was Hyper-V PCIe Pass-through, or “Discrete Device Assignment” (DDA) as Microsoft are calling it. It is however quite difficult to find out whether BIOS firmware supports the proper implementations of I/O-MMU VT-d to permit it, making the purchase a risk. Equally, there is no guarantee that DDA will work with a TV Tuner.

Consequently, I decided to borrow a dual CPU Dell PowerEdge R630 to perform the experiment as there were several reports on-line that the R6xx and R7xx have the proper VT-d and SR-IOV feature set for this type of activity. Well done Dell (why don’t you advertise this?!).

After updating firmware, adding the TV Tuner and installing Windows Hyper-V Server 2016 on the machine, the first step was to – as an experiment – attempt to install the TV Tuner drivers on Windows Server 2016 (which errored). After that it was time to run the DDA Survey Script from Microsoft.

Download: DDA Survey Script (GitHub)

 

This was promising. The script found two devices that it stated were capable of being used with DDA

PERC H730 Mini
Express Endpoint -- more secure.
And its interrupts are message-based, assignment can work.
PCIROOT(0)#PCI(0100)#PCI(0000)

and

Hauppauge WinTV HVR-4400 (Model 121xxx, Hybrid DVB-T/S2, IR)
Express Endpoint -- more secure.
And it has no interrupts at all -- assignment can work.
PCIROOT(0)#PCI(0200)#PCI(0000)

The next step was to dismount the device from the Hypervisor and make it available to Hyper-V

# Find the HVR-4400
$pnpdevs = Get-PnpDevice -PresentOnly | Where-Object {$_.Class -eq "Media"} | Where-Object {$_.Service -eq "HCW85BDA"}# ... or if you know the hardware ID
$pnpdevs = Get-PnpDevice -PresentOnly | Where-Object {$_.InstanceId -eq "PCI\VEN_14F1&DEV_888
0&SUBSYS_C1080070&REV_04\4&39CDA168&0&0010"}foreach ($pnpdev in $pnpdevs) {
Disable-PnpDevice -InstanceId $pnpdev.InstanceId -Confirm:$false
Write-Host 'Device ' $pnpdev.InstanceId ' Disabled. NOTE: If this hangs, reboot and try again'
$instanceId = $pnpdev.InstanceId
$locationpath = ($pnpdev | get-pnpdeviceproperty DEVPKEY_Device_LocationPaths).data[0]
Write-Host 'Dismounting Device At: ' $locationpath ' (' $instanceId ')'
Dismount-VmHostAssignableDevice -locationpath $locationpath
Write-Host $locationpath
}

Initially, it hung PowerShell (and the system) so I had to hard reset the server. In this instance it was in fact necessary to reboot after issuing

Disable-PnpDevice

After trying again and rebooting the Dismount-VmHostAssignableDevice failed with

dismount-vmhostassignabledevice : The operation failed.
The manufacturer of this device has not supplied any directives for securing this device while exposing it to a
virtual machine. The device should only be exposed to trusted virtual machines.
This device is not supported when passed through to a virtual machine.
The operation failed.
The manufacturer of this device has not supplied any directives for securing this device while exposing it to a
virtual machine. The device should only be exposed to trusted virtual machines.
This device is not supported and has not been tested when passed through to a virtual machine. It may or may not
function. The system as a whole may become unstable. The device should only be exposed to trusted virtual machines.
At line:1 char:1

It would not proceed past this point. The trick was to change the line to

Dismount-VmHostAssignableDevice -locationpath $locationpath -Force

The next step was to ensure that the VM’s Automatic Stop Action was set to anything other than “Save”

Set-VM -Name “10-TEST” -AutomaticStopAction Shutdown

… and at this point it was simply a case of creating a VM and assigning the device

Add-VMAssignableDevice -LocationPath “$locationpath” -VMName “10-Test”

At which point the device immediately popped up in Device Manager under Windows 10 in the Generation 2 VM

DDA PCIe Passthrough in Device Manager

…. before the VM blue screened a few seconds later.

Blue Screen of Death

I tried to use several versions of the HVR-4400 driver that I could find and it made no difference. The VM would crash whenever it attempted to talk to the card. The Hypervisor itself did not seem to be impacted by the Blue Screen event and itself did not crash.

I also tried fully removing the device from the Hypervisor using DEVCON and clearing out the driver using pnputil. Superficially, this action made it worse as the VM wouldn’t boot at all now if it had a driver on-file for the TV Tuner. Before it would at least boot.

So this project was a failure and I will not be investing in new server hardware just yet. I’ll wait to see if Microsoft improve the feature set as allegedly this type of insanity (and yes, it is insane) is possible in VMWare. I do not want to change away from Hyper-V at the current time though, so I will have to stick with a client machine as a service.

This does not mean of course that this cannot work in Hyper-V. The HVR-4400 is a card from 2011/2012. So it is not exactly new hardware. PCIe TV Tuners designed to modern electrical standards and for use on PCIe 3.0 bus architectures may provide better interoperability out of the box. I just don’t have any other cards to test with and am in a bit of a chicken and egg situation over wanting to invest in new cards and servers unless I know they will work nicely together.

If you are interested in this too and would like me to have a go testing your hardware, please get in touch via HPC:Factor.

Asus MyCinema P7131 Hybrid – Using the FM Radio tuner on Windows Vista Home Premium / Ultimate Media Centre

System Requirements:

  • Windows Vista Home Premium / Ultimate

The Problem:

The Asus MyCinema P7131 Hybrid tuner is a relatively inexpensive way of getting a good TV picture in your PC so as to allow you to make use of the full range of features available to you through Media Centre 6.0 / 6.1 under Windows Vista. The MyCinema P7131 Hybrid is also very useful as it comes with a LP mounting bracket for use in Low Profile, small form factor cases.

The card is equipped with a DVB-T tuner, FM Radio tuner, Analogue tuner, IR port and Composite/S-Video in connector, making it quite versatile out of the box when used in conjunction with the supplied Cyberlink MyCinema 5.0 software, however this is simply a duplication of functionality for MEdia Centre enabled systems and doesn’t do it quite as eloquently as the Microsoft solution. The problem is however that out of the box the Vista Media Centre is only able to detect the DVB-T tuner in the card. If you attempt to access the Radio feature you will receive the message

No Services Found

Asus Hybrid in MCE 6 - No Radio

You will be offered no other choice of services or configuration for the FM radio and the TV tuner service will only detect the DVB-T tuner irrespective of driver version used.

More Information:

If you install MyCinema, you can get access to the FM Radio, DVB-T and Analogue tuners through the interface and configuration, so it isn’t out of place to assume that the issue lies with the main driver. This isn’t actually the case. If you have the latest BDA driver for the Philips SAA3131 tuner in the device (version 1.3.3.5 at the time of writing) then your drive does expose the FM tuner to the system. The problem is that it doesn’t configure it to an extent that when Media Centre initialises a scan of the system bus for tuners, it is aware that there device is capable of supporting more than one interface (DVB-T, Analogue, Cable, S-Video/Composite and FM).

This issue is fairly trivial when you look into the problem in so far as Asus provide a “MCE Plug-in” on their CD which acts as an abstraction layer between the two, and will resultantly allow a rudimentary level of switching – more on that in a moment. The bigger problem is in that Media Centre itself is not able to handle more than one device type on a single bus. What does that mean?

Well, take my Hauppauge Nova-T-500. It provides two DVB-T tuner chips with each chip being identified on its own bus. This allows you to use both tuners simultaneously even though they are the same card. The Asus P3171 hybrid however uses software switching in the driver to specify which of the input sources to use against the cards one and only bus. This means that only one of the interfaces (DVB-T, Analogue, Cable, FM, S-Video/Composite) can be used at a time (fair enough) however Media Centre does not natively support the switching mechanism and therefore is only aware of the default interface type, you guessed it, the DVB-T tuner.

Personally, I am willing to for go the Analogue TV tuner as it will be switched off in a couple of years anyway, and I don’t have a cable service here so the use of that Tuner doesn’t interest me and I can live without the S-Video/Composite as my TV exposes three interfaces for those directly and I have other PC’s with capture cards in them – but having installed three of these Low Profile MyCinema P7131 Hybrid cards, it was bugging me that I couldn’t get the FM radio to work and complete the “fully featured” claim on my new Media Centre. Having already convinced the powers that be to free up space by getting rid of the separates hi-fi system, I was feeling duty bound to do this before someone asked for a radio station.

The Fix

This fix is not highly technical for the simple reason that having struggled to get it working, and in the possession of some better key-word concepts it turns out that there are others who have done this with other software switched ‘hybrid’ tuners and who were doing it as far back as XP MCE 2005.

So as it turns out that I am simply rediscovering here I shall not go into too much detail. If you already have Vista installed, you can start this process from step 5.

  1. Install your Asus Hybrid tuner
  2. Install Vista Ultimate / Home Premium
  3. Install Vista SP1 if needed
  4. Install Media Centre 6.1 (aka the Windows Media Center TV Pack 2008) if you have it
  5. Install the latest Tuner Drivers for the P7131 Hybrid.
    You can simply use the add-remove hardware wizard to do this, unless you want to use the Asus Splendid technology filtering in which case use the setup.exe for the driver program.
  6. On your Asus CD (Not the MyCinema one, the green one) open the root folder in Windows Explorer and go into the MCE Plug-in folder. Here you will find two executable files. One setup.exe (the 32-bit version) and another with the 64-bit version. Run the version that you require to match your operating system architecture and install it.
    Yes, you have to install it. I know Vista has its own MPEG decoders, but you have to install it. It is this MPEG encoder that provides the filter which allows you to select which of the hardware sources you will be using – Digital, Analogue/FM or Cable.Note: If you try and install this from the CD’s autorun, you will get stuck on a permanent error about Asus DVD 6 being installed. You can ignore this message as I have not seen any adverse effects of not having Asus DVD installed, however you must run the setup.exe from Windows Explorer.
  7. Restart
  8. Start Media Centre and go through setup as you would wish to normally
  9. When prompted to setup the TV Signal, chose to setup the tuner manually
  10. Select the default instance of the DVB-T tuner and go through setup
  11. Once complete, check to ensure that you have a working DVB-T configuration
  12. Exit Media Centre
  13. Open Regedit
  14. Navigate to :
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center
  15. Export the entire key Media Center and everything below it to a reg file. Call it:
    Digital.reg
  16. Open Media Centre
  17. Go to the tasks area and select setting, then TV and finally to Set Up TV Signal
  18. Repeat the tuner process but this time select the Analogue tuner and go through setup normally against that
  19. Once complete, check that the FM Radio and Analogue TV do work (do not worry if you do not have a picture)
  20. Exit Media Centre
  21. Open Regedit
  22. Navigate to :
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center
  23. Export the entire key Media Center and everything below it to a reg file. Call it:
    Analogue.reg
  24. Create a copy of Digital.reg and name it Hybrid.reg
  25. Open Hybrid.reg and Analogue.reg side by side. What you will do in the fairly complicated instructions that follow is copy the configured tuner settings for the analogue tuner and merge them into the same settings file with the digital tuner configuration data. This is fairly complicated, so be sure to take it slowly.
  26. Search the Hybrid.reg for:
    UserSettings\TuneRequest\Tuning Space\Default Locator
  27. Scroll back to the left and look at the first GUID in this key’s path e.g.
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners\{71985F48-1CA1-11D3-9CC8-00C04F7971E0}
    Note that this is tuner specific, if you are using a different model tuner this may be different
  28. If you look down to the NEXT key path, the first path GUID will be different e.g.
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Service\Video\Tuners\{A799A800-A46D-11D0-A18C-00A02401DCD4}
  29. Search Analogue.reg for this ‘new’ GUID (the second one – A799A800… in my example)
  30. Copy all lines of data associated with the second GUID Path i.e. if the key path still contains A799A800… copy it and its data
  31. Pate the data OVER the same data in Hybrid.reg so that you have full data sets for BOTH GUID’s present in the same reg file.
  32. Save Hybrid.reg and close it and Analogue.reg
  33. Import Hybrid.reg into the Windows Registry
  34. Open Media Centre
  35. Go through the tuner setup process for the DVB-T tuner again
  36. Close Media Centre
  37. In regedit navigate to (create the key if necessary):
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center\Settings\Radio
  38. If it doesn’t already exist inside this key create a new REG_SZ (String) called:
    _radioHardwareExists
    that is “underscore”radioHardwareExists
  39. Set the value of _radioHardwareExists to:
    True
  40. Open Media Centre. You will now have access to the Radio Tuner and be able to watch DVB-T (though not at the same time of course)

If anything goes terribly wrong during this process and/or you want to start again. in Regedit delete the entire key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center

Then simply import the Digital.reg file that you backed up at the beginning of the process. If you backup the .reg settings files, should you ever come to format your system again you will be able to simply re-import them into Media Centre (you may need to adjust the GUID values).

Error: “Drivers have NOT been updated. Compatible hardware not found. <>” when installing Hauppauge WinTV NOVA-T-500

System Requirements:

  • Windows 2000, XP, Vista
  • Hauppauge WinTV NOVA-T-500

The Problem:

It is highly possible that this error can be seen on other Hauppauge cards aside from my experience with the NOVA-T-500.

I just took delivery of what has turned out to be a rather disastrous eBuyer order, one of the products was a WinTV NOVA-T-500. If you follow the quick start guide (or even if you don’t) you may wind up being presented with the following error message:

Drivers have NOT been updated. Compatible hardware not found. <<click to exit>>

This happens if you use the CD to install from, download the latest driver package or try to use Windows Update as a means to save you from yourself.

Installer Error Screen Shot

Quite simple, Windows cannot find any driver for the application.

More Info:

My instant feeling of dread that I knew precisely what was going on aside, let me walk you through the problem; but before I do, let me give you the bad new right now – unless you have clumsily managed to half insert the NOVA into the PCTV slot, you will be in need of an RMA number because your board will not work.

 

The NOVA

On inspection the NOVA-T-500 is actually quite clever, Hauppauge have elected to keep their dual-tuner configuration as simple as possible, by sticking to what they presumably know works. The NOVA-T-500 is in effect nothing more than a PCI USB 2.0 Controller card with two USB 2.0 DVB-T tuners and a USB IR adapter connected directly to the controllers internal bus. Creative!

The NOVA-T-500

As you can see this particular NOVA-T-500 has the following model information:

  • WinTV-NOVA-T-500
  • DVB-T
  • 99101 LF
  • Rev D8B5

I actually just wanted to spell that out because I do think that is is quite a novel approach to their card design.

 

Exploring the driver install failure

A trip to device manager reveals a rather disconcerting unidentified, un-startable hardware device is present within the system – and effectively tells that Windows has no idea what to do with it

Device Manager with the NOVA-T-500

Most modern controller devices, while in their uninstalled state will usually have some sort of identifying attribute, yet here all we receive from the NOVA-T-500 is “HOOK”.

Here is the problem. All modern devices, PCI, USB, AGP – you name it – have a Plug n’ Play identifier (PnPID) which informs the operating system over who (in hexadecimal terms) manufactured the device (the Vid) and which device in their product inventory was just connected to a respective system bus (the Pid).

The WiTV NOVA-T-500’s correct PnPID is:

USB\VID_2040&PID_9951 (I believe)

While the PnPID of the device I received was identifying itself as:

USB\Vid_10b8&Pid_0066

To check your PnPID, all you need to do is visit the Details tab for the device properties in the Windows Device Manager (you can also locate it in the registry if you know where to look).

Vid & Pid PnP information

This explains why Windows was unable to locate a driver, the PnPID in the device driver cannot be matched to the one being identified by the PCI device and as a consequence, the driver installation fails.

It is possible, from time to time, to rewrite the driver ID’s (it will break WHQL certification) so that you can force Windows to mount the driver and load the hardware, I have done this several times quite successfully in the past and naturally wondered if this was going to be possible this time around.

 

Why this is not (easily) fixable

I needed to know the correct PnPID for the NOVA-T-500 and after a lightning search on the web, decided to give Hauppauge UK’s support a call. Sadly this was too technical for them, and they wanted me to phone Hauppauge support in the USA in order to out line the problem to a developer rather than to technical support. I did explain the whole EEprom PnPID issue to them, but these are effectively sales guys who have to pass everything back to HQ in the states that doesn’t come up on the expert system/knowledge base.

While I was explaining the PnPID concept to Hauppauge support, I started playing around with the driver files, and in reading through happened to notice that one of them did indeed contain the Vid/Pid combination being broadcast by my device. With finding this, I now have confirmation of what I suspected was the problem. The EEprom was blank!

; Uncomment these on production test systems to enable blank EEprom programming
;%BDA3700.DeviceDesc_cold2% = BDA3700.Device,USB\VID_10B8&PID_0066

For reference the “;” is a REM statement to comment out the information from being read by the Windows Driver loader, however the plain text comment for the section (found in hcw95all.inf, hcw95all_64.inf, hcw99bda.inf and hcw99bda_64.inf should you want to look) confirmed my suspicion. This Vid/Pid is used to program the EEprom of the device at manufacturing. My device had somehow skipped this part of its assembly, been boxed and found itself inside my computer – if it was going to happen, it was going to happen to me, of course it was!

The missing EEprom information explains why the device is identifying itself as “HOOK” to the system, with the EEprom in place, the PnPID tag would be decidedly different, without it we simply get engineering information.

This problem should be fixable by the end use so long as is a run-time reflash procedure and not a JTag style flash prcoess. If the process is JTag based then the card is not a write-off, it can simply be reflashed and sent back out again.

Either way, I have put in a support request to Hauppauge US with the information found in this article along with a request to be contacted by a developer/engineer and I shall see if they are willing to release the flash information so that I can fix it myself.

Hauppauge UK simply told me to RMA it and that they would look out for a bad batch.

 

Update – 15/01/2007

Hauppauge USA never got back to me, despite their promises to do so – shame on you Hauppauge. The replacement device from eBuyer arrived and works correctly, coming with the UK 4.0A release CD. Version 4.1 has been out for less than 24 hours at this point, so if you are a user, do go and update to the latest release.