Difference between revisions of "LinuxLibre:ISDB USB ZINWELL"

From LibrePlanet
Jump to: navigation, search
(reference id is 57, not 60)
Line 15: Line 15:
 
* SPI and I2C interfaces for controling an external tuner and modulator
 
* SPI and I2C interfaces for controling an external tuner and modulator
 
* USB interface (used to communicate with the PC)
 
* USB interface (used to communicate with the PC)
 +
* we still don't have datasheets for this IC.
  
==Maxim MAX2163==
+
==Maxim MAX2163A==
 
* Tuner
 
* Tuner
* Controlled through configuration/status registers accessible at I2C address 0xc0 (write) and 0xc1 (read)
+
* Controlled through configuration/status registers accessible at I2C address 0xc0 (write) and 0xc1 (read) through pins 24 (SCL) and 25 (SDA) of the chip.
* Datasheet available [http://datasheets.maxim-ic.com/en/ds/MAX2163.pdf here]
+
* Datasheet available [http://datasheets.maxim-ic.com/en/ds/MAX2163.pdf here] (but this datasheet is for the 28 pin version. The receiver uses a 40-pin variant.)
  
 
==MA50159==
 
==MA50159==
demodulator
+
* demodulator
 +
* labeled "MegaChips"
 +
* 64-pin package
 +
* we still don't have the datasheet for this IC.
 +
* Resistors 23 and 24 seem to be pull-up resistors for an i2c bus. These resistors are directly connected to pins 1 and 63, which seem to be SCL and SDA, respectively. We have connected an i2c sniffer to these resistors and identified a device with addresses c0 and c1 in this i2c bus. Maybe this is a bus shared with the tuner.
  
=Who is working on a free firmware implementation?=
+
=Who is working on a free driver implementation?=
 
* Felipe Sanches
 
* Felipe Sanches
 
* Lucas Villa Real
 
* Lucas Villa Real
  
 
We have some experimental code available [http://lucasvr.gobolinux.org/projects/trunk/zinwell/ on subversion].
 
We have some experimental code available [http://lucasvr.gobolinux.org/projects/trunk/zinwell/ on subversion].
 +
 +
=Who is working on a free firmware implementation?=
 +
* currently we load a block of 56 bytes to the device. We do not know whether this is actual firmware-code or simply initialization values.
 +
 +
<pre>
 +
unsigned char firmware[56] = {
 +
0x01, 0x01, 0x04, 0x08, 0x05, 0x01, 0x06, 0x00,
 +
0x15, 0xf8, 0x19, 0xcc, 0x4d, 0x08, 0x70, 0x02,
 +
0x08, 0x28, 0x09, 0x10, 0x40, 0x0d, 0x43, 0xf8,
 +
0x47, 0xc0, 0x48, 0x7f, 0xa1, 0x40, 0xa5, 0x4c,
 +
0xb9, 0xd9, 0xac, 0x01, 0xad, 0x80, 0xae, 0x43,
 +
0xaf, 0x01, 0xb0, 0x22, 0xbd, 0xe9, 0xc0, 0x1c,
 +
0xc4, 0x20, 0xc5, 0x04, 0xca, 0x33, 0x01, 0x02
 +
};
 +
</pre>

Revision as of 19:03, 2 August 2010

It is a Digital TV receiver (USB dongle) manufactured by Zinwell Inc. and sold in Brazil by IBAYO. It is compliant with the ISDB-T 1Seg DTV standard (japanese standard adopted in Brazil).

device ID: 5a57:4210 Zinwell

It is very similar to this reference design from Somagic: http://www.somagic.cn/english/product_info.asp?id=57

photos of the device board

ICs used in the device board

Somagic SMI-2020CBE

http://www.somagic-hz.com/product_info.asp?id=57

  • Unknown microcontroller
  • SPI and I2C interfaces for controling an external tuner and modulator
  • USB interface (used to communicate with the PC)
  • we still don't have datasheets for this IC.

Maxim MAX2163A

  • Tuner
  • Controlled through configuration/status registers accessible at I2C address 0xc0 (write) and 0xc1 (read) through pins 24 (SCL) and 25 (SDA) of the chip.
  • Datasheet available here (but this datasheet is for the 28 pin version. The receiver uses a 40-pin variant.)

MA50159

  • demodulator
  • labeled "MegaChips"
  • 64-pin package
  • we still don't have the datasheet for this IC.
  • Resistors 23 and 24 seem to be pull-up resistors for an i2c bus. These resistors are directly connected to pins 1 and 63, which seem to be SCL and SDA, respectively. We have connected an i2c sniffer to these resistors and identified a device with addresses c0 and c1 in this i2c bus. Maybe this is a bus shared with the tuner.

Who is working on a free driver implementation?

  • Felipe Sanches
  • Lucas Villa Real

We have some experimental code available on subversion.

Who is working on a free firmware implementation?

  • currently we load a block of 56 bytes to the device. We do not know whether this is actual firmware-code or simply initialization values.
	unsigned char firmware[56] = {
		0x01, 0x01, 0x04, 0x08, 0x05, 0x01, 0x06, 0x00, 
		0x15, 0xf8, 0x19, 0xcc, 0x4d, 0x08, 0x70, 0x02, 
		0x08, 0x28, 0x09, 0x10, 0x40, 0x0d, 0x43, 0xf8, 
		0x47, 0xc0, 0x48, 0x7f, 0xa1, 0x40, 0xa5, 0x4c, 
		0xb9, 0xd9, 0xac, 0x01, 0xad, 0x80, 0xae, 0x43, 
		0xaf, 0x01, 0xb0, 0x22, 0xbd, 0xe9, 0xc0, 0x1c, 
		0xc4, 0x20, 0xc5, 0x04, 0xca, 0x33, 0x01, 0x02
	};