<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  
  
  <channel>
    <title>chrisjrob: hauppauge</title>
    <link>https://chrisjrob.com</link>
    <atom:link href="https://chrisjrob.com/tag/hauppauge/feed/index.xml" rel="self" type="application/rss+xml" />
    <description>GNU Linux, Perl and FLOSS</description>
    <language>en-gb</language>
    <pubDate>Fri, 13 Feb 2026 17:22:31 +0000</pubDate>
    <lastBuildDate>Fri, 13 Feb 2026 17:22:31 +0000</lastBuildDate>
    
    <item>
      <title>Hauppauge HVR-2200</title>
      <link>https://chrisjrob.com/2010/08/04/hauppauge-hvr2200/</link>
      <pubDate>Wed, 04 Aug 2010 00:00:03 +0000</pubDate>
      <author>chrisjrob@gmail.com (Chris Roberts)</author>
      <guid>https://chrisjrob.com/2010/08/04/hauppauge-hvr2200</guid>
      <description>
       <![CDATA[
         
         <h2 id="introduction">Introduction</h2>

<p>It seems that the HVR-2200 is something of a work-in-progress under Linux.  Plenty of people seem to have it working, but it is not simple to configure.  See the references at the end for further reading.</p>

<p>I now have this card working under MythTV, but I have not yet managed to get the programme guide updating via EIT (Freeview).</p>

<!--more-->

<p>Those new to MythTV should visit: <a href="http://parker1.co.uk/mythtv_ubuntu.php">http://parker1.co.uk/mythtv_ubuntu.php</a></p>

<h2 id="installation">Installation</h2>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo apt-get install mercurial libncurses5-dev unzip

$ wget http://www.steventoth.net/linux/hvr22xx/22xxdrv_27086.zip
$ wget  http://www.steventoth.net/linux/hvr22xx/HVR-12x0-14x0-17x0_1_25_25271_WHQL.zip
$ wget http://www.steventoth.net/linux/hvr22xx/firmwares/4019072/NXP7164-2010-03-10.1.fw
$ wget http://www.steventoth.net/linux/hvr22xx/extract.sh
$ sh extract.sh
$ sudo cp *fw /lib/firmware
or
$ sudo cp *fw /lib/firmware/`uname -r`

$ hg clone http://kernellabs.com/hg/saa7164-stable/

$ cd saa7164-stable
$ make CONFIG_DVB_FIREDTV:=n
$ sudo make install
$ wget http://www.steventoth.net/linux/hvr22xx/firmwares/4038864/v4l-saa7164-1.0.3-3.fw 
$ sudo cp v4l-saa7164-1.0.3-3.fw /lib/firmware

$ sudo adduser &amp;lt;userid&amp;gt; video
$ sudo reboot
</code></pre></div></div>

<h2 id="create-channelconf">Create Channel.conf</h2>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ sudo apt-get install dvb-apps
$ scan ./uk-CrystalPalace -o zap &gt; ~/.mythtv/channels.conf
</code></pre></div></div>

<h2 id="scan">Scan</h2>

<p>Now go to Mythbackend-Setup and perform a full scan.</p>

<h2 id="test">Test</h2>

<p>You should now have a working system, unfortunately I found that the programme guide, or EPG, was not updating.</p>

<h2 id="fixing-epg">Fixing EPG</h2>

<p>(Thanks to “Neon Dusk” from the second Ubuntu forum link in the references below.)</p>

<p>Using channels.conf to get the channel information is OK, but sometimes it doesn’t fill in all the information required.</p>

<p>Make a note of your mysql password from <code class="language-plaintext highlighter-rouge">/etc/mythtv/mysql.txt</code> - there should be a field DBPassword</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ mysql -u mythtv -p
&lt;enter mysql password&gt;
use mythconverg;
select * from `dtv_multiplex`;
</code></pre></div></div>

<p>Copy the resulting output into a text editor, here was mine.  Note the networkid is null.</p>

<table>
  <thead>
    <tr>
      <th>mplexid</th>
      <th>sourceid</th>
      <th>transportid</th>
      <th>networkid</th>
      <th>frequency</th>
      <th>inversion</th>
      <th>symbolrate</th>
      <th>fec</th>
      <th>polarity</th>
      <th>modulation</th>
      <th>bandwidth</th>
      <th>lp_code_rate</th>
      <th>transmission_mode</th>
      <th>guard_interval</th>
      <th>visible</th>
      <th>constellation</th>
      <th>hierarchy</th>
      <th>hp_code_rate</th>
      <th>mod_sys</th>
      <th>rolloff</th>
      <th>sistandard</th>
      <th>serviceversion</th>
      <th>updatetimestamp</th>
      <th>default_authority</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>1</td>
      <td>1</td>
      <td>4100</td>
      <td>NULL</td>
      <td>505833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td> </td>
      <td>33</td>
      <td>2010-06-29 19:28:10</td>
      <td> </td>
    </tr>
    <tr>
      <td>2</td>
      <td>1</td>
      <td>8197</td>
      <td>NULL</td>
      <td>481833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_64</td>
      <td>8</td>
      <td>1/2</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_64</td>
      <td>n</td>
      <td>2/3</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td> </td>
      <td>33</td>
      <td>2010-06-29 19:28:10</td>
      <td> </td>
    </tr>
    <tr>
      <td>3</td>
      <td>1</td>
      <td>12290</td>
      <td>NULL</td>
      <td>561833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_64</td>
      <td>8</td>
      <td>1/2</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_64</td>
      <td>n</td>
      <td>2/3</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td> </td>
      <td>33</td>
      <td>2010-06-29 19:28:10</td>
      <td> </td>
    </tr>
    <tr>
      <td>4</td>
      <td>1</td>
      <td>16384</td>
      <td>NULL</td>
      <td>529833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td> </td>
      <td>33</td>
      <td>2010-06-29 19:28:10</td>
      <td> </td>
    </tr>
    <tr>
      <td>5</td>
      <td>1</td>
      <td>20480</td>
      <td>NULL</td>
      <td>578166670</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td> </td>
      <td>33</td>
      <td>2010-06-29 19:28:10</td>
      <td> </td>
    </tr>
    <tr>
      <td>6</td>
      <td>1</td>
      <td>24576</td>
      <td>NULL</td>
      <td>537833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td> </td>
      <td>33</td>
      <td>2010-06-29 19:28:10</td>
      <td> </td>
    </tr>
  </tbody>
</table>

<p>6 rows in set (0.00 sec)</p>

<p>In mythtv-setup -&gt; channel editor -&gt; Edit transport
Delete all existing transports (highlight transport then press d)</p>

<p>Go to channel scanner
Select Scan Type: Full Scan (Tuned)</p>

<p>Use the values recorded from the sql statement and then do a scan. You’ll need to do this for the 6 muxes.</p>

<p>Hopefully this should find all the channels and if you repeat the sql commands you’ll see the networkid value filled in. This should then allow the EIT EPG to work</p>

<p>My resulting output was as attached:</p>

<table>
  <thead>
    <tr>
      <th>mplexid</th>
      <th>sourceid</th>
      <th>transportid</th>
      <th>networkid</th>
      <th>frequency</th>
      <th>inversion</th>
      <th>symbolrate</th>
      <th>fec</th>
      <th>polarity</th>
      <th>modulation</th>
      <th>bandwidth</th>
      <th>lp_code_rate</th>
      <th>transmission_mode</th>
      <th>guard_interval</th>
      <th>visible</th>
      <th>constellation</th>
      <th>hierarchy</th>
      <th>hp_code_rate</th>
      <th>mod_sys</th>
      <th>rolloff</th>
      <th>sistandard</th>
      <th>serviceversion</th>
      <th>updatetimestamp</th>
      <th>default_authority</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>10</td>
      <td>1</td>
      <td>16384</td>
      <td>9018</td>
      <td>529833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:49</td>
      <td> </td>
    </tr>
    <tr>
      <td>9</td>
      <td>1</td>
      <td>12290</td>
      <td>9018</td>
      <td>561833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_64</td>
      <td>8</td>
      <td>1/2</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_64</td>
      <td>n</td>
      <td>2/3</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:49</td>
      <td> </td>
    </tr>
    <tr>
      <td>8</td>
      <td>1</td>
      <td>8197</td>
      <td>9018</td>
      <td>481833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_64</td>
      <td>8</td>
      <td>1/2</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_64</td>
      <td>n</td>
      <td>2/3</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:49</td>
      <td> </td>
    </tr>
    <tr>
      <td>7</td>
      <td>1</td>
      <td>4100</td>
      <td>9018</td>
      <td>505833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:49</td>
      <td> </td>
    </tr>
    <tr>
      <td>11</td>
      <td>1</td>
      <td>20480</td>
      <td>9018</td>
      <td>578166670</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:49</td>
      <td> </td>
    </tr>
    <tr>
      <td>12</td>
      <td>1</td>
      <td>24576</td>
      <td>9018</td>
      <td>537833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:49</td>
      <td> </td>
    </tr>
    <tr>
      <td>13</td>
      <td>1</td>
      <td>8197</td>
      <td>0</td>
      <td>481833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_64</td>
      <td>8</td>
      <td>1/2</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_64</td>
      <td>n</td>
      <td>2/3</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:59</td>
      <td> </td>
    </tr>
    <tr>
      <td>14</td>
      <td>1</td>
      <td>16384</td>
      <td>0</td>
      <td>529833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:59</td>
      <td> </td>
    </tr>
    <tr>
      <td>15</td>
      <td>1</td>
      <td>24576</td>
      <td>0</td>
      <td>537833330</td>
      <td>a</td>
      <td>0</td>
      <td>auto</td>
      <td>v</td>
      <td>qam_16</td>
      <td>8</td>
      <td>3/4</td>
      <td>2</td>
      <td>1/32</td>
      <td>0</td>
      <td>qam_16</td>
      <td>n</td>
      <td>3/4</td>
      <td>UNDEFINED</td>
      <td>0.35</td>
      <td>dvb</td>
      <td>33</td>
      <td>2010-08-08 18:27:59</td>
      <td> </td>
    </tr>
  </tbody>
</table>

<p>9 rows in set (0.00 sec)</p>

<h2 id="test-again">Test Again</h2>

<p>Have a look at your programme guide, give it a few minutes - it isn’t instantaneous.</p>

<h2 id="references">References</h2>

<ul>
  <li><a href="http://parker1.co.uk/mythtv_ubuntu.php">http://parker1.co.uk/mythtv_ubuntu.php</a></li>
  <li><a href="http://www.uluga.ubuntuforums.org/showthread.php?t=942403">http://www.uluga.ubuntuforums.org/showthread.php?t=942403</a>
    <ul>
      <li><a href="http://www.uluga.ubuntuforums.org/showpost.php?p=9351505&amp;postcount=271">http://www.uluga.ubuntuforums.org/showpost.php?p=9351505&amp;postcount=271</a></li>
    </ul>
  </li>
  <li><a href="http://ubuntuforums.org/showpost.php?p=9292366&amp;postcount=3">http://ubuntuforums.org/showpost.php?p=9292366&amp;postcount=3</a></li>
  <li><a href="http://www.zedlopez.com/strangeloopiness/2010/04/mythtv_on_ubuntu_lucid_gotchas.html">http://www.zedlopez.com/strangeloopiness/2010/04/mythtv_on_ubuntu_lucid_gotchas.html</a></li>
  <li><a href="http://www.kernellabs.com/blog/?p=721">http://www.kernellabs.com/blog/?p=721</a></li>
  <li><a href="http://ubuntuforums.org/showthread.php?t=1167640">http://ubuntuforums.org/showthread.php?t=1167640</a></li>
  <li><a href="http://www.hauppauge.co.uk/site/products/data_hvr2200mc.html">http://www.hauppauge.co.uk/site/products/data_hvr2200mc.html</a></li>
  <li><a href="http://www.mythtvtalk.com/forum/hardware/8096-there-status-hvr-2250-linux-driver-2.html#post46347">http://www.mythtvtalk.com/forum/hardware/8096-there-status-hvr-2250-linux-driver-2.html#post46347</a></li>
  <li><a href="http://www.linuxtv.org/wiki/index.php/Hauppauge_WinTV-HVR-2200">http://www.linuxtv.org/wiki/index.php/Hauppauge_WinTV-HVR-2200</a></li>
  <li><a href="http://www.mythtvtalk.com/forum/hardware/12229-hvr-2200-not-picking-up-all-channels.html">http://www.mythtvtalk.com/forum/hardware/12229-hvr-2200-not-picking-up-all-channels.html</a></li>
  <li><a href="http://ubuntuforums.org/archive/index.php/t-1410407.html">http://ubuntuforums.org/archive/index.php/t-1410407.html</a></li>
</ul>

<p>The tuner card is now working under MythTV to “Watch TV”; however the programme guide is still not updating correctly over EIT.  In theory this should happen automatically after a full scan, but for some reason this seems not to be working.  It may be that this is because I have simply not left the backend to idle for long enough for an EIT scan to be initiated.</p>

<p>More news when I have it.</p>


       ]]>
      </description>
    </item>
    
    <item>
      <title>Home Theatre PC - Continued...</title>
      <link>https://chrisjrob.com/2010/06/29/home-theatre-pc-continued/</link>
      <pubDate>Tue, 29 Jun 2010 00:00:00 +0000</pubDate>
      <author>chrisjrob@gmail.com (Chris Roberts)</author>
      <guid>https://chrisjrob.com/2010/06/29/home-theatre-pc-continued</guid>
      <description>
       <![CDATA[
         
         <p>Finally spent a few hours on my HTPC.  Previously the Hauppauge HVR-2200 was working fine in Kaffeine, but was not working in MythTV.  I finally resolved this issue, and typed up some details here.</p>

<ul>
  <li><a href="/2010/08/04/hauppauge-hvr2200/">Hauppauge HVR-2200</a></li>
</ul>

       ]]>
      </description>
    </item>
    
    <item>
      <title>Home Theatre PC - Configuring Hauppauge HVR2200 TV Card</title>
      <link>https://chrisjrob.com/2010/05/22/home-theatre-pc-configuring-hauppage-hvr2200-tv-card/</link>
      <pubDate>Sat, 22 May 2010 00:00:02 +0000</pubDate>
      <author>chrisjrob@gmail.com (Chris Roberts)</author>
      <guid>https://chrisjrob.com/2010/05/22/home-theatre-pc-configuring-hauppage-hvr2200-tv-card</guid>
      <description>
       <![CDATA[
         
           <img src="https://chrisjrob.com/assets/hvr2200_board_s_200.jpg" align="right" alt="Featured Image">
         
         <p>Wow, this really is a second post in one day!</p>

<p>Following on from the DPI issue, I decided to throw science to the wind and just set DPI to 96x96 rather than 50x50, and the login screen looks better and the font size is improved (slightly larger).</p>

<!--more-->

<p>Next, I decided that I ought to check that the TV Tuner was properly detected, but whilst it was detected correctly, it was unsure of the card number, and was unable to download the firmware.  This is not entirely surprising as this TV card is fairly recent and (as usual) Hauppauge do not themselves support Linux.</p>

<p><a href="http://ubuntuforums.org/showpost.php?p=9219191&amp;postcount=212">This link</a> provided me with the basis for fixing this issue, but in the event I only needed the following:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ cd ~
$ wget http://www.steventoth.net/linux/hvr22xx/22xxdrv_27086.zip
$ wget http://www.steventoth.net/linux/hvr22xx/HVR-12x0-14x0-17x0_1_25_25271_WHQL.zip
$ wget http://www.steventoth.net/linux/hvr22xx/extract.sh
$ sh extract.sh
$ sudo su
# cp *.fw /lib/firmware/`uname -r`/
# echo "options saa7164 card=4" &gt;&gt; /etc/modprobe.d/options.conf
# exit
</code></pre></div></div>

<p>Then reboot.  Hopefully tomorrow I will have some time to continue setting up the TV card under MythTV; but for now the aerial input is required by our old MythTV system in order to record Doctor Who :).</p>


       ]]>
      </description>
    </item>
    
  </channel> 
</rss>
