Difference between revisions of "Panasonic NM88472"

From LinuxTVWiki
Jump to: navigation, search
(better probe description)
(Demod Initialization)
Line 15: Line 15:
 
=== Demod Initialization ===  
 
=== Demod Initialization ===  
  
* Load init reg values for all 3 banks (T2/T and last C)
+
* Write init reg values for all 3 register banks (T2/T and last C)
 
* Prepare DVB-T bank for firmware upload
 
* Prepare DVB-T bank for firmware upload
 +
** Write 0x20 to register 0xf0 in T bank
 +
** Write 0x03 to register 0xf5 in T bank (this most likely set the mcu to reset state)
 
* Load firmware for demod
 
* Load firmware for demod
 +
** Write all firmware bytes to register 0xf6 to fill the mcu memory
 +
* Start demod firmware
 +
** Write 0x00 to register 0xf5 in T bank
 
* Check parity
 
* Check parity
 +
** Read register 0xf8, if byte 5 (0x10) is set the parity check failed.
  
 
=== Demod probe ===
 
=== Demod probe ===

Revision as of 21:53, 31 October 2013

NM88472

The NM88472 is a DVB-T/DVB-T2/DVB-C demodulator chip manufactured by Panasonic.

I2C Adressing

The chips has 3 I2C addresses, one for each demodulator bank:

8 bit (7 bit)
0x38  (0x1c) - DVB-T2
0x30  (0x18) - DVB-T
0x34  (0x1a) - DVB-C


Demod Initialization

  • Write init reg values for all 3 register banks (T2/T and last C)
  • Prepare DVB-T bank for firmware upload
    • Write 0x20 to register 0xf0 in T bank
    • Write 0x03 to register 0xf5 in T bank (this most likely set the mcu to reset state)
  • Load firmware for demod
    • Write all firmware bytes to register 0xf6 to fill the mcu memory
  • Start demod firmware
    • Write 0x00 to register 0xf5 in T bank
  • Check parity
    • Read register 0xf8, if byte 5 (0x10) is set the parity check failed.

Demod probe

  • Read register 0xFF in T2 bank

The answer should be 0x02.

TS mode

How to set chip ts mode.

Parallel TS with fixed clock

  • Write 0x00 to register 0x08 in T2 bank
  • Write 0xE1 to register 0xD9 in T bank

Parallel TS with variable clock

  • Write 0x00 to register 0x08 in T2 bank
  • Write 0xE3 to register 0xD9 in T bank

Serial TS with variable clock

  • Write 0x1D to register 0x08 in T2 bank
  • Write 0xE3 to register 0xD9 in T bank