A mi me ha funcionado pero CUIDADO, hay personas que han tenido problemas gordos. Te puede entrar la tele en un bucle sin fin y tener que desmontarla para que vuelva a funcionar.Pagina del proyecto (en ingles):
http://samygo.sourceforge.net/La televisión lleva un (digamos) miniordenador con un linux dentro. Lo que he conseguido (instrucciones para hacerlo en
http://www.avsforum.com/avs-vb/showthread.php?t=1047445 es acceder a ese linux mediante la consola (algo similar a las antiguas ventanas de MSDOS)
http://es.wikipedia.org/wiki/Consola_de_sistema .
Al hacer eso, monto por NFS (
http://es.wikipedia.org/wiki/NFS ) un directorio que comparto en el ordenador donde tengo todo, y así me salto las limitaciones de no tener funcionando el Samsung Share Manager y puedo ver lo del ordenador desde la televisión como si lo tuviera en un disco externo USB.
A pesar de todo, el proceso para hacerlo es un coñazo, y no puedo (o debo) pasaros el firmware modificado por mí, ya que aparte de no ser legal (lleva código propiedad de Samsung),
si luego convertís la tele en un ladrillo yo sería el culpable.
Hay que hacer dos firmwares distintos, uno para conseguir acceso por telnet a la tele, y una vez conseguido, otro para que el directorio compartido se cargue automáticamente.
Traduzco las instrucciones por si hay interesados:
1. Descomprimir el archivo T-CHU7DEUC.exe
2. Desencriptar exe.img.enc usando XOR con la clave T-CHU7DEUC , en linux por ejemplo con crypt-xor.P.ej.:
../../crypt-xor -key T-CHL7DEUC -file ./exe.img.enc -outfile ./exe.img.dec
3. Con un editor hexadecimal (por ejemplo okteta en KDE) hacer los siguientes cambios:
ORIGINAL: export KF_LOG=/dev/null #Remove engine logging.
CAMBIARLO A: export KF_LOG=/dev/null;/etc/telnetd_start.sh&
4. Recalcular el CRC para exe.img
5. Cambiar en validinfo.txt el CRC antiguo por el nuevo.
6. Encriptar exe.img usando XOR con la clave T-CHU7DEUC y volver a ponerlo en su sitio (exe.img.enc)
rm -fr exe.img.enc
~/crypt-xor -key T-CHL7DEUC -file ./exe.img.dec -outfile ./exe.img.enc
7. Enchufar el USB en la tele y actualizar el firmware.
Después de esto, podremos hacer telnet IPDELATELE, usuario root sin contraseña.
Ya tenemos la primera parte hecha, ahora es necesario crear dos archivos en la zona donde se puede escribir (mtd_rwarea), que yo llamo inicio.sh e inicio2.sh, que contienen:
/mtd_rwarea/inicio.sh:
mount -t devpts devpts /dev/pts
telnetd
/mtd_rwarea/inicio2.sh &
inicio2.sh:
sleep 20
umount /dev/sda
mkdir /dtv/usb/sda/pelis
mount -o ro,soft,udp,async,nolock,rsize=32768,wsize=8192 IPSERVIDOR:/nombrecarpetacompartida /dtv/usb/sda/pelis
Recordad hacer chmod +x en los dos archivos.
Ahora es necesario volver a modificar otra vez el firmware para que monte automáticamente los recursos nfs (espera 20 segundos al encender la tele para que reconozca el USB). Volvemos a modificar el firmware y cambiamos:
ORIGINAL: export KF_LOG=/dev/null #Remove engine logging.
CAMBIARLO A: export KF_LOG=/dev/null;/mtd_rwarea/inicio.sh&
Hacemos todos los pasos, y al reiniciar después de instalar el firmware, esperando 20 segundos (teniendo el lápiz usb metido en la tele) ya debemos de tener conectado el recurso NFS.
Yo he usado:
- crypt-xor: Cogí el paquete de debian
http://crypt-xor.sourceforge.net/ y descomprimí el ejecutable en mi home.
Para el crc use el siguiente script (no recuerdo donde lo baje) en python. Necesita un módulo de python instalado (python-fchksum):
#/usr/bin/python
import sys, re, zlib
c_null="" c_red="" c_green=""
def crc32_checksum(filename):
filedata = open(filename, "rb").read()
sum = zlib.crc32(filedata)
if sum < 0:
sum &= 16**8-1
return "%.8X" %(sum)
for file in sys.argv[1:]:
sum = crc32_checksum(file)
try:
dest_sum = re.split('[\[\]]', file)[-2]
dest_sum = re.search('[\[(][\dA-F]{8}[\])]', file).group()[1:-1]
if sum == dest_sum:
c_in = c_green
else:
c_in = c_red
sfile = file.split(dest_sum)
print "%s%s%s %s%s%s%s%s" % (c_in, sum, c_null, sfile[0], c_in, dest_sum, c_null, sfile[1])
except IndexError:
print "%s %s" %(sum, file)
En windows hay varios editores hexadecimales que hacen lo del xor y lo de calcular el crc.
EDITO:
por 3vagos Hoy 15:28
Solo añadir que los firmwares para los modelos con "T2P" (los que incorporan CI+) , vienen codificados con SSL y de momento se desconoce la manera de decodificarlos.
EDITO:
Para acceder a carpetas compartidas de windows:
1. Tener acceso por telnet a la tele, y compartir una carpeta con pelis en windows.
2. Ir a linux.zsolttech.com/Samsung/ y bajar el fichero que hay. Descomprimirlo y meter el fichero que hay en un lápiz.
3 .Copiarlo al directorio /mtd_rwarea. Así
cp /dtv/usb/sda1/cifs.ko (o algo así, no tengo la tele ahora) /mtd_rwarea/
4. Con un lápiz metido en la tele:
umount /dev/sda
insmod /mtd_rwarea/cifs.ko
mount -o user=USUARIOWINDOWS,password=CONTRASEÑAWINDOWS -t cifs //IPWINDOWS/NOMBRECARPETACOMPARTIDA /dtv/usb/sda1/smb)
5. Ir al menú de Media Player en la tele, vídeos y ... a disfrutar.
Para quien tenga instalado el 2º firmware, el fichero inicio2.sh sería algo así:
sleep 20
umount /dev/sda
mkdir /dtv/usb/sda/pelis
insmod /mtd_rwarea/cifs.ko
mount -o user=USUARIOWINDOWS,password=CONTRASEÑAWINDOWS -t cifs //IPWINDOWS/NOMBRECARPETACOMPARTIDA /dtv/usb/sda/pelis
EDITO:
por hastaelnabo2000 Ayer 21:01
Buenas,
Soy usuario de windows y gracias a la gente de avsforums yo ya puedo acceder por telnet a mi Tv. La verdad es que con Windos es fácil, fácil, sólo hay que seguir éstos pasos:
1. Instalar el software FlexHex
2. Descomprimir el firmware del archivo T-CHL7DEUC.exe en una carpeta
3. Abrir con el software FlexHex el fichero T-CHL7DEUC\image\exe.img.enc
4. Quitar la protección XOR del fichero desde FlexHex de ésta forma:
4.1. edit -> operation -> bitwise
4.2. En la ventana que aparece seleccionamos XOR (exclusive or) y ANSI. En la ventana de texto pegamos la contraseña _________de desencripatdo: T-CHL7DEUC
4.3. Presionamos OK.
5. Buscamos (Ctr+F) la siguiente cadena como ANSI Text: export KF_LOG=/dev/null
6. Modificamos la cadena: export KF_LOG=/dev/null #Remove engine logging.
con la cadena: export KF_LOG=/dev/null;/etc/telnetd_start.sh;
NOTA: Yo he susituido el . del final que sobra (logging.) con un espacio, pero creo que no es necesario
7. Calculamos el CRC del fichero modificado con HexFlex de la siguiente forma:
7.1. Tools -> Checksum -> CRC-32
7.2. El valor se copiará en el portapapeles. Pegadlo en un bloc de notas.
8. Volvemos a poner la protección XOR siguiendo los mismos pasos del punto 4.
9. Cambiamos el valor CRC del fichero validinfo.txt por ejemplo, con el bloc de notas. Haremos lo siguiente:
9.1. Abrimos el fichero validinfo.txt por ejemplo con el bloc de notas.
9.2. Localizamos el CRC del firmware original: *007_exe.img_2982db40*011_appdata.img_e6fe10aa
9.3. El valor en negrita es que tenemos que sustituir con el valor obtenido con FlexHex pero ¡¡OJO!! lo haremos al revés:
9.3.1. FlexHex nos devuelve el CRC al revés, si el valor recibido es 33664a83 nosotros lo escribiremos así:
834a6633. Si os fijás, se escribe de derecha a izquierda en bloques de 2 cifras.
10. Copiamos la carpeta T-CHL7DEUC con los ficheros modificados en la raiz de un Pendrive
11. Pinchamos el Pendrive en la Tv
12. Seleccionamos Software Superior y seguimos los pasos para actualizar el firmware.
Si todo ha ido bien, una vez se reincie la TV después de actualizar, ya podréis tener acceso por telnet.
PD: Si la Tv no reconoce el firmware probablemente sea porque el CRC que hemos puesto en el fichero validinfo.txt no sea correcto.
Espero que éstos pasos os sirvan para habilitar el telnet en vuestras Tv.
Un saludo.
EDITO:
Aquí tenéis una herramienta (en python) para hacer todo al firmware de una vez (incluye acceso telnet+parche de ajuste de bandas negras) aparte de la medida de seguridad del & (para que no os quedéis sin tele)
http://sourceforge.net/apps/phpbb/samyg ... p?f=5&t=13Para hacerlo funcionar, desde una ventana de comandos:
python SamyGo.py CARPETAFIRMWARE(T-CHL7DEUC)
Si estáis en windows, descargad
http://www.python.org/ftp/python/2.6.3/python-2.6.3.msi e instaladlo.
Los que tengáis el firmware modificado para el automontaje, modificad la línea:
ifile.write( ';/etc/telnetd_start.sh&' )
por la siguiente :
ifile.write( ';/mtd_rwarea/inicio.sh&' )
Lo acabo de probar y funciona correctamente.
En teoría con este no hay posibilidades de convertir la tele en un ladrillo, ya que gracias al "&" siempre va a pasar de esa línea y ejecutar exeDSP (el programa de la tele).