Skip to content

Instantly share code, notes, and snippets.

@hackery
Last active December 9, 2016 00:38
Show Gist options
  • Save hackery/be441de95717b31667597d8fc6b1a88d to your computer and use it in GitHub Desktop.
Save hackery/be441de95717b31667597d8fc6b1a88d to your computer and use it in GitHub Desktop.
RTL2838 corrupted EEPROM
For some unknown reason, the NESDR Mini running one of my ADS-B receivers
(outside, on the antenna mast) packed in at the start of December 2016.
It had started to show the wrong USB vid:pid and other descriptor errors.
Some of the descriptor is kept in an external EEPROM, which is readable
and writable through USB commands - but I had to hack in the bad vendor
ID to the rtl-sdr library in order to get rtl_eeprom to even attempt to
dump the data.
static rtlsdr_dongle_t known_devices[] = {
{ 0xffda, 0x2838, "Generic RTL2832U OEM with corrupt descriptor" },
...
EEPROM dumped from a working NESDR Nano 2+
00000000 28 32 da 0b 38 28 a5 16 12 10 03 52 00 65 00 61 |(2..8(.....R.e.a|
00000010 00 6c 00 74 00 65 00 6b 00 1c 03 52 00 54 00 4c |.l.t.e.k...R.T.L|
00000020 00 32 00 38 00 33 00 38 00 55 00 48 00 49 00 44 |.2.8.3.8.U.H.I.D|
00000030 00 49 00 52 00 12 03 30 00 30 00 30 00 30 00 30 |.I.R...0.0.0.0.0|
00000040 00 30 00 30 00 31 00 00 00 00 00 00 00 02 00 00 |.0.0.1..........|
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000080 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00000100
EEPROM dumped from the broken NESDR Mini:
00000000 28 32 da ff 38 28 a5 16 ff ff ff ff ff ff ff ff |(2..8(..........|
00000010 00 6c 32 74 00 65 00 6b 00 ff 03 52 00 54 00 4c |.l2t.e.k...R.T.L|
00000020 00 32 00 38 00 33 00 38 ff ff ff ff ff ff ff ff |.2.8.3.8........|
00000030 00 49 00 52 00 12 03 30 00 30 00 30 1c 1c 1c 1c |.I.R...0.0.0....|
00000040 00 30 00 30 00 31 00 00 00 00 00 00 00 02 00 00 |.0.0.1..........|
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000080 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00000100
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment