Ricevitore DVB-T HD barbone...

Hardware esterno.
Panelli LCD, TFT, HDTV, Telecomandi, Xbox-client, etc.

Moderatori: ragno, tapino, alez, zulu, davidea

Rispondi
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Ricevitore DVB-T HD barbone...

Messaggio da ragno »

Visto che il mio alterego e' l'autore :wink: , riporto anche qui il progetto che sto seguendo...Non si tratta di nulla di particolarmente innovativo, visto che non sono un mago ed il tempo e' tiranno, comunque magari qui, con meno rumore di fondo, si riesce a cavare un ragno dal buco... :)

Premetto che:
- il pirelli e' dato in comodato d'uso agli abbonati telecom alice home tv, ma si acquista su ebay...
- dispone di un frame buffer con accelerazione HD
- con il toolchain si possono ricompilare teoricamente tutte le applicazioni (quindi anche vdr). Personalmente visti i limiti di tempo a disposizione sono ancora in fase di studio molto preliminare, ma ritengo che l'applicazione webtv integrata, potrebbe essere modificata per funzionare come client di vdr+streamdev server.

In ogni caso anche, allo stato attuale, per pochi euro si puo' entrare in possesso di un ricevitore dvb-t HD, con linux smanettabile, ftp, client torrent, etc...
Aggiungo che c'e' su ilpuntotecnicoeadsl un thread lungo quasi 200 pagine sull'hardware in oggetto...

Wiki http://hy100wiki.algasystems.net/wiki/doku.php/start





usbfs_hy100 - versione 0.1
Scaricabile qui

file system usb per hy100 basato sulla versione 1.81 del firmware pirelli

Questo fs mantiene la funzionalita' del firmware originale in modalita' offline e cioe' il funzionamento come decoder dtt.

PREMESSA

- L'Hy100 (e il modello Hy101) e' un STB (set top box) basato su processore Sigma che utilizza come sistema operativo linux.
Per volonta' del produttore si presenta come un dispositivo chiuso e "blindato": non c'e' accesso alla console dei comandi (telnet), non e' presente un demone ftp per scaricare files, etc...Inoltre il firmware originale presenta una signature (codice di controllo) che impedisce di modificarne il contenuto e poi effettuare l'upgrade secondo quando previsto dalla procedura di upgrade, questo perche' attualmente non e' possibile generare una nuova signature per il firmware modificato.

- La scoperta di una falla nel sistema operativo dell'hy100, ha reso possibile comunque far eseguire del codice arbitrario al pirelli. La procedura prende il nome del suo scopritore, e' conosciuta come "hack di cyberstorm". Tramite questo hack e' possibile flashare lzma.bin e rendere piu' docile il pirelli.

- L'hack di cyberstorm e' una procedura non troppo semplice da realizzare, ma comunque ampiamente descritta passo passo dalla "Guida di Vertex."

- Il kernel lzma.bin (ricompilato da roleo) e' in pratica un loader (+ la classica immagine del kernel, ma in formato compresso lzma) che decomprime il kernel in memoria e grazie al fatto che abilita le porte usb prima del caricamento dello stesso consente di effettuare il boot da dispositivo usb.
Questo kernel per poter essere attivo, ed avviare un file system da usb deve essere scritto nella flash dell'hy100 (anche se avendo accesso a yamon, potrebbe essere caricato da rete via tftp). Oltre alla scrittura della flash, deve essere modificata la sequenza di start per consentire l'utilizzo del nuovo kernel ed effettuare il boot da usb.
Per questa ragione un hy100 che e' stato modificato non e' piu' in grado di caricare il firmware originale
che e' presente nella flash e se non trova un filesystem su pendrive che e' un grado di montare come / (root) rimarra' in una fase di stallo per l'impossibilita' di caricare il S.O.

- E' possibile tramite yamon (il boot loader dell'hy100) ripristinare la sequenza di boot originale. L'accesso a yamon viene effettuato tramite console seriale, serve quindi un programma di terminale come putty e un convertitore di livelli rs232-ttl.


Per il collegamento pc hy100 consiglio di utilizzare il cavo dati per nokia DKU-5. Si puo' acquistare su ebay per pochi euro comprese le spese di spedizione.


Cosa richiede:

Aver eseguito l'hack di cyberstorm e flashato il kernel compresso lzma.bin di roleo

Potete scaricare il toolkit completo (grazie a cyberstorm, JackTheVendicator e roleo) con la Guida di Vertex QUI

Note per l'installazione:

Il filesystem si puo' installare su pendrive o disco usb.

- formattare il dispositivo

- decomprimere l'archivio, p.e.
tar xjf usbfs_hy100-0.1

- copiare il contenuto su una pendrive o un disco usb, ad esempio il mount point del disco usb e' /pippo
cp -p -r ./disk /pippo

Smontare il dispositivo usb. Nel caso dell'esempio precedente:
umount /pippo

Inserire il pendrive nella porta usb A (alta) del hy100.
N.B. il firmware funziona solo se il dispositivo usb e' inserito nella porta A. Vedi la sezione Bugs per ulteriori informazioni.


Caratteristiche aggiuntive rispetto al firmware originale:

- accesso da console telnet. Non sono richiesti user e password
- accesso via ftp (user root, password root).
- accesso via smb:// (vengono montare in auto le cartelle /USB, /tmp e /share/Downloads)
- client torrent (transmission) accessibile via http://your_ip:9091
- e2fsprogs installati per la gestione dei dischi
- nano e mc
- [s]semi[/s]automount del dispositivo usb inserito nella porta usb B (bassa): usbmnt o tramite servizio al boot.


Pacchetti utilizzati:

roleo:
- kernel lzma.bin
- telnetd


compilati con toolchain di Lundman (scaricaribile da qui http://www.lundman.net/wiki/index.php/NMT:downloads) :
- vsftpd
- samba
- e2fprogs


binari da nmt (network media tank) :)
- mc
- nano
- transmission


Note sulla release:

- Tutti i servizi disattivabili sono stati copiati in /_etc/start.d
Vengono startati in ordine di priorita' solo quelli che iniziano con 'S' (da script di boot dell'azbox), per disattivare un servizio allo startup basta quindi cambiarne i permessi con chmod 644 (o da ftp) oppure rinominandolo.
p.e. mv /_etc/start.d/S20crond /_etc/start.d/s20crond

- /tmp e' montata in ram (spazio 2Mb). Se la dimensione fosse troppo ridotta editare /_etc/fstab

- Un dispositivo usb installato sulla porta usb B viene montato allo startup da /_etc/start.d/S10usb con mount point /USB.
E' possibile montare/smontare manualmente da console tramite lo script usbmnt

- Se viene utilizzato transmission per scaricare file grossi, conviene cambiare la cartella di download (/share/Download). Dalla webgui cliccare sulle opzioni (in basso a sx) e poi preferences...

- Il filesystem non viene controllato al boot, ma ho inserito uno script di shutdown che effettua il check di /dev/sda1 prima di effettuare il reboot (-r) o se si desidera spegnere (-h) l'hy100. Per effettuare il reboot con check: shutdown -r /c

- Il led 'internet' viene utilizzato per indicare la modalita': offline = rosso online = verde

- Il led 'upgrade' viene utilizzato per indicare il mount di un dispositivo sulla porta B: ext2/3 = verde, vfat= giallo, auto = rosso

- Alcune impostazioni sono in coda al file /_etc/rcS

- smb.conf e' in /var/smb


Upgrade:

upgrade -1- per usbfs-0.1
Scaricabile QUI

/usr/sbin/acme-thttpd - Nuova versione ricompilata. Ho disattivato STATS_TIME che creava problemi con syslogd.

/sbin/hotplug - Implementata gestione minimale hotplug per l'automount un dispositivo usb di storage collegato alla porta USB Bassa (2). N.B. Per smontare il dispositivo e' necessario utilizzare il comando usbmnt umount da console.
Ricordate di rinominare o togliere i permessi di esecuzione a /_etc/start.d/S30usbmnt, dal momento che non serve piu'...

/sbin/usbmnt - Modificato per funzionare con hotplug (path estesi per i comandi).
/sbin/shutdown - piccole modifiche...

/bin/thttpd/SignonDispacher/index.html - Eliminata la blacklist, ora vengono visualizzati tutti i canali (cercate Blacklist nel file per vedere come funziona :) )...

N.B. L'Hy100 e' in grado di sintonizzare anche i canali DTT HD (in dvb-t1), ma scarta al caricamento tutti i canali che hanno in /_etc/dtt_scan un valore diverso da 1 nel primo campo che segue l'intestazione SERVICE:
Per visualzzare il cartello di Premium Calcio HD che viene trasmesso in FTA modificare il valore 25 in 1.


Bugs:

- Se il pirelli parte con il cavo di rete staccato, rimane forzatamente in modalita' offline, ed anche collegando il cavo di rete successivamente non prende l'ip.

- L'hy100 non riesce ad effettuare il boot da usb se ad entrambe le porte usb sono collegati dei dispositivi.
Questo probabilmente perche' non esiste una priorita' di selezione fra le 2 porte e quindi il kernel al boot va in confusione.
Per ovviare a questo problema, che ripeto si presenta solo nel caso si voglia utilizzare entrambe le porte (p.e. pendrive come boot e disco usb come data storage), si deve patchare lzma.bin in modo che in fase di boot solo una porta sia attiva.

In lzma.bin all'offset 0x210 il valore 0x0C deve essere sostituito da 0x08.
In questa maniera e' attiva solo la porta usb A e l'hy100 carica il s.o. con entrambi i dispositivi popolati.
Tutti gli script interessati sono stati modificati per gestire USB A come boot device, mentre USB B viene attivata dopo...
Il problema si ripresenta anche nel caso si volgia riavviare il sistema tramite il comando reboot: entrambe le porte rimangono attive e quindi il boot fallisce...Per riavviare il sistema utilizzare lo script shutdown -r
La soluzione ottimale, IMHO, sarebbe quella di ricompilare il loader generando un nuovo lzma.bin, forzando prima entrambe le porte ad off e poi attivando solo la USB A...

Ricapitolando:

se utilizzate una sola usb (pendrive o disco): ok
se collegate alla usb B un dispositivo dopo l'avvio del sistema: ok
se volete utilizzare entrambe le usb lasciando sempre collegati entrambi i dispositivi: dovete patchare lzma.bin e riflasharlo.
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
Avatar utente
von fritz
Messaggi: 1479
Iscritto il: 18 gen 2007, 23:33

Re: Ricevitore DVB-T HD barbone...

Messaggio da von fritz »

interessante questa cosa :si: ho letto velocemente ma se ho visto bene 8) stessa CPU del azbox puoi metterci il firmware azbox solo sul HY101 e non HY100 (differenza?)
ce un mio amico che ce la, non so se 100 o 101. gli darò un occhiata 8)
il cavo DKU-5 probabilmente lo devi modificare (attacco nokia) non penso che lo puoi usare cosi com e.
io ho dovuto farmi anche un "box" a parte per utilizzarlo. seriale -> usb con un max232.

bye
VDRBOX-HD : in pensione!
ALTRO : freerunner (openmoko) ; nokia n900 ; 2 seagate dockstar, samsung ps64d8000, diversi dispositivi ARM (Allwinner, Amlogic) ;)
Don't feed the trolls non alimentate sistemi proprietari ;)

Linux rulez! :)
davidea
Messaggi: 1279
Iscritto il: 16 ago 2009, 13:32
Località: Palermo
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da davidea »

grazie per il report che hai fatto ragno!!!!
io avevo seguito il post fino a pagina 150, poi ho abbandonato, anche perche' non ho ben capito cosa intendevano per microcode!!!!
sono quindi riusciti a far gestire il tuner integrato al firmware dell' azbox?

in ogni caso, si puo' utilizzare qualsiasi adattatore usb -> rs232 ttl per connettersi , io per fare delle prove con la fonera, ho preso un cavo usb-rs232 , l' ho aperto, dissaldato il max232 contenuto all' interno e cablato direttamente i piedini del pl2032 sull' uscita, unico inconveniente bisogna avere un minimo di dimestichezza con l' smd.
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da ragno »

Allora innanitutto grazie per l'attenzione:

@vonfritz:

1) l'hack va bene per entrambi i modelli. Nel link su risorse c'e' il pacchetto che funziona con entrambi (kernel lzma.bin e' aggiornato)

2) il firmware azbox funziona, ma non gestisce il ricevitore DTT e l'uscita HDMI. Se vuoi fare un media center e' meglio un xbox classic con lo script di Zulu :) . Io invece mi sono indirizzato verso l'estensione delle funzionalita' di base e sono interessato al DTT HD...se poi si riesce a farne anchew un client HD per vdr+streamdev sarebbe gia un ottimo traguardo. Il massimo sarebbe far girare nativamente vdr con streamdev client (protocollo vdr2vdr)...

3) il cavo per l'accesso via seriale (tramite putty a 115200) al boot loader e per il debug (tutti i log sono indirizzati sulla seriale) che consiglio funziona benissimo.
Questo e' lo schema dei collegamenti dello seriale:

Codice: Seleziona tutto

UART1: J2 (su modulo smart-card, non popolato)

+3.3v     o  1
TXD       o  2

RXD       o  4
RTS       o  5 (collegare a GND)
GND       o  6
Il cavo DKU-5 (tagliando il connettore nokia) deve essere collegato nel seguente modo:

Codice: Seleziona tutto

cavo ------ pin UART1 
arancio <-> 2 (TX)
verde   <-> 4 (RX)
blu      <-> 5 (GND SHIELD)
rosso   <-> 6 (GND)

@davidea:

1) il tuner funziona solo col firmware originale di cui questo progetto vuole studiarne le funzionalita' ed espanderle... :)
Se funzionasse il tuner dtt e l'hdmi con firmware azbox sarebbe un "colpo grosso" e credo che difficilmente si riuscirebbero a trovare a prezzi barboni degli hy100/101...Il mio l'ho pagato 20 euro comprese le spese di spedizione...

2) l'adattatore di cui disponi va benissimo, la seriale del hy100 e' a livello TTL, quindi se utilizzi un pl2032 per la conversione usb2seriale non devi utilizzare il max232.
USB -> PL2032 (RS232 TTL) -> UART(HY100/101)
Se invece usi il max 232 collegato ad una seriale del pc e quest'ultimo deve essere alimentato devi prendere i 3,3/5v+ dal pin 1 connettore UART1.
COM(PC) -> MAX232 (RS232 TTL ) -> UART(HY100/101)

Se avete dubbi e volete altri chiarimenti sono qui...
ciao

p.s. sto testando il firmware 1.8.3 che dovrei rilasciare a breve...
pp.ss. c'e' un venditore irlandese su ebay che vende il dku-5 comprese le spese a circa 5 euro...
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
Avatar utente
alez
Messaggi: 3074
Iscritto il: 09 mag 2007, 17:11

Re: Ricevitore DVB-T HD barbone...

Messaggio da alez »

La seriale di quell'oggetto non e' a 3,3V?

Se si, non va utilizzato li MAX232 ma il MAX3232 che ha i livelli TTL a 3,3V

magari funziona anche con i 5 V ma non vorrei che si bruciasse qualcosa...
Ciao alez
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da ragno »

alez ha scritto:La seriale di quell'oggetto non e' a 3,3V?

Se si, non va utilizzato li MAX232 ma il MAX3232 che ha i livelli TTL a 3,3V

magari funziona anche con i 5 V ma non vorrei che si bruciasse qualcosa...
Giusta precisazione...comunque utilizzando il cavo dku-5 va che e' una meraviglia...inoltre funziona anche con tutto il resto: fonera, ip301, dg834g, hag fastweb, etc, etc...

ciao
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
Avatar utente
alez
Messaggi: 3074
Iscritto il: 09 mag 2007, 17:11

Re: Ricevitore DVB-T HD barbone...

Messaggio da alez »

Ottimo, cmq per chi si volesse autocostruire piu' di un adattatore RS-232 - TTL 3,3V, consiglio di prendere gli integrati MAX3232 direttamente in China, io ne ho ricevuti 10 a 8 euro ... spediti :D
Ciao alez
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da ragno »

alez ha scritto:Ottimo, cmq per chi si volesse autocostruire piu' di un adattatore RS-232 - TTL 3,3V, consiglio di prendere gli integrati MAX3232 direttamente in China, io ne ho ricevuti 10 a 8 euro ... spediti :D
Azz...ottimo.

Comunque il cavo dku-5 segnalato, funziona anche sotto linux...

ciao
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
sercik
Messaggi: 6
Iscritto il: 07 giu 2010, 11:17

Re: Ricevitore DVB-T HD barbone...

Messaggio da sercik »

Ciao,
ma questo usbfs si scompatta semplicemente su una penna usb e poi si attacca al decoder prima di accenderlo?
a me non funziona, mentre la penna con l'azbox perte senza problemi!
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da ragno »

sercik ha scritto:Ciao,
ma questo usbfs si scompatta semplicemente su una penna usb e poi si attacca al decoder prima di accenderlo?
a me non funziona, mentre la penna con l'azbox perte senza problemi!
Controlla il mount point che crei su pendrive...
Hai la possibilita' di loggare?

ciao
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
sercik
Messaggi: 6
Iscritto il: 07 giu 2010, 11:17

Re: Ricevitore DVB-T HD barbone...

Messaggio da sercik »

Ciao Ragno,
grazie per la risposta!
ho risolto da solo, il fatto è che l'archivio creava una cartella disk... ho semplicemente spostato tutti i files nella radice della penna ed ora va.
Ha anche fatto certi progressi: ho messo amule e mldonkey.

Ho problemi in fase di spegnimento con il check del filesystem, in pratica mi dice che sda1 è montata ed è pericoloso fare il check di un filesystem montato, come si fa a risolvere??

:nonso:

Ciao e grazie
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da ragno »

Esatto, l'archivio deve estrarre i files in / e non in /disk
sercik ha scritto: Ho problemi in fase di spegnimento con il check del filesystem, in pratica mi dice che sda1 è montata ed è pericoloso fare il check di un filesystem montato, come si fa a risolvere??

:nonso:

Ciao e grazie
Al tempo mi ricordo che avevo corretto il problema, dammi un po' di tempo che ricontrollo lo script. Purtroppo il HY100 sono diversi mesi che non lo accendo per mancanza di tempo.
Se mi passi un link dove scaricare i binari delle tue aggiunte, li metto su risorse.

grazie
ragno.
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
Avatar utente
ragno
Messaggi: 3017
Iscritto il: 20 gen 2007, 09:43
Località: Marte e dintorni
Contatta:

Re: Ricevitore DVB-T HD barbone...

Messaggio da ragno »

@sercik: ecco lo script di shutdown che ho nella pendrive...

Codice: Seleziona tutto

#!/bin/sh

off() {
# # forza flush buffer
sync
# smonta USB device (no root)
usbmnt umount
# disattiva USB (no root)
gpiotest WRITE 2 1
# scrive semaforo per stoppare restart fresco (appMan)
echo "SHUTDOWN=1" >> /tmp/stbconfig.volatile
}

killproc()
{
mount -o remount -r / > /dev/null 2>&1
killall -9 pgmgr > /dev/null 2>&1
killall -9 fresco  > /dev/null 2>&1
killall -9 vsftpd  > /dev/null 2>&1
killall -9 smbd nmbd  > /dev/null 2>&1
killall -9 transmission-daemon  > /dev/null 2>&1
#killall -9 syslogd  > /dev/null 2>&1
#killall -9 klogd  > /dev/null 2>&1
}

case "$1" in  
-r)
off
killproc
setleds -z
        setleds -c 4 -s 1 -b 1 -t power_on
if [ "$2" = "/c" ] ; then
    e2fsck -v -y /dev/sda1
fi
sleep 1
reboot
;;
-h)
off
killproc
setleds -z
        setleds -c 1 -s 1 -b 1 -t power_on
if [ "$2" = "/c" ] ; then
    e2fsck -v -y /dev/sda1
fi
echo "Now power off the device..."
sleep 1
halt
;;
*)
/bin/echo "usage: $0 -r (reboot)| -h (halt) - /c (check)"
exit 1
;;
esac

exit 0

ciao
vdr: 1.4.7+extpatch54 (pensionata), 1.7.27 (yavdr 0.4)
Percorri la via che porta al sole,
e non camminare sui sentieri oscuri.

E quando penso che sia finita,
è proprio allora che comincia la salita.
sercik
Messaggi: 6
Iscritto il: 07 giu 2010, 11:17

Re: Ricevitore DVB-T HD barbone...

Messaggio da sercik »

Ciao Ragno,
scusa se non mi sono fatto sentire prima
è che ho messo messaggi su circa 10 forum e sto trattando un po' con tutti e dimentico talvolta..
Grazie tanto per avermi risposto..
devo guardare meglio lo script, così di prima occhiata non è che lo abbia capito benissimo :roll:
Per quanto riguarda amule e mldonkey adesso faccio un po' di ordine e poi ti do il tutto.
sercik
Messaggi: 6
Iscritto il: 07 giu 2010, 11:17

Re: Ricevitore DVB-T HD barbone...

Messaggio da sercik »

Ciao Ragno e ciao a tutti!
Dunque ho dato una controllata ad amule e ad mldonkey.
La procedura di installazione è copiare il file nella / ed estrarlo con tar xvzf file.tar.gz
in questo modo tutti i files vanno al posta giusto,
bisogna poi creare dei link simbolici nella / dell'hard disk e per sicurezza anche nella /root in questa modo

cd /
ln -s /share/Apps/amule/.aMule/ .
ln -s /share/Apps/mldonkey/ .mldonkey

cd /root
ln -s /share/Apps/mldonkey/ .mldonkey
ln -s /share/Apps/amule/.aMule/ .

I file da scaricare sono:
http://www.box.net/shared/34dooun6t3
http://www.box.net/shared/mrptjsp4rs

CIAOOOOOOOOOOOOOOOOOOOOOOOOOOOO
P.S. sono riuscito a compilare amule-2.2.6 con la toolchain e l'ho copiato sul pirelli, lo lancio e sembra vada bene, ma poi amulegui non riesc a connettersi
Rispondi