Projeto Set Top Box
From Linux A Bordo
| USE AS INFORMAÇÕES AQUI POR SUA CONTA E RISCO. SEI QUE AINDA NÃO ESTÁ COM CARA DE WIKI, MAS ESTOU FAZENDO O MEU MELHOR - E DE GRAÇA.
CADASTRE-SE E COLABORE ELEVANDO O NÍVEL DAS PÁGINAS DO PROJETO. PODEMOS USAR O FORUM ANTES DE MUDAR QUALQUER ITEM DAQUI |
Contents |
Introdução
Set Top Box (STB) é um dispositivo que, conectado a uma televisão e a uma antena, exibe o conteúdo da TV Digital Aberta Brasileira (ISDB-TB).
O objetivo do projeto é aprimorar o firmware destes aparelhos, através da colaboração de especialistas em hardware e software.
No momento, os dispositivos que possuem maior potencial de customização são aqueles baseados em SOC Broadcom BCM7402 e MoBo Zinwell ZBT-620A.
O software que reside nestes é baseado em GPL v2. Apesar disso, os fabricantes e integradores OEM recusam-se a oferecer a licença e os fontes do software GPL propriamente dito, desrespeitando assim a licença.
Através de pesquisa e desenvolvimento pode-se obter funcionalidades de media center, tais como PVR e exibição de arquivos MPEG4 H.264 AVCHD a partir da USB. Ou navegação na Internet.
O ponto de partida é estabeler comunicação com o dispositivo através de um cabo serial (RS232C) e um console terminal (Putty, por exemplo).
Através de comandos Linux pode-se extrair o firmware, e estudar por analogia o que foi feito com o Olëvia e o TiVo e tentar implementar funcionalidade semelhantes.
Já se tem bastante informação, a comunidade pode contribuir para estruturar os links abaixo para tirar-se o máximo proveito.
Links de onde foram tirados a maioria dos insumos
- Customização de Firmware para STB [1]
- HT Forum - CLUBE DO CONVERSOR PHILIPS [2]
- HT Forum - Clube do conversor TELE System TS2000 e modelos anteriores. [3]
- HT Forum - Clube do conversor Proview XPS-1000. [4]
- NZ DTV Forum - Zinwell 620 HD [5]
- Craig Whitmore - The Master of Geeks - Zinwell ZMT-620HD GPLv2 Licence Violation [6]
STB's
Philips DTR1007B/78
- Vídeo no YouTube [7]
- Leaflet [8]
- Firmwares 0.4.3 e 0.5.3 06/06/2008[9]
- Foto Motherboard - 1 [10]
- Foto Motherboard - 2 [11]
- Motherboard Zinwell ZBT-620A VER: 1.2
- SOC Broadcom BCM7402
- Conectores (na cor preta)
J1 Debug Message - 4 pinos (1 fileira), localizado na parte frontal da placa. Porta serial, sendo 1- +5V, 2- TX (ou TxD), 3- RX (ou RxD) e 4- GND.
O pino 1 fica onde tem uma seta na placa. J9 BBS - 4 pinos (1 fileira), localizado próximo ao processador e ao centro da placa. Porta serial(?) desabilitada por firmware(?) J11 - 6 pinos (2 fileiras de 3 pinos), localizado na parte frontal da placa à direita (parcialmente escondido).
- Memória Flash Macronix MX S073527 29LV640DBTC-90G
- Memória DDR SRAM HY5DU561622ETP-D43 (4 chips)
- BusyBox - BusyBox v1.2.1 (2007.04.18-10:43+0000) multi-call binary
Tele System F2.0
Zirok
- Boot - Mensagens do console [12] (pre-requisito para download: Ter cadastro no HT Forum)
- Common Firmware Environment (CFE) version 1.2 for BCM97401C1
- Linux Kernel - Linux version 2.6.12-4.0-brcmstb build version 2612-4.0 (root@7401.zintech.com.tw)
- BusyBox - BusyBox v1.2.1 (2007.04.18-10:43+0000) multi-call binary
Zinwell ZMT-620HD DVB-T
- Boot - Mensagens do console [13]
- Linux Kernel - Linux version 2.6.12-4.0-brcmstb build version 2612-4.0 (root@7401.zintech.com.tw) (gcc version 3.4.6) #30 Thu Jun 14 15:08:03 CST 2007
- Busybox - BusyBox v1.2.1 (2007.04.18-10:43+0000) multi-call binary
- Manuais da Marca DSE [14] e da Marca Zinwell (i.e., sem marca) [15]
Olëvia - ZMT-620FTA
SOC(System-On-Chip) Broadcom
Flash Memory Macronix
- MX29LV640DBTC-90G (Bottom Boot): 64Mbit (8Mx8 ou 4Mx16) 3V [18]/7CE3021F57B8EA4848257412002E26CC/$File/MX29LV640DT-B-1.6.pdf]
Proview XPS-1000
- Processador: STMicroeletronics STi7001xxx - Low Cost HDTV Set Top Box decoder for H.264 [19]
- Sistema operacional: modificação/adaptação do STLinux
- Kit de desenvolvimento (possibilidade): STLinux ST40
- Em específico MB442
- Os processadores (SoC) da linha ST40 possuem recursos como:
- Controladora Serial ATA
- Ethernet NIC 10/100
- Controladora DDR RAM (PC 100, 133, 166)
- Controladora USB 2.0 (não confirmado UHCI ou OpenHCI)
- Saídas de Vídeo DVI-D/HDMI, conversor analógico para video componente e composto
- I2C, UART (COM1, COM2) etc
- Possui ativados no Linux: DHCP Client, Browser(Navegador web), VNC Client, aparentemente possui Telnet/SSH (ainda não confirmado)
- Atualização do firmware/S.O. pelo USB (ou seja, o Linux possui drivers para USB Mass Storage)
MIPS
- SPIM - A MIPS32 Simulator [20]
- LA-7760 - JTAG Debugger for MIPS32 (ICD) / LA-7760A - EJTAG Debugger License for MIPS32 Add. [21]
Outros
Analisadores de Protocolo de Rede
- Wireshark Network Protocol Analyzer [22]
Licença GPL v2
- Cópia da Licença GPL v2 [23]
- Tentativas feitas por um usuário, de obter o código fonte do Zinwell ZMT-620HD DVB-T Set Top Box [24]
Fontes para BusyBox e Crosstools
TiVo Series 2
Cliente Telnet / SSH (para acesso ao console do STB )
- PuTTY [29]
Descriptografia de chave PGP
Uma vez que se tenha acesso ao console do STB, seria em teoria possível obter o outro par da chave PGP. Usando como princípio a mesma lógica utilizada no desbloqueio realizado do firmware criptografado do Pioneer DVR-A03 (que serve para qualquer situação análoga): Looping que descriptografa e recriptografa o firmware, até confirmar através de uma comparação binária de arquivos (via comando fc /b) se o conteúdo gerado é 100% igual ao original. Feito isto, altera-se apenas um byte para descobrir a rotina de checksum, quando o programador (em software) aceitar o firmware modificado, então o desbloqueio está concretizado.

