Banner publicitario de PCBWay

Problemas con TV TD Systems

Aunque tengo un error de checksum que esta bastante al principio si no he calculado mal... es lo que me descuadra, no se si el firmware de alguna manera se esta copiando mal, de hecho estoy por probar a meter el firmware que hay por el foro de una k50 que creo que lleva la misma placa. ¿Podría funcionar?
Lo que se extrae no es el firmware, sino una copia de lo que ahora conforma un sistema operativo, conocido como volcado o dump en inglés.
El firmware es el archivo que distribuye la empresa y que se instala vía OTA o por memoria USB.
No se debe instalar ningún firmware que no haya sido diseñado específicamente para la placa final.
Soy cabezota, pero es que la televisión funcionaba, ha sido a raíz de reiniciar de fábrica la televisión, por eso me cuesta creer que la eMMC esté mal (o al menos tan mal como para descartarla), es una televisión que tiene 3 años y poco y solo se usa por la noche, más aún cuando los datos que tira TVDT sobre la memoria no son malos.
Suele suceder que los primeros síntomas de una memoria en mal estado es no poderse leer ni grabar, y aunque el reporte mencione que tenga un 5 - 10 % de uso, no quiere decir que esté en buen estado, ya que solo es una verificación basada en un contador.
La verdadera prueba del estado de los sectores de una e-MMC es destructiva, ya que se escriben bloques y posteriormente se verifica su integridad.
 

Adjuntos

  • Analyzer.jpg
    Analyzer.jpg
    97.7 KB · Visitas: 8
Lo que se extrae no es el firmware, sino una copia de lo que ahora conforma un sistema operativo, conocido como volcado o dump en inglés.
El firmware es el archivo que distribuye la empresa y que se instala vía OTA o por memoria USB.
No se debe instalar ningún firmware que no haya sido diseñado específicamente para la placa final.

Suele suceder que los primeros síntomas de una memoria en mal estado es no poderse leer ni grabar, y aunque el reporte mencione que tenga un 5 - 10 % de uso, no quiere decir que esté en buen estado, ya que solo es una verificación basada en un contador.
La verdadera prueba del estado de los sectores de una e-MMC es destructiva, ya que se escriben bloques y posteriormente se verifica su integridad.
Si, bueno, cuando he tocado cosas en moviles llaman "rom" a las imagenes del sistema, que viene a ser lo mismo. Lo he llamado firmware ni se por que, pero entiendo lo que me quieres decir.

Nunca he tocado recuperación de sectores defectuosos, aunque de oidas me suena como funciona, pero obviamente es inviable hacer esa comprobacion aquí.

Cuando se hace el respaldo de la eMMC, mencionas en el pdf esto "La ventaja de este método es que podemos obtener los archivos boot1 y boot2 (bp1.bin y bp2.bin)" pero realmente solo se graba un archivo en la tarjeta, ¿no?

No se si sirve de algo o si el programa que aportas hace alguna otra cosa, pero al darme error a partir de cierto sector, he hecho la copia manual en lugar de con el programa: dd if=/dev/block/mmcblk0 of=./emmc_backup/output.bin bs=1048576 count=7150 (el count lo bajo para cuadrar en el sector previo del fallo), supongo que de esta forma salvo el bootloader, ¿no?

Gracias!

PD. Lo de meter el firm de otro modelo fue aqui TD Systems K50DLJ10US
PD2. ¿Puede ser que el recovery se instale justo al final de la eMMC? ¿Hay forma de modifcar su situacion con el RTK Unpacking tool?
 
Última edición:
Cuando se hace el respaldo de la eMMC, mencionas en el pdf esto "La ventaja de este método es que podemos obtener los archivos boot1 y boot2 (bp1.bin y bp2.bin)" pero realmente solo se graba un archivo en la tarjeta, ¿no?
En algunos casos la partición Boot Partition 2 (BL2) suele usarse como un respaldo para BL1, pero en otros casos suele ser usada como continuación de BL1 o Boot1, así que se deben grabar las dos.
No se si sirve de algo o si el programa que aportas hace alguna otra cosa, pero al darme error a partir de cierto sector, he hecho la copia manual en lugar de con el programa: dd if=/dev/block/mmcblk0 of=./emmc_backup/output.bin bs=1048576 count=7150 (el count lo bajo para cuadrar en el sector previo del fallo), supongo que de esta forma salvo el bootloader, ¿no?
La aplicación no es la que está enviando los errores, es el mmc_io_tool, así que seguirás recibiendo los errores aunque lo hagas manual.
Y pues sí, porque vas a extraer 7497318400 bytes (7.4973 GB).
Lo más conveniente es que los extraigas por separado...
Bash:
dd if=/dev/block/mmcblk0boot0 of=./boot1.bin bs=1048576 count=4
Bootloader 2:
Bash:
dd if=/dev/block/mmcblk0boot1 of=./boot2.bin bs=1048576 count=4
Pero ese script es suponiendo que cada bootloader sea de 4 MB, y supongo que desconoces su tamaño, el cual se obtiene correctamente con la aplicación.
Por algún lado comenté que es muy probable que se extraigan bien, ya que son de solo lectura.
 
En algunos casos la partición Boot Partition 2 (BL2) suele usarse como un respaldo para BL1, pero en otros casos suele ser usada como continuación de BL1 o Boot1, así que se deben grabar las dos.

La aplicación no es la que está enviando los errores, es el mmc_io_tool, así que seguirás recibiendo los errores aunque lo hagas manual.
Y pues sí, porque vas a extraer 7497318400 bytes (7.4973 GB).
Lo más conveniente es que los extraigas por separado...
Bash:
dd if=/dev/block/mmcblk0boot0 of=./bp1.bin bs=1048576 count=4
Bootloader 2:
Bash:
dd if=/dev/block/mmcblk0boot1 of=./bp1.bin bs=1048576 count=4
Pero esos ejemplos son suponiendo que cada bootloader sea de 4 MB, y supongo que desconoces su tamaño, el cual se obtiene correctamente con la aplicación.
Por algún lado comenté que es muy probable que se extraigan bien, ya que son de solo lectura.
Al no poder terminar con la aplicación no se si se descargarian 2 o solo 1, por eso pregunto.

Con el comando manual he extraido aproximadamente 7 GB, sin errores.
/mmnt/udisk/sda1 # dd if=/dev/block/mmcblk0 of=./emmc_backup/output.bin bs=1048576 count=7149
7149+0 records in
7149+0 records out
7496269824 bytes (7.0GB) copied, 616.179858 seconds, 11.6MB/s

Pero como te digo guarda sólo 1 archivo.

Mañana extraigo los dos bootloader como me indicas. A parte de esta extracción con dd, tambien he hecho una extracción del bootloaer desde TVDT con los comandos:

mmc read 0x21000000 0x0 0x800
fatwrite usb 0 0x21000000 bootloader_1mb.bin 0x100000

O al menos eso creo, que es el bootloader, quiza esté equivocado. El tamaño no lo se, pero pensé que no sería mas grande de 1MB.

Por cierto, en cuanto a esto: ¿Puede ser que el recovery se instale justo al final de la eMMC? ¿Hay forma de modifcar su situacion con el RTK Unpacking tool? En especial a la segunda pregunta, se puede modificar para que considere como tamaño completo de la eMMC un maximo de 7GB, estoy casi seguro que si consigo "modificar" la imagen del sistema para que solo use 7GB de eMMC funcionaria.

Gracias!

PD. Te dejo un log con una instalación del sistema por USB con la imagen oficial, donde se queda pillado en la instalacion del recovery, para que comprendas lo que pretendo.
 

Adjuntos

  • instalacion de fabrica.txt
    1.9 MB · Visitas: 0
Última edición:
Al no poder terminar con la aplicación no se si se descargarían 2 o solo 1, por eso pregunto.
Es obvio que los dos y hasta particiones de sobra.
Aunque la extracción no esté completa los puedes ver y extraer con EFI-Xer Tool.
Con el comando manual he extraido aproximadamente 7 GB, sin errores.
/mmnt/udisk/sda1 # dd if=/dev/block/mmcblk0 of=./emmc_backup/output.bin bs=1048576 count=7149
7149+0 records in
7149+0 records out
7496269824 bytes (7.0GB) copied, 616.179858 seconds, 11.6MB/s
Claro, porque omitiste los bloques con errores.
Pero como te digo guarda sólo 1 archivo.
Para eso está la aplicación que te mencioné.
Mañana extraigo los dos bootloader como me indicas. A parte de esta extracción con dd, tambien he hecho una extracción del bootloaer desde TVDT con los comandos:

mmc read 0x21000000 0x0 0x8000
fatwrite usb 0 0x21000000 bootloader_16mb.bin 0x1000000
Sí, es otra forma que también se ha expuesto, incluso con hexdump.
Por cierto, en cuanto a esto: ¿Puede ser que el recovery se instale justo al final de la eMMC? ¿Hay forma de modificar su situación con el RTK Unpacking tool?
En especial a la segunda pregunta, se puede modificar para que considere como tamaño completo de la eMMC un maximo de 7GB, estoy casi seguro que si consigo "modificar" la imagen del sistema para que solo use 7GB de eMMC funcionaria.
Con EFI-Xer Tool puedes saber en qué LBA's se encuentra la partición recovery.
Incluso la puedes reemplazar por otra funcional.
Y no, no se puede establecer otro tamaño, porque se estarán perdiendo particiones.
De hecho, no existe esa posibilidad, por lógica, ningún sistema operativo tiene definido un tamaño.
 
Es obvio que los dos y hasta particiones de sobra.
Aunque la extracción no esté completa los puedes ver y extraer con EFI-Xer Tool.

Claro, porque omitiste los bloques con errores.

Para eso está la aplicación que te mencioné.

Sí, es otra forma que también se ha expuesto, incluso con hexdump.

Con EFI-Xer Tool puedes saber en qué LBA's se encuentra la partición recovery.
Incluso la puedes reemplazar por otra funcional.
A ver si entiendo todo bien, con el EFI Xer Tool podre modificar las particiones que tengo corruptas, incluida la recovery (la cual casi seguro no he llegado a grabar porque esta la eMMC dañada y no he llegado hasta esa zona con el comando dd). Ademas con el RTK Unpacking Tool podré extraer las particiones que necesito desde el software que me dió tdsystems e incluirlas con el EFI Xer Tool para crear un archivo .bin valido que luego podre grabar en mi eMMC nueva, ¿he entendido bien?

Aunque creo haber leído que con grabar el bootloader en la nueva eMMC sería suficiente para cargar de nuevo el software original que me dió tdsystem. No se cual seria la mejor opcion. Ya no recuerdo ni todo lo que he leido por el foro...

Veo que el EFI Xer Tool tendra soporte para grabar directamente a traves de un programador AU6438BS (imagino que a traves de pinout, creo que se llama asi), ¿cuando será?

¿De qué forma, o mejor dicho con que software se suelen hacer este tipo de grabaciones por pinout?

Y no, no se puede establecer otro tamaño, porque se estarán perdiendo particiones.
De hecho, no existe esa posibilidad, por lógica, ningún sistema operativo tiene definido un tamaño.

Imaginaba que el software que instalamos por usb creaba las particiones en base a un tamaño de memoria (eMMC) concreto, de ahi que el recovery se quedara para la particion final (o casi final). Por eso pensé que podría modificarse este tamaño por "defecto" si extraía los archivos con RTK Unpacking y encontraba el archivo que lo gestionara.

Mil gracias D@rkbytes!

PD. Mañana me llega este EMMC-ISP línea voladora desbloquea artefacto cepillo para teléfono móvil AU6438BS lector de tarjetas desmontaje gratuito de la segunda solución de la biblioteca de palabras - AliExpress 44 supongo que sera más que suficiente para "iniciarme" en esto de programar eMMC. Lo que no se es que eMMC comprar :/
 
A ver si entiendo todo bien, con el EFI Xer Tool podré modificar las particiones que tengo corruptas, incluida la recovery (la cual casi seguro no he llegado a grabar porque esta la eMMC dañada y no he llegado hasta esa zona con el comando dd). Además con el RTK Unpacking Tool podré extraer las particiones que necesito desde el software que me dio TDSystems e incluirlas con el EFI Xer Tool para crear un archivo .bin valido que luego podre grabar en mi eMMC nueva, ¿he entendido bien?
Las particiones se modifican aparte, con EFI-Xer Tool solo podrás extraerlas o reemplazarlas.
En el caso de particiones EXT4 podrás extraer archivos y reemplazarlos, próximamente ver su contenido (solo texto).
RTK Unpacking Tool solo funciona con firmware que no esté encriptado, si lo está, no se podrá.
Imaginaba que el firmware que instalamos por USB creaba las particiones en base a un tamaño de memoria (eMMC) concreto, de ahí que el recovery se quedara para la partición final (o casi final).
Por eso pensé que podría modificarse este tamaño por "defecto" si extraía los archivos con RTK Unpacking y encontraba el archivo que lo gestionara.
Pues no, cada firmware tiene instrucciones para instalar las particiones, y pueden quedar al principio, al final, o en medio, eso no es relevante.
Lo que sí es relevante es cuando el sistema trata de buscarlas, si no las encuentra o están corruptas, es cuando aparecen los errores que todos conocemos.
Es por eso que no puedes instalar solo una parte del volcado, que es muy independiente a la capacidad de la e-MMC.
Para que te quede más claro, es como si instalaras solo una parte de Linux o Windows.
El instalador del sistema lo que verifica es que se tenga el espacio suficiente, pero el sistema no funcionará si está incompleto.
Lo que no sé es qué eMMC comprar.
De preferencia una del mismo modelo, o en su defecto de la misma capacidad, pero que su pinout sea el mismo.
 
Pues no, cada firmware tiene instrucciones para instalar las particiones, y pueden quedar al principio, al final, o en medio, eso no es relevante.
Lo que sí es relevante es cuando el sistema trata de buscarlas, si no las encuentra o están corruptas, es cuando aparecen los errores que todos conocemos.
Es por eso que no puedes instalar solo una parte del volcado, que es muy independiente a la capacidad de la e-MMC.
Para que te quede más claro, es como si instalaras solo una parte de Linux o Windows.
El instalador del sistema lo que verifica es que se tenga el espacio suficiente, pero el sistema no funcionará si está incompleto.
Es decir que, ¿mi volcado "incompleto" no valdría para meterlo a otra eMMC?
Pensaba que metiendo el bootloader en la nueva eMMC e instalando el software oficial con un pendrive por USB, funcionaría.

¿Hay algún volcado disponible en el foro para mi placa y modelo (HK.T.RT2851P839 - K55DLG12US) panel T550QVN07.G?
Porque lo mismo me estoy quebrando la cabeza para nada.

Muchas gracias. ;)
 
Última edición por un moderador:

juanmad

Puedes probar a enviar este comando desde la linea de comandos realtek. Esto de alguna forma formatea y repara algun error de la zona en cuestion. Es la parte alta , despues del boot y los factory data, asi que se puede borrar sin problemas.

Realtek> mmc erase trim 0x01E000 0xE71FDF

Despues de esto intenta actualizar desde el usb con el upgrade, se puede forzar pulsando TAB al dar tension al tv, creo que es el mode "ATV"
Haz log de todo para ver si al actualziar da error en otra zona.
 
Muchas gracias!! Pensé que serÍa un archivo .bin, me he perdido un poco, ¿esto vale para reprogramar una nueva eMMC tras instalarla en la placa?

Puedes probar a enviar este comando desde la linea de comandos realtek. Esto de alguna forma formatea y repara algun error de la zona en cuestion. Es la parte alta , despues del boot y los factory data, asi que se puede borrar sin problemas.

Realtek> mmc erase trim 0x01E000 0xE71FDF

Despues de esto intenta actualizar desde el usb con el upgrade, se puede forzar pulsando TAB al dar tension al tv, creo que es el mode "ATV"
Haz log de todo para ver si al actualziar da error en otra zona.

Según he visto el recovery se instala unos sectores mas adelante de donde me dio los fallos, dejé el log de esto mismo en el mensaje #264 de este mismo hilo.

La actualización siempre la comienza bien y sin problemas (metodo clasico, pinchar usb y enchufar la tv), pero se queda pillado al instalar en el recovery, en el log que te comento lo puedes ver.

¿Eliminar practicamente 7GB no afecta a la hora de reinstalar desde usb? Seguro que no, pero como ya he comentado yo no soy técnico electrónico, estoy pasando un ratillo intentando aprender a reparar mi tele y todo lo que conlleva y no tener que tirarla, y hay alguna cosa que aún me descuadra... me explico:

Ese comando se supone que borra mas o menos 7GB de la eMMC (imagino que tambien particiones y todo lo que pille), pero creo haber entendido que para poner una eMMC nueva necesito grabar una imagen de un sistema que este funcional, con todas sus particiones y demas. Me ha descolocado porque si borro casi 7GB... Pensaba que habia entendido algo y ahora tengo dudas, de hecho al principio pensaba que con tener grabado unicamente el bootloader en la eMMC nueva y tras instalarla en placa podria cargar el software que me dio tdsystem via USB. :unsure:

Disculpa que me enrollo, cuando dices con el upgrade, te refieres con la opcion upgrade desde TVDT? o con el sistema clasico de poner el pendrive en el usb y encender la tele?

Gracias!!
@Elektrik se refiere a que grabes el volcado que proporcionó y después de eso reinstales el firmware desde una memoria USB.
Al hacer eso es posible que se reescriban las claves que se pierden y tal vez las aplicaciones funcionen nuevamente, como Netflix, por ejemplo.

¿Esto seria el inverso de lo que explicas en el pdf de extraccion de eMMC realtek? Osea hacer un dd del archivo a la memoria, o mejor dicho usando el programita emmc_io_tool con la flag -i .

A parte de eso, ¿este volcado que me ha proporcionado me valdria para volcarlo a una eMMC nueva o necesito otro fichero diferente?

Gracias

:)
 
Si te borrara por encima del boot y factory datas, casi los 7GB enteros, todo eso se puede borrar y se recupera luego con el update por usb.
Puedes hacer en realtek un "layout view" , veras el boot y por encima todo lo demas, los factory's y luego cosas de audio video , kernel etc.
Parece ser que en alguna posicion alta la emmc tiene fallos, normalmente con el "mmc erase trim ... " se recuperan, lo malo es si este fallo te lo da en la parte del boot, ahi ya es mas complicado repararlo, pero en la parte alta es facil.

Tambien podrias hacer un log cuando actualizas y nos dara exactamente donde falla la emmc.
 
Si te borrara por encima del boot y factory datas, casi los 7GB enteros, todo eso se puede borrar y se recupera luego con el update por usb.
Puedes hacer en realtek un "layout view" , veras el boot y por encima todo lo demas, los factory's y luego cosas de audio video , kernel etc.
Parece ser que en alguna posicion alta la emmc tiene fallos, normalmente con el "mmc erase trim ... " se recuperan, lo malo es si este fallo te lo da en la parte del boot, ahi ya es mas complicado repararlo, pero en la parte alta es facil.

Tambien podrias hacer un log cuando actualizas y nos dara exactamente donde falla la emmc.
En el post #260 lo menciono:

mmcblk0: error -115 transferring data, sector 14643200

Eso sucede al usar el programa emmc_io_tool de este post Respaldo de eMMC en tarjetas RealTek
(¿Fallo al llegar apx a los 7.5GB?)

Tras esto hice una copia manual de aproximadamente 7 gb con el comando "dd" (post #262)

En un ratillo a ver si puedo enganchar la tele y ponerme con ella.

Muchas gracias!

Edit: Tenia el layout a mano en un log guardado.
Realtek> layout view[layout view]
+-----------------------------+ 0x00000001d1ffbe00 | smarttv ( 65536KBytes) |
+-----------------------------+ 0x00000001cdffbe00 | wov ( 4096KBytes) |
+-----------------------------+ 0x00000001cdbfbe00 | vbmeta ( 1024KBytes) |
+-----------------------------+ 0x00000001cdafbe00 | tvconfigs ( 16384KBytes) |
+-----------------------------+ 0x00000001ccafbe00 | product (204800KBytes) |
+-----------------------------+ 0x00000001c02fbe00 | dtbo ( 8192KBytes) |
+-----------------------------+ 0x00000001bfafbe00 | recovery ( 32768KBytes) |
+-----------------------------+ 0x00000001bdafbe00 | boot ( 32768KBytes) |
+-----------------------------+ 0x00000001bbafbe00 | optee_armtz (131072KBytes) |
+-----------------------------+ 0x00000001b3afbe00 | dummy ( 1024KBytes) |
+-----------------------------+ 0x00000001b39fbe00 | misc ( 1024KBytes) |
+-----------------------------+ 0x00000001b38fbe00 | persist ( 1024KBytes) |
+-----------------------------+ 0x00000001b37fbe00 | vendor (286720KBytes) |
+-----------------------------+ 0x00000001a1ffbe00 | res ( 16384KBytes) |
+-----------------------------+ 0x00000001a0ffbe00 | cache (281808KBytes) |
+-----------------------------+ 0x000000018fcc7e00 | data (4404020KBytes) |
+-----------------------------+ 0x0000000082ffae00 | system (1572864KBytes) |
+-----------------------------+ 0x0000000022ffae00 | FREE SPACE (435147KBytes) |
+-----------------------------+ 0x0000000008708000 | videoFile ( 8192KBytes) |
+-----------------------------+ 0x0000000007f08000 | tee ( 12288KBytes) |
+-----------------------------+ 0x0000000007308000 | videoKernel ( 6144KBytes) |
+-----------------------------+ 0x0000000006d08000 | audioKernel ( 5120KBytes) |
+-----------------------------+ 0x0000000006808000 | linuxKernel ( 40960KBytes) |
+-----------------------------+ 0x0000000004008000 | fw table ( 32KBytes) |
+-----------------------------+ 0x0000000004000000 | reserved ( 4096KBytes) |
+-----------------------------+ 0x0000000003c00000 |secure store ( 12288KBytes) |
+-----------------------------+ 0x0000000003000000 | factory ( 16384KBytes) |
+-----------------------------+ 0x0000000002000000 | eeprom ( 4096KBytes) |
+-----------------------------+ 0x0000000001c00000 | factory ro ( 4096KBytes) |
+-----------------------------+ 0x0000000001800000 | bootcode ( 24576KBytes) |
+-----------------------------+ 0x0000000000000000
Realtek>
.user rename .bin
¿Tan simple? Gracias!
 
¿Esto sería el inverso de lo que explicas en el pdf de extracción de eMMC realtek? O sea hacer un dd del archivo a la memoria, o mejor dicho usando el programita emmc_io_tool con la flag -i .
No, es que para entender bien todo el proceso necesitas leer los temas que tratan sobre esto.
Básicamente se trata de lo siguiente...
Cuando el bootloader se encuentra funcionando, es posible realizar varias cosas.
Si cuentas con un respaldo/volcado que funciona, puedes borrar toda la memoria e-MMC por comando.
Obviamente esto borrará el bootloader, pero como se encuentra cargado en RAM, seguirá operando, por eso es muy importante que durante el proceso de restauración, el TV no se desconecte de la red eléctrica, porque obviamente se eliminará de la RAM.
Después de que la e_MMC ha sido borrada, se procede a grabar el volcado, también por comando.
El volcado contiene el bootloader y volverá a grabarse en la e-MMC, incluyendo todas las particiones.
Cuando termine el proceso de grabado a la e-MMC, ya se podrá desconectar el TV.

En el enlace que coloqué se realiza el mismo procedimiento, pero cargando el bootloader para posteriormente instalar el firmware.
Pero se requiere tener el bootloader adecuado, ya que no se debe grabar cualquiera, y el bootloader se puede extraer del firmware.
 
Atrás
Arriba