desktop

Cómo cambiar el Logotipo, tipo de Panel LCD y Control Remoto en TV Smart (SoC Mstar)

D@rkbytes

Moderador general
Esta información trata acerca del cambio de Logotipo de Inicio del TV, el tipo de Panel LCD y el Control Remoto.
Para esto es necesario tener el Firmware del televisor en cuestión. (Solo válido para televisores con Soc MStar)

Necesitamos desempacar el firmware con una utilidad que publiqué por aquí.
También necesitaremos otro programa que nos servirá para crear una unidad virtual de disco duro en el sistema.
Para este caso yo he probado dos con el mismo resultado: ImDisk Toolkit y OFSMount

Voy a tratar sobre el programa ImDisk Toolkit, ya que es el que tengo instalado pero con OFSMount es muy similar el proceso.
Lo que requerimos es desempacar el firmware y obtener sus particiones.

Para esto procedemos de la siguiente forma:
Procedimiento de ejemplo con el firmware LDM538.bin para una tarjeta LDD.M538.B138 (En México para AKAI, RCA y SANSUI)
Ejecutamos el programa Mstar Unpacking Tool y nos vamos a la pestaña "Unpacking" (Por defecto).

MSUT_001.jpg

En donde dice "Browse..." seleccionamos el archivo y aparecerán todas las imágenes seleccionadas, pero solo nos interesa una ->"tvconfig"
Así que deseleccionamos todas, dejando marcada solo "tvconfig"
MSUT_002.jpg
Ahora ya podemos proceder con el desempacado de esta imagen, presionando sobre el botón "Unpack Firmware"

Este proceso no debe demorar, ya que solo estamos extrayendo una imagen pequeña, unos 16 MB aproximadamente.
Si el proceso fue realizado convenientemente, el programa nos mostrará un mensaje: "Unpacking process completed susccessfully"
Ahora debemos ir a la carpeta "Working", esta carpeta se establece en la pestaña "Configuration"
Ahí debe estar creada una carpeta con el nombre del firmware, en este caso: "C:\Temp\Working\LDM538"
Debemos encontrar los siguientes archivos:
Working_LDM538.jpg
El archivo que nos importa es "tvconfig.img", los otros también son importantes, pues tienen la información que requeriremos para volver a empacar el firmware.
Ahora debemos extraer el contenido de esta imagen seleccionando la pestaña "Ext2/3/4 Extractor"
En esta ventana seleccionamos la imagen "tvconfig.img" y presionamos el botón "Extract Files"
MSUT_003.jpg
Esta acción extraerá los archivos contenidos en la imagen.
TVCONFIG_CONTENT.jpg

Ya después de extraídos los archivos, lo que sigue es crear una imagen Ext4, para esto recurrimos a la aplicación "Make Image" (Adjunta)
Nota: debemos crear la imagen con formato Ext4, no Ext2 ni Ext3.
La imagen la debemos crear del mismo tamaño a la que extraímos del firmware, si es necesario, un poco más pero de preferencia solo el tamaño que necesitemos para modificar.
Estas imágenes suelen tener espacio extra, así que podemos probar con solo el tamaño original de la imagen.
MakeImage.jpg
La imagen creada estará sin formato cuando se trata de Ext4, así que debemos darle formato con la aplicación DiskGenius
Esta aplicación, infortunadamente es de pago, pero en realidad vale la pena pagar su licencia porque es la única que puede formatear y trabajar con imágenes Ext2/3/4.
Ya probé otras pero no reconocen imágenes virtuales montadas con ImDisk.

Después de creada la imagen Ext4 se deberá formatear, igualmente en Ext4, pero primero hay que montarla como virtual:
Así que nos situamos en la carpeta de la imagen creada y con ImDisk instalado, damos click derecho sobre la imagen para seleccionar...
ImDisk_Mount.jpg
Si se trata de Windows 11 debemos seleccionar "Mostrar más opciones" para que aparezca esta opción.
Una vez hecho esto, procedemos a montarla con las opciones por defecto:
ImDisk_Default_Mount.jpg
Así tal cual están las opciones, presionamos el botón "OK" y aparecerá esta ventana:
ImDisk_Invalid_System.jpg
Presionamos "Salir" para que nos deje la imagen Ext4 montada pero sin cambios en su sistema de archivos (File System).
Ahora viene su formateo, igualmente en Ext4...
Ejecutamos DiskGenius y seleccionamos la imagen que montamos.
DG_Unformatted.jpg
Damos click derecho en esta imagen y seleccionamos "Format Current Partition"
DG_Format.jpg
Procedemos a darle formato con las opciones por defecto, y si queremos le podemos poner un nombre al volumen...
Volume Label en este caso es irrelevante porque en el sistema del TV no será usado, pero sí nos puede servir, como por ejemplo...
Ponerle un nombre como: modif_001_rev1.0 (16 caracteres máximo).
Esta información sí la muestra la aplicación Mstar Unpacking Tool en: (Ext2/3/4 Extractor) y nos podrá servir para saber que ya hemos modificado esta imagen, con versión y su revisión.
DG_Format_Options.jpg
Tras presionar el botón "Format" ya tendremos lista nuestra imagen para poder añadir los archivos que modifiquemos con la extracción que obtuvimos anteriormente.

Ya formateada la imagen podemos ingresarle los archivos modificados usando nuevamente DiskGenius.
Para esto podemos usar la opción "Copy Files To Current Partition" (Click derecho sobre la ventana de la pestaña "Files") o de la mejor manera que es, copiar y pegar arrastrando archivos. (Drag & Drop)
Yo recomiendo esta forma porque las particiones Ext4 por defecto durante el formateo se crea una carpeta llamada "lost+found"
Esta carpeta también debe estar en los archivos que extraímos y por lo tanto debe ser excluída.
Si se incluye y la imagen la contiene puede haber perdida de datos o errores de copiado.
Esto sucede solo en Windows, no en Linux Nativo, por eso es importante deseleccionar esta carpeta o eliminarla en la carpeta de su extracción.
Yo hago esto:
Exclude_lost+found.jpg
Ahí se puede ver que estoy excluyendo de la selección a la carpeta "lost+found"
Tras esto, solo resta hacer un Drag & Drop hacia la imagen en DiskGenius, que estará vacía, para que se copien todos los archivos.
En esta imagen podemos ver que la imagen mostrada al incio será "boot0.jpg"
Basta reemplazarla con otra de las mismas dimensiones para que tras el reempacado de la imagen, sea mostrada.
Lo mismo se puede hacer con boot_error.jpg y boot_recovery.jpg

Ahora pasemos a modificar el tipo de Panel LCD:
Una vez extraídos los archivos de la imagen "tvconfig", debemos entrar a la carpeta "panel", que se encuentra dentro de la carpeta "config"
En esta carpeta podremos ver todos los tipos de Panel LCD soportados:
LCD Panels.jpg
En este caso del firmware LDM538.bin, son bastantes, de hecho no pude capturar todos, pero esto es un ejemplo.
Otros firmware tienen menos, y lo que importa es ver si algún archivo corresponde a nuestro Panel LCD.
Si existe, debemos copiar el nombre del archivo .ini.
Por ejemplo: Mi Panel LCD es un "FullHD_LG120HZ", entonces copio el nombre del archivo "FullHD_LG120HZ.ini" y prosigo con lo siguiente...
Ahora ir a la carpeta "Model", en esta carpeta debemos buscar y abrir el archivo "Customer_1.ini"
Recomiendo abrir este archivo con NotePad++, porque con el bloc de notas nos aparecerá todo de corrido y no entenderemos nada.
De hecho, todos los archivos .ini los abro con NotePad++, de otra forma solo se ve texto en secuencia que no se llega a entender.
Al menos en este formato de archivos .ini, en otro formato .ini normal de Windows va bien abrirlos con con notepad o wordpad.
En Windows 11 el bloc de notas ya los lee perfectamente.

Dentro del archivo "Customer_1.ini" debemos encontrar lo siguiente:
Código:
# ^^^^^^^^ NOTICE ^^^^^^^^ ABOUT CHANGING PANEL SETTING ^^^^^^^^
m_pPanelName = "/config/panel/Default_Panel.ini";
m_p4K540_240PPanelName = "/config/panel/UD_VB1_8LANE_CSOT_240.ini";
m_p4K1K_120PPanelName = "/config/panel/UD_VB1_8LANE_CSOT_120.ini"
m_p4K2K_60PPanelName = "/config/panel/UD_VB1_8LANE_CSOT.ini"
La variable para el nombre del Panel LCD se llama "m_pPanelName" y verán que hace referencia al archivo "Default_Panel.ini"
Este archivo está en la carpeta "/config/panel"
Así que este es el nombre que debemos cambiar para establecer el tipo de nuestro Panel LCD.
Si no está dentro de la lista de archivos de la carpeta "panel" lo podemos agregar, pero teniendo en cuenta que el archivo agregado sea del mismo formato.
Para esto, lo podemos obtener de otro firmware, por eso es que he publicado en este Foro las herramientas para poder desempacar firmware.
Ya que con esto podemos obtener la información de los archivos que necesitemos para poder modificar un firmware.
Finalmente, solo nos resta modificar la variable: "m_pPanelName" con el tipo de Panel LCD requerido, supongamos...
m_pPanelName = "/config/panel/FullHD_LG120HZ.ini;
Y ya con esto el sistema debe establecer el tipo de Panel LCD debe usar.

Ahora pasemos al tipo de Control Remoto:
Este caso ya es muy especial y se requiere tener los archivos "Customer Custom Files"
Estos archivos hacen referencia al mapeo de teclas sobré los items del TV y el tipo de sistema IR, que son varios.
Existen páginas como Kazmi Elecom que nos ofrecen estos archivos gratis y son los que podemos usar.
Caso contrario, debemos extraer estos datos de otro firmware compatible.
Tal vez no encontremos un IR CCF para nuestro TV que se quedó Pegado en el Logo, y con otro firmware lo podemos hacer funcionar.
Por lo menos podemos cambiar el Logotipo, el tipo de Panel LCD y usar un IR CCF de otra marca, por ejemplo SAMSUNG, SONY, LG, etc.
Que son controles remotos muy comunes.

Los archivos a modificar son los siguientes:
Other IR.jpg
Lo importante es que el nombre de los archivos sean iguales y que su formato sea el mismo.
El archivo PM.bin suele ser siempre el que contiene los datos del protocolo IR, ya sea IRC, NEC, etc.
Los demás son ejecutables (ELF) y la configuración sobre cómo actuar ante cada tecla pulsada conforme a los items del TV.

Ya con todo lo necesario editado, podemos pasar a compilar el firmware para instalarlo por medio de una memoria USB.
Para esto, ya con los cambios realizados en la partición montada "tvconfig", procedemos a desmontarla.
ImDisk_Umount.jpg
Ya desmontada la imagen se puede volver a tener acceso al archivo "tvconfig.img" que ahora contendrá todos los cambios que hayamos hecho en la imagen montada virtualmente.
Ahora podemos compilar nuestro nuevo firmware con la aplicación Mstar Unpacking Tool.
Para esto debemos seleccionar la pestaña "Repacking" y aquí debemos seleccionar nuestro archivo de proyecto, en este caso "LDM538.project"
MSUT_004.jpg
Como anteriormente solo seleccionamos extraer la imagen "tvconfig" no habrá otras más, así que la seleccionamos y si las opciones de empacado son correctas, procedemos a su compilación presionando el botón "Repack Firmware".
Tras esto, el programa creará un archivo llamado "new-LDM538.bin" que debemos copiarlo a una memoria USB y cambiar su nombre a "LDM538.bin", o sea, al nombre original que requiere el TV como el nombre original del archivo de actualización.
Ahora podemos proceder a hacer una actualización del firmware en el TV, pero únicamente serán modificados los datos que hayamos cambiado, ya que el script solo establecerá el cambio en la partición "tvconfig"

Este tema se puede extender bastante y traté de ser muy breve, sin embargo, se requiere de mucho estudio en electrónica forense para poder estudiar casos concretos.
Lo expuesto está basado en los firmware MStar de nueva generación, por tal motivo, los resultados no siempre serán los mismos en otros firmware, pero al menos se explica la manera actual en cómo se pueden tratar para su posterior modificación.
 

Adjuntos

  • KeyMap_001.jpg
    KeyMap_001.jpg
    23 KB · Visitas: 1,067
  • MKIMG_100.rar
    453.2 KB · Visitas: 142
Saludos colega, excelente explicación del tema, he hecho algunas pruebas y unas salen bien y otras no tanto, pero tengo que hacer muchas más pruebas para dar bien con la cuestión. Bueno, quisiera que dentro de tus posibilidades me instruyas, me guíe o me orientes si existe algún software para hacer todo esto, cambiar el panel y el control remoto en los TV que no son SMART TV, ya que a mi taller el 70% de los LCD que recibo no son Smart. Le agradezco un montón de ante mano la ayuda con toda la información que nos brindó. saludos
 
Hola, saludos, con esta técnica se podría desempacar los archivos generados por el rt809f, a cual obtengo el BOOT 1, BOOT 2, y el MMC ?
 
Última edición por un moderador:
Esta información trata acerca del cambio de Logotipo de Inicio del TV, el tipo de Panel LCD y el Control Remoto.
Para esto es necesario tener el Firmware del televisor en cuestión. (Solo válido para televisores con Soc MStar)

Necesitamos desempacar el firmware con las utilidades que ya publiqué por aquí pero las dejo nuevamente en este post.
También necesitaremos otro programa que nos servirá para crear una unidad virtual de disco duro en el sistema.
Para este caso yo he probado dos con el mismo resultado: ImDisk Toolkit y OFSMount

Voy a tratar sobre el programa ImDisk Toolkit, ya que es el que tengo instalado pero con OFSMount es muy similar el proceso.
Para desempacar el firmware usaremos cualquiera de las utilidades anteriores, ya sea, mstar-bin-tool o MStarBinTool GUI
Recomiendo usar MSTarBinTool GUI ya que no requiere tener Phyton instalado en el sistema, aunque el resultado será el mismo si usamos mstar-bin-tool.
mstar-bin-tool se debe usar por línea de comandos, y MStarBin Tool GUI ya es una aplicación estándar para Windows.
Lo que requerimos es desempacar el firmware y obtener sus particiones.

Para esto procedemos de la siguiente forma: (MStarBinTool GUI)
Procedimiento de ejemplo con el firmware LDM538.bin para una tarjeta LDD.M538.B138 (En México para SANSUI y RCA)
Ejecutamos el programa MStarBinTool GUI y vamos a la pestaña "Unpack BIN"


Ver el archivo adjunto 292698

En donde dice "Firmware file:" seleccionamos el archivo.
Ver el archivo adjunto 292699

Ahora seleccionamos la opción "Images"
Ver el archivo adjunto 292700
Aparecerán todas las particiones seleccionadas, pero solo nos interesa una. ->"tvconfig"
Así que deseleccionamos todas, dejando marcada solo "tvconfig"
Ver el archivo adjunto 292701
Ahora ya podemos proceder con el desempacado de esta partición, presionando sobre el botón "Unpack firmware"
Ver el archivo adjunto 292705
Este proceso no debe demorar, ya que solo estamos extrayendo una partición pequeña, unos 16 Mb aproximadamente.
Si el proceso fue realizado convenientemente, el programa nos mostrará un mensaje diciendo: "Done"
Ahora debemos ir a la carpeta del programa "MStarBinTool GUI" y entrar en la carpeta "work"
Ahí debe estar creada una carpeta con el nombre del firmware, en este caso "/work/LDM538"
Debemos encontrar los siguientes archivos:

Ver el archivo adjunto 292706
El archivo que nos importa es "tvconfig.img", los otros también son importantes, pues tienen la información que requeriremos para volver a empacar el firmware.
Al archivo "tvconfig.img" le debemos hacer una copia, click derecho, arrastrar hacia la derecha o abajo y seleccionar "copiar aquí"
Ver el archivo adjunto 292707
Esto es en mi caso y quizás a varios les pase que tras montar la imagen con ImDisk, Windows no reconozca la unidad y pida formatearla.
Así que les explico lo que yo hago ante esta situación...
Ya instalado el programa "ImDisk Toolkit" u "OFSMount" debemos indicar que monte esta imagen como un nuevo disco.
Nota: Montar la imagen original, no la copia. Esta nos servirá posteriormente.
Ver el archivo adjunto 292708
Aquí viene el siguiente proceso que debemos hacer como se muestra a continuación...
Ver el archivo adjunto 292709
Después de montar la imagen, Windows no reconocerá el nuevo disco creado.
Pedirá formatear la unidad, así que indicamos que sí, pero teniendo en cuenta que debe ser formateada como FAT.
Ver el archivo adjunto 292710
Presionar sobre el botón "Formatear disco"
Ver el archivo adjunto 292711
Presionar sobre el botón "Iniciar", así tal cual se muestra en sus opciones.

Con esto ya debemos tener una unidad vacía pero con el mismo tamaño requerido y haciendo referencia al archivo "tvconfig.img"
O sea que tenemos bloqueado el acceso a este archivo porque está montado virtualmente.
Aquí es donde entra la copia que realizamos, porque la unidad creada y con referencia estará vacía.
Así que abrimos la copia con el programa 7-Zip
Ver el archivo adjunto 292712
Tras abrir esta imagen o partición, podremos ver su contenido:
Ver el archivo adjunto 292713
Ahora debemos copiar su contenido en la unidad creada, en este caso G:
Para esto, debemos seleccionar todos los archivos en el programa 7-Zip y copiarlos a la unidad creada:
Ver el archivo adjunto 292714
Tras esto, solo resta hacer un Drag & Drop hacia la unidad creada que estará vacía, para que se copien todos los archivos.
Esto nos restaura en el archivo "tvconfig.img" lo que se formateó, y ahora ya tenemos una unidad montada pero con archivos.
El logotipo en este caso será "boot0.jpg", en otros casos puede haber más, por ejemplo: boot1.jpg, boot2.jpg, boot3.jpg, etc.
Si existen más boot0, 1, 2, 3.jpg, etc, es porque el firmware es multisistema, y la selección del logotipo se especificará en el archivo "boot.ini"
Para cambiar el logotipo, debemos seleccionar una imagen del mismo formato y extensión, o sea, .jpg y con las mismas dimensiones que "boot0.jpg".
Las particiones suelen tener un poco de espacio extra, así que debemos tener esto en cuenta, porque si excedemos esto al modificar, Windows nos dará error de espacio insuficiente.
Por eso debemos tener cuidado al elegir el archivo a modificar.

Ahora pasemos a modificar el tipo de Panel LCD:
Para esto, y una vez montada la partición "tvconfig", debemos entrar a la carpeta "panel", que se encuentra dentro de la carpeta "config"
En esta carpeta podremos ver todos los tipos de Panel LCD soportados:
Ver el archivo adjunto 292716
En este caso del firmware LDM538.bin, son bastantes, de hecho no pude capturar todos, pero esto es un ejemplo.
Otros firmware tienen menos, y lo que importa es ver si algún archivo corresponde a nuestro Panel LCD.
Si existe, debemos copiar el nombre del archivo .ini.
Por ejemplo: Mi Panel LCD es un "FullHD_LG120HZ", entonces copio el nombre del archivo "FullHD_LG120HZ.ini" y prosigo con lo siguiente...
Ahora ir a la carpeta "Model", en esta carpeta debemos buscar y abrir el archivo "Customer_1.ini"
Recomiendo abrir este archivo con NotePad++, porque con el bloc de notas nos aparecerá todo de corrido y no entenderemos nada.
De hecho, todos los archivos .ini los abro con NotePad++, de otra forma solo se ve texto en secuencia que no se llega a entender.
Al menos en este formato de archivos .ini, en otro formato .ini normal de Windows va bien abrirlos con con notepad o wordpad.

Dentro del archivo "Customer_1.ini" debemos encontrar lo siguiente:

La variable para el nombre del Panel LCD se llama "m_pPanelName" y verán que hace referencia al archivo "Default_Panel.ini"
Este archivo está en la carpeta "/config/panel"
Así que este es el nombre que debemos cambiar para establecer el tipo de nuestro Panel LCD.
Si no está dentro de la lista de archivos de la carpeta "panel" lo podemos agregar, pero teniendo en cuenta que el archivo agregado sea del mismo formato.
Para esto, lo podemos obtener de otro firmware, por eso es que he publicado en este Foro las herramientas para poder desempacar firmware.
Ya que con esto podemos obtener la información de los archivos que necesitemos para poder modificar un firmware.
Finalmente, solo nos resta modificar la variable: "m_pPanelName" con el tipo de Panel LCD requerido, supongamos...
m_pPanelName = "/config/panel/FullHD_LG120HZ.ini;
Y ya con esto el sistema debe establecer el tipo de Panel LCD debe usar.

Ahora pasemos al tipo de Control Remoto:
Este caso ya es muy especial y se requiere tener los archivos "Customer Custom Files"
Estos archivos hacen referencia al mapeo de teclas sobré los items del TV y el tipo de sistema IR, que son varios.
Existen páginas como Kazmi Elecom que nos ofrecen estos archivos gratis y son los que podemos usar.
Caso contrario, debemos extraer estos datos de otro firmware compatible.
Tal vez no encontremos un IR CCF para nuestro TV que se quedó Pegado en el Logo, y con otro firmware lo podemos hacer funcionar.
Por lo menos podemos cambiar el Logotipo, el tipo de Panel LCD y usar un IR CCF de otra marca, por ejemplo SAMSUNG, SONY, LG, etc.
Que son controles remotos muy comunes.

Los archivos a modificar son los siguientes:
Ver el archivo adjunto 292717
En otros sistemas:
Ver el archivo adjunto 292718
Lo importante es que el nombre de los archivos sean iguales y que su formato sea el mismo.
El archivo PM.bin suele ser siempre el que contiene los datos del protocolo IR, ya sea IRC, NEC, etc.
Los demás son configuraciones sobre como actuar ante cada tecla pulsada conforme a los items del TV.

Ya con todo lo necesario editado, podemos pasar a compilar el firmware para instalarlo por medio de una memoria USB.
Para esto, ya con los cambios realizados en la partición montada "tvconfig", procedemos a desmontarla.
Ver el archivo adjunto 292719
Ya desmontada la imagen se puede volver a tener acceso al archivo "tvconfig,img"
Que ahora contendrá todos los cambios que hayamos hecho en la imagen montada virtualmente.
En este momento podemos eliminar la copia, ya no nos sirve, y pasamos a compilar nuestro nuevo firmware.
Abrimos el programa MStarBinTool GUI y por defecto nos posicionará en la pestaña "Pack BIN"
Ver el archivo adjunto 292720
Aquí debemos seleccionar nuestro archivo modificado "tvconfig", pero solo su script XML que solo nos creará el firmware de esta partición.
Si el archivo contiene lista de particiones debemos seleccionar "Format+Download", si no la tiene, debemos seleccionar "Download only"
Y seleccionando la opción "Images" veremos que hay varias particiones en color azul, estas son las particiones no encontradas.
Claro, no desempacamos todo, solo la partición tvconfig, así que esta partición será la única que debemos seleccionar.
Ver el archivo adjunto 292721
Tras esto solo nos resta presionar el botón "Pack Firmware" (No puedo mostrar más imágenes porque el sistema no me lo permite) :(
Solo 20 archivos son permitidos. :cry:
Tras esto, el programa creará un archivo llamado "new-LDM538.bin", debemos copiarlo a una memoria USB y cambiar su nombre a "LDM538.bin"
Procedemos a hacer una actualización de firmware en el TV, pero únicamente serán modificados los datos que hayamos cambiado.
Ya que el script solo establecerá el cambio en la partición "tvconfig"

Este tema se puede extender bastante y traté de ser muy breve, sin embargo se requiere de mucho estudio en electrónica forense para poder estudiar casos concretos.
Lo expuesto está basado en los firmware MStar de nueva generación, por tal motivo, los resultados no siempre serán los mismos en otros firmware, pero al menos se explica la manera actual en cómo se pueden tratar para su posterior modificación.

Edit:
Finalmente el sistema del Foro ya no me dejó subir las utilidades, pero por suerte dejé los enlaces donde pueden ser descargadas.
Pido disculpas por este inconveniente.
Estimado, excelentes tus aportes.
T
engo una duda, yo tengo respuesta directa de algunos proveedores en China, una vez me dieron un archivo .bin que automáticamente cambiaba el logo.
P
or ejemplo, ellos venden de dos marcas, la placa es Mstar pero de diferentes marcas y yo solo metía ese archivo en el USB y se cambiaba el logo.
A
mbos archivos se llaman igual, claro, por eso debía tenerlos en diferentes carpetas.
S
olo colocaba el archivo .bin que pesaba menos de 4 MB y el TV solo se instalaba.
¿Q
ué te parece la idea de investigar este archivo pequeño?
N
o sé si te sería de ayuda este archivo, creo que se podría adaptar algo automatizado para este proceso dentro de tu misma aplicación.
 
Última edición por un moderador:
Debes adjuntar los archivos comprimidos ñcomo .zip o rar. (Hasta 10 MB por archivo)
D@rkbytes, después que realiza la copia de la emmc al usb con el comando memmcbootbin 0 boot1_2, me da resultado 'Dump Block: 15269880' . ¿Que mas debo hacer para poder restaurarla en otra main?
 
Última edición por un moderador:
¿Qué es lo que obtienes dentro de la memoria?
Porque esos comandos que muestras solo copian los BOOT 1 y 2
Pero emmcbootbin tiene parámetros:
emmcbootbin - dump emmc boot partition and write it to fat usb disk
command: emmcbootbin [usbportnum] [partitionname]

Así que depende cómo se ejecute será lo que obtendrás.
 
Esta información trata acerca del cambio de Logotipo de Inicio del TV, el tipo de Panel LCD y el Control Remoto.
Para esto es necesario tener el Firmware del televisor en cuestión. (Solo válido para televisores con Soc MStar)

Necesitamos desempacar el firmware con las utilidades que ya publiqué por aquí pero las dejo nuevamente en este post.
También necesitaremos otro programa que nos servirá para crear una unidad virtual de disco duro en el sistema.
Para este caso yo he probado dos con el mismo resultado: ImDisk Toolkit y OFSMount

Voy a tratar sobre el programa ImDisk Toolkit, ya que es el que tengo instalado pero con OFSMount es muy similar el proceso.
Para desempacar el firmware usaremos cualquiera de las utilidades anteriores, ya sea, mstar-bin-tool o MStarBinTool GUI
Recomiendo usar MSTarBinTool GUI ya que no requiere tener Phyton instalado en el sistema, aunque el resultado será el mismo si usamos mstar-bin-tool.
mstar-bin-tool se debe usar por línea de comandos, y MStarBin Tool GUI ya es una aplicación estándar para Windows.
Lo que requerimos es desempacar el firmware y obtener sus particiones.

Para esto procedemos de la siguiente forma: (MStarBinTool GUI)
Procedimiento de ejemplo con el firmware LDM538.bin para una tarjeta LDD.M538.B138 (En México para SANSUI y RCA)
Ejecutamos el programa MStarBinTool GUI y vamos a la pestaña "Unpack BIN"


Ver el archivo adjunto 292698

En donde dice "Firmware file:" seleccionamos el archivo.
Ver el archivo adjunto 292699

Ahora seleccionamos la opción "Images"
Ver el archivo adjunto 292700
Aparecerán todas las particiones seleccionadas, pero solo nos interesa una. ->"tvconfig"
Así que deseleccionamos todas, dejando marcada solo "tvconfig"
Ver el archivo adjunto 292701
Ahora ya podemos proceder con el desempacado de esta partición, presionando sobre el botón "Unpack firmware"
Ver el archivo adjunto 292705
Este proceso no debe demorar, ya que solo estamos extrayendo una partición pequeña, unos 16 Mb aproximadamente.
Si el proceso fue realizado convenientemente, el programa nos mostrará un mensaje diciendo: "Done"
Ahora debemos ir a la carpeta del programa "MStarBinTool GUI" y entrar en la carpeta "work"
Ahí debe estar creada una carpeta con el nombre del firmware, en este caso "/work/LDM538"
Debemos encontrar los siguientes archivos:

Ver el archivo adjunto 292706
El archivo que nos importa es "tvconfig.img", los otros también son importantes, pues tienen la información que requeriremos para volver a empacar el firmware.
Al archivo "tvconfig.img" le debemos hacer una copia, click derecho, arrastrar hacia la derecha o abajo y seleccionar "copiar aquí"
Ver el archivo adjunto 292707
Esto es en mi caso y quizás a varios les pase que tras montar la imagen con ImDisk, Windows no reconozca la unidad y pida formatearla.
Así que les explico lo que yo hago ante esta situación...
Ya instalado el programa "ImDisk Toolkit" u "OFSMount" debemos indicar que monte esta imagen como un nuevo disco.
Nota: Montar la imagen original, no la copia. Esta nos servirá posteriormente.
Ver el archivo adjunto 292708
Aquí viene el siguiente proceso que debemos hacer como se muestra a continuación...
Ver el archivo adjunto 292709
Después de montar la imagen, Windows no reconocerá el nuevo disco creado.
Pedirá formatear la unidad, así que indicamos que sí, pero teniendo en cuenta que debe ser formateada como FAT.
Ver el archivo adjunto 292710
Presionar sobre el botón "Formatear disco"
Ver el archivo adjunto 292711
Presionar sobre el botón "Iniciar", así tal cual se muestra en sus opciones.

Con esto ya debemos tener una unidad vacía pero con el mismo tamaño requerido y haciendo referencia al archivo "tvconfig.img"
O sea que tenemos bloqueado el acceso a este archivo porque está montado virtualmente.
Aquí es donde entra la copia que realizamos, porque la unidad creada y con referencia estará vacía.
Así que abrimos la copia con el programa 7-Zip
Ver el archivo adjunto 292712
Tras abrir esta imagen o partición, podremos ver su contenido:
Ver el archivo adjunto 292713
Ahora debemos copiar su contenido en la unidad creada, en este caso G:
Para esto, debemos seleccionar todos los archivos en el programa 7-Zip y copiarlos a la unidad creada:
Ver el archivo adjunto 292714
Tras esto, solo resta hacer un Drag & Drop hacia la unidad creada que estará vacía, para que se copien todos los archivos.
Esto nos restaura en el archivo "tvconfig.img" lo que se formateó, y ahora ya tenemos una unidad montada pero con archivos.
El logotipo en este caso será "boot0.jpg", en otros casos puede haber más, por ejemplo: boot1.jpg, boot2.jpg, boot3.jpg, etc.
Si existen más boot0, 1, 2, 3.jpg, etc, es porque el firmware es multisistema, y la selección del logotipo se especificará en el archivo "boot.ini"
Para cambiar el logotipo, debemos seleccionar una imagen del mismo formato y extensión, o sea, .jpg y con las mismas dimensiones que "boot0.jpg".
Las particiones suelen tener un poco de espacio extra, así que debemos tener esto en cuenta, porque si excedemos esto al modificar, Windows nos dará error de espacio insuficiente.
Por eso debemos tener cuidado al elegir el archivo a modificar.

Ahora pasemos a modificar el tipo de Panel LCD:
Para esto, y una vez montada la partición "tvconfig", debemos entrar a la carpeta "panel", que se encuentra dentro de la carpeta "config"
En esta carpeta podremos ver todos los tipos de Panel LCD soportados:
Ver el archivo adjunto 292716
En este caso del firmware LDM538.bin, son bastantes, de hecho no pude capturar todos, pero esto es un ejemplo.
Otros firmware tienen menos, y lo que importa es ver si algún archivo corresponde a nuestro Panel LCD.
Si existe, debemos copiar el nombre del archivo .ini.
Por ejemplo: Mi Panel LCD es un "FullHD_LG120HZ", entonces copio el nombre del archivo "FullHD_LG120HZ.ini" y prosigo con lo siguiente...
Ahora ir a la carpeta "Model", en esta carpeta debemos buscar y abrir el archivo "Customer_1.ini"
Recomiendo abrir este archivo con NotePad++, porque con el bloc de notas nos aparecerá todo de corrido y no entenderemos nada.
De hecho, todos los archivos .ini los abro con NotePad++, de otra forma solo se ve texto en secuencia que no se llega a entender.
Al menos en este formato de archivos .ini, en otro formato .ini normal de Windows va bien abrirlos con con notepad o wordpad.

Dentro del archivo "Customer_1.ini" debemos encontrar lo siguiente:

La variable para el nombre del Panel LCD se llama "m_pPanelName" y verán que hace referencia al archivo "Default_Panel.ini"
Este archivo está en la carpeta "/config/panel"
Así que este es el nombre que debemos cambiar para establecer el tipo de nuestro Panel LCD.
Si no está dentro de la lista de archivos de la carpeta "panel" lo podemos agregar, pero teniendo en cuenta que el archivo agregado sea del mismo formato.
Para esto, lo podemos obtener de otro firmware, por eso es que he publicado en este Foro las herramientas para poder desempacar firmware.
Ya que con esto podemos obtener la información de los archivos que necesitemos para poder modificar un firmware.
Finalmente, solo nos resta modificar la variable: "m_pPanelName" con el tipo de Panel LCD requerido, supongamos...
m_pPanelName = "/config/panel/FullHD_LG120HZ.ini;
Y ya con esto el sistema debe establecer el tipo de Panel LCD debe usar.

Ahora pasemos al tipo de Control Remoto:
Este caso ya es muy especial y se requiere tener los archivos "Customer Custom Files"
Estos archivos hacen referencia al mapeo de teclas sobré los items del TV y el tipo de sistema IR, que son varios.
Existen páginas como Kazmi Elecom que nos ofrecen estos archivos gratis y son los que podemos usar.
Caso contrario, debemos extraer estos datos de otro firmware compatible.
Tal vez no encontremos un IR CCF para nuestro TV que se quedó Pegado en el Logo, y con otro firmware lo podemos hacer funcionar.
Por lo menos podemos cambiar el Logotipo, el tipo de Panel LCD y usar un IR CCF de otra marca, por ejemplo SAMSUNG, SONY, LG, etc.
Que son controles remotos muy comunes.

Los archivos a modificar son los siguientes:
Ver el archivo adjunto 292717
En otros sistemas:
Ver el archivo adjunto 292718
Lo importante es que el nombre de los archivos sean iguales y que su formato sea el mismo.
El archivo PM.bin suele ser siempre el que contiene los datos del protocolo IR, ya sea IRC, NEC, etc.
Los demás son configuraciones sobre como actuar ante cada tecla pulsada conforme a los items del TV.

Ya con todo lo necesario editado, podemos pasar a compilar el firmware para instalarlo por medio de una memoria USB.
Para esto, ya con los cambios realizados en la partición montada "tvconfig", procedemos a desmontarla.
Ver el archivo adjunto 292719
Ya desmontada la imagen se puede volver a tener acceso al archivo "tvconfig,img"
Que ahora contendrá todos los cambios que hayamos hecho en la imagen montada virtualmente.
En este momento podemos eliminar la copia, ya no nos sirve, y pasamos a compilar nuestro nuevo firmware.
Abrimos el programa MStarBinTool GUI y por defecto nos posicionará en la pestaña "Pack BIN"
Ver el archivo adjunto 292720
Aquí debemos seleccionar nuestro archivo modificado "tvconfig", pero solo su script XML que solo nos creará el firmware de esta partición.
Si el archivo contiene lista de particiones debemos seleccionar "Format+Download", si no la tiene, debemos seleccionar "Download only"
Y seleccionando la opción "Images" veremos que hay varias particiones en color azul, estas son las particiones no encontradas.
Claro, no desempacamos todo, solo la partición tvconfig, así que esta partición será la única que debemos seleccionar.
Ver el archivo adjunto 292721
Tras esto solo nos resta presionar el botón "Pack Firmware" (No puedo mostrar más imágenes porque el sistema no me lo permite) :(
Solo 20 archivos son permitidos. :cry:
Tras esto, el programa creará un archivo llamado "new-LDM538.bin", debemos copiarlo a una memoria USB y cambiar su nombre a "LDM538.bin"
Procedemos a hacer una actualización de firmware en el TV, pero únicamente serán modificados los datos que hayamos cambiado.
Ya que el script solo establecerá el cambio en la partición "tvconfig"

Este tema se puede extender bastante y traté de ser muy breve, sin embargo se requiere de mucho estudio en electrónica forense para poder estudiar casos concretos.
Lo expuesto está basado en los firmware MStar de nueva generación, por tal motivo, los resultados no siempre serán los mismos en otros firmware, pero al menos se explica la manera actual en cómo se pueden tratar para su posterior modificación.

Edit:
Finalmente el sistema del Foro ya no me dejó subir las utilidades, pero por suerte dejé los enlaces donde pueden ser descargadas.
Pido disculpas por este inconveniente.
Hola, puedes hablarme del firmware en formato PKG, es posible cambiar el tipo de panel?
main msd66830-zc01-01
 
Buenas tardes D@rkbytes.
T
engo un código el cual estoy realizando un programa para consola, algo sencillo, quería ver si por aquí u otra vía que usted considere y no sea una falta de respeto o infrinja las leyes de este post Foro, yo podría adjuntar el código a ver si podrías ayudarme con una solución, llevo semanas sin poder lograrlo.
E
sta echo con solo VBA si no es una falta de respeto se lo podría enviar a usted para ver si podría ayudarme?
 
Última edición por un moderador:
Si el código tiene algo que ver con el tema, lo puedes subir sin problema.
Yo no sé mucho sobre VBA, pero he visto algo, con VB no hay problema.
Posiblemente algún miembro del Foro sepa más de VBA y te pueda colaborar mejor.
 
Atrás
Arriba