[linux-dvb] Firmware extraction script for Pinnacle PCTV Sat Pro USB

anton repko trcheton at gmail.com
Wed Jun 18 20:46:34 CEST 2008

2008/6/13 Dominik Kuhlen <dkuhlen at gmx.net>:

> Are you sure that the 450e does need a firmware?
> I know that the 452e does not.
Yes, the 450e uses firmware of the 400e (the hardware seems to be

As the 400e firmware is rather hard to find, I send complete extraction
script for driver found on the Pinnacle site (new version; firmware is the

wget "
cat >XP32.md5 <<!hash!
ba0bc4d0f84bb9f419e9fbf90ef1ed9f  XP32.ZIP
md5sum -c XP32.md5
if [ $? -ne 0 ]; then exit 1; fi
unzip -j XP32.ZIP XP/pctv4XXe.sys
# dd if=pctv4XXe.sys of=dvb-ttusb2-a.raw bs=8 skip=22703 count=1392
# dd if=pctv4XXe.sys of=dvb-ttusb2-b.raw bs=8 skip=24098 count=1408
dd if=pctv4XXe.sys of=dvb-usb-pctv-400e-01.raw bs=8 skip=25509 count=1315
# dd if=pctv4XXe.sys of=dvb-ttusb2-c.raw bs=8 skip=26827 count=1232
# dd if=pctv4XXe.sys of=dvb-ttusb2-d.raw bs=8 skip=28062 count=1326
# dd if=pctv4XXe.sys of=dvb-ttusb2-e.raw bs=8 skip=29391 count=1378
dd if=pctv4XXe.sys of=dvb-usb-pctv-450e-01.raw bs=8 skip=30772 count=1323
# dd if=pctv4XXe.sys of=dvb-usb-pctv-452e-01.raw bs=8 skip=32098 count=1375
cat >convert.c <<!conv!
#include <stdio.h>
int main (int argc, char *argv[])
    FILE *raw, *fw;
    unsigned char buf[22];
    int n;
    raw = fopen (argv[1], "r");
    fw = fopen (argv[2], "w");
    while (fread (buf, 1, 22, raw) == 22) {
        fwrite (buf, 1, 1, fw);
        n = buf[0];
        buf[n+5] = 0xff;
        fwrite (&buf[2], 1, n+4, fw);
    fclose (raw);
    fclose (fw);
    return 0;
gcc convert.c -o convert
for i in *.raw; do
    j=$(echo $i | sed s/raw/fw/)
    ./convert $i $j
    rm $i
cp dvb-usb-pctv-400e-01.fw /lib/firmware/
#   uncomment next line to use the 450e firmware
# cp dvb-usb-pctv-450e-01.fw /lib/firmware/dvb-usb-pctv-400e-01.fw
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.linuxtv.org/pipermail/linux-dvb/attachments/20080618/1aecae9c/attachment.htm 

More information about the linux-dvb mailing list