[pvrusb2] Looking for "dvb-fe-tda10048-1.0.fw" firmware

Mike Isely isely at isely.net
Wed Feb 1 15:49:10 CST 2012


On Wed, 1 Feb 2012, Roger wrote:

> 
> In lamens terms, the pvrusb2 fwextract.pl (perl script) can be quite easily 
> modified to find an additional firmware file.  You just need to use a hexeditor 
> to find the firmware file's offsets and then write the filename with offsets 
> into the perl script.  This can be quite easily done, even by those that know 
> little or no Perl but some Bash.

No, that is not correct.

Since this fwextract.pl script also uses MD5 sums to both identify the 
images to extract and to verify that what is extracted is correct, you 
can't "just" write the offsets into the script and expect it to work.  
Other extraction scripts floating around out there might work like that; 
this one definitely does not.  I discarded that approach long long ago 
in order to give solid assurance that when the script says it extracted 
something that is *really* did it and did it correctly.

I deliberately set up fwextract.pl to minimize the amount (it any) 
editing that might be needed.  No Perl knowledge is required at all.  
The actual worst case is actually nothing more than just:

  cat new_snippet >>fwextract.pl

And "new_snippet" is machine generated by fwextract.pl itself as part of 
the training process.

The correct process is described here: 
http://www.isely.net/pvrusb2/firmware.html

as part of the manual firmware extraction procedure.


> 
> For finding file offsets, study an existing firmware file's offsets (between 
> the perl script and binary file to find the beginning and ending of file if 
> needed) and then compare those offset's to your "dvb-fe-tda10048-1.0.fw" 
> apparent offset's.
> 
> From there, it's trial and error to make sure you snip the correct file.  And 
> then perform several cold boots, powering off both the computer and HVR device 
> if need be.
> 
> Pretty simple, but tedious ... especially for those whom are not fans of Perl.

Please disregard this.

There's a lot more involved here than what Roger is stating.  Please do 
NOT try to directly edit fwextract.pl.  For an idea of what I'm talking 
about, try this instead:

	./fwextract.pl --inventory

That dumps its current "knowledgebase" in a human-friendly form.

I can explain a lot more about how the script works and how to train it 
on additional firmware images and/or driver packages.  Once you see how 
to do it, it's actually really easy.  But if anyone wants to know that, 
ask me privately.  I don't think it's worth eating bandwidth here.  If 
several peope would like a "session" playing with it online, I can 
arrange to be available on IRC to talk about it.

Sigh, I suppose I should fully document the script.  It really is (IMHO) 
a very cool generic, useful tool for sniffing out and extracting just 
about any kind of binary "needle" from a huge "haystack" of 
Windows-supplied crud.

  -Mike


-- 

Mike Isely
isely @ isely (dot) net
PGP: 03 54 43 4D 75 E5 CC 92 71 16 01 E2 B5 F5 C1 E8


More information about the pvrusb2 mailing list