[linux-dvb] VHF tuning fails with dnt Eurostick (dvb-usb-wt220u)
Patrick Boettcher
patrick.boettcher at desy.de
Sat Dec 31 13:13:00 CET 2005
On Sat, 31 Dec 2005, Alain Vaslet wrote:
> the new firmware works great, thanks! No further problems with VHF.
>
> I even didn't need the patch, I simply managed the new firmware with a
> symlink.
Yes, but it is better when there is a new firmware to make the driver look
for a new name, that's why the patch.
> How did you manage to get the firmware? How did you extract it from the sys
> file? Would be very interesting for me...
That's my secret :)
Just kidding, see the two scripts attached:
One is used to create the .hex-file from the usbsnoop.log and the other
one creates the fw-binary.
Before creating the fw-binary one has to remove some parts by hand
(CPU-restarts for example - they are done by the fw-loader-function).
regards,
Patrick.
--
Mail: patrick.boettcher at desy.de
WWW: http://www.wi-bw.tfh-wildau.de/~pboettch/
-------------- next part --------------
#!/usr/bin/perl -w
use strict;
print STDERR "hex-file2binary converter.\n";
while (<>) {
last if $_ =~ /:00000001FF/;
my @line = $_ =~ /([0-9A-F]{2})/g;
# intel address 16Bit address
my $t = $line[1];
$line[1] = $line[2];
$line[2] = $t;
foreach (@line) {
printf "%c", eval "0x$_";
}
}
-------------- next part --------------
#!/usr/bin/perl -w
use strict;
my ($time,$urb,$dir) = (0,0,0);
my $cb = undef;
my @val;
while (<>) {
s/[\n\r]//g;
$dir = "back" if /\<\<\</;
$dir = "down" if /\>\>\>/;
if (/\[(\d+).*URB (\d+)/) {
$urb = $2;
$time = $1;
}
if ($dir eq "down" && /^\ \ \ \ \d{8}: (.*)$/) {
@val = split(/\ /,$1);
}
if ($dir eq "down" && /^\ \ Value\s+=\ (.*)$/) {
printf(":%02X%s%s00%sFF\n",scalar @val,uc(substr($1,4,2)),uc substr($1,6,2),uc join("", at val));
}
}
More information about the linux-dvb
mailing list