Creando Firmware Customizado

Página 1 de 2. 1, 2  Siguiente

Ir abajo

Creando Firmware Customizado

Mensaje  vic1972 el Sáb Ene 16, 2010 12:24 pm

Hola:
Pongo a continuación una pequeña guía que he utilizado para crear un firmware ligeramente modificado.

Los siguientes pasos en la investigación serán firmwares modificados con todos los addons disponibles hasta el momento.

Como siempre: No nos hacemos responsables de posibles daños en los equipos.

Importante: Se requiere un ordenador con Sistema Operativo basado en Linux.

1. Descomprimir el archivo principal.img (cualquiera de los firmwares originales LG, mejor el último)
Este .img es en realidad un .tar, descomprimir de la siguiente manera,


Código:
[victor@diablo firmware]$ tar -xvf install.img
y se obtienen los siguientes archivos:
IMAGE_SWUG_BAR_1.bmp
IMAGE_SWUG_BAR_2.bmp
IMAGE_SWUG_BAR_3.bmp
IMAGE_SWUG_BAR_4.bmp
IMAGE_SWUG_BG.bmp
arial.ttf
configuration.xml
flash_erase
install_a
mkfs.jffs2
nandwrite
package1/
package1/bluecore.video.lzma
package1/usr.local.etc.tar.bz2
package1/bluecore.audio.lzma
package1/squashfs1.img
package1/vmlinux.develop.avhdd.libra.ms400.bin.lzma
video_firmware.install.bin


Vemos que tiene 12 archivos en raiz y una carpeta, y 5 archivos en carpeta package1.


2. El sistema de archivos principal está en package1/squashfs1.img
se descomprime con las herramients squashfs, para instalar estas tools en nuestro ordenador linux:
Código:
yum install squashfs-tools

Hemos descubierto que necesitamos una version de squashfs-tools inferior a 3.1.

Ejecutar lo siguiente
Código:
cd package1
unsquashfs squashfs1.img
y saldrá:
-d[est] <pathname> unsquash to <pathname>, default "squashfs-root"
Parallel unsquashfs: Using 2 processors
1123 inodes (1574 blocks) to write

[=============================================================-] 1574/1574 100%
created 873 files
created 84 directories
created 250 symlinks
created 0 devices
created 0 fifos


Se crea el sistema de archivos dentro de la carpeta: squashfs-root

3.
Código:
cd squashfs-root
Probamos a modificar algo del sistema de archivos, /tmp_orig/www/ejemplo index.html,

4. Vamos primero a hacer copia seguridad el squashfs1.img original, copiándola por ejemplo a nuestro home
Código:
 mv squashfs1.img  /home/victor/squashfs1.img


5.Vamos a Crear de nuevo el filesystem con mksquashfs:

Estando en el nivel donde aparece la carpeta squashfs-root, sin entrar en
ese subdirectorio, ejecutamos mksquashfs, ver la instrucción más abajo:
Código:
[victor@asus Victor]$ ls
squashfs-root
[victor@asus Victor]$ /sbin/mksquashfs squashfs-root/ squashfs1.img

(Tarda un minuto aprox.)


Se genera el nuevo filesystem en el archivo: squashfs1.img

6. Borramos la basurilla, es decir, borramos la carpeta descomprimida squashfs-root, haciendo:
Código:
[victor@victor package1]$ rm -R squashfs-root/

Código:
[color=darkblue][b]7.[/b][/color]Tenemos que borrar la imagen original:
    mv install.img /home/victor/install.img_original

8. Ahora tenemos que volver a empaquetar todo en un nuevo .tar :

Código:
tar cvf ../MS400_091209_0118.img IMAGE_SWUG_BAR_1.bmp IMAGE_SWUG_BAR_2.bmp IMAGE_SWUG_BAR_3.bmp IMAGE_SWUG_BAR_4.bmp IMAGE_SWUG_BG.bmp arial.ttf configuration.xml flash_erase install_a mkfs.jffs2 nandwrite package1/ ./video_firmware.install.bin

9. Este nuevo archivo MS400_091209_0118.img lo copiamos en la llave USB y listo.
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  maquinabaja el Sáb Ene 16, 2010 1:04 pm

Gracias por la info.

Pero para personas neófitas en el tema como yo espero que compartas algun custom-firmware algún día, porque no me veo capaz de meterme en esos berenjenales.

Si no lo haces no problem, entiendo que es una cosa delicada.

Saludos.
avatar
maquinabaja

Mensajes : 150
Fecha de inscripción : 03/01/2010
Localización : Barcelona

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Sáb Ene 16, 2010 1:07 pm

Ya ves Smile
si claro, la idea es ir compartiendo poco a poco, para ver si alguien mas se va animando y se pone a investigar mas gente.

venga saludos, que esto cada vez se pone mas interesante. Smile
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  Seb@stien el Sáb Ene 16, 2010 5:29 pm

Good Job Victor !!!

One Question : No params required by software when you make squash file ?

Do you test to add (for example) samba + add autostart in rcS ? it works ?

We can imagine add my futur web interface to a custom firmware (with samba,ftp,media server,etc...) no ? Very Happy

Thanks again Wink

Seb@stien

Seb@stien

Mensajes : 93
Fecha de inscripción : 15/12/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Sáb Ene 16, 2010 6:03 pm

Hola Sebastian,

no params used when makin squash fs,
exactly as it is in tutorial.

In first test, i just put my home page in the web server of LG.
Now that we know it is possible, and that no checksum checking is activated,
we can play now with more complex scenarios,
adding samba and other addons; and of course your php project Smile
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  Seb@stien el Sáb Ene 16, 2010 6:20 pm

Perfect Wink

Give me some informations if you test other stuff Wink

Seb@stien

Seb@stien

Mensajes : 93
Fecha de inscripción : 15/12/2009

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  alonso_c el Sáb Mar 13, 2010 1:24 pm

Una pregunta, ¿se puede entonces sustituir el archivo binario squashfs-root/bin/busybox por una versión más actual?

Es que he visto en otro post que había una versión más nueva del busybox que incorpora más comandos unix.

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Sáb Mar 13, 2010 3:05 pm

ahiii las dao Wink
esa es una de las pruebas que tengo pendiente, en la serie: "Pruebas de fuego Wink

Deberia funcionar, pero no estoy muy seguro que pasara con las distintas dependencias de las librerias.
Lo pruebo y salimos de dudas Smile
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  alonso_c el Sáb Mar 13, 2010 4:10 pm

Es posible que funcione, lo que veo es que luego habría que completar los enlaces simbólicos restantes de los comandos nuevos que incorpore la nueva versión del busybox. Lo mismo hay algún instalador que cree esos enlaces. Debería de ser lo suyo.

De todas formas, antes tenía un Siemens M740 y tenía una opción de cargar el firmware a través de TFTP. Lo digo porque si se "mete mano" a este firmware y luego la cagas no hay forma de cargar de nuevo el firmware, ¿no?

Lo que veo también es que trae una versión de linux, la 2.6.12 un poco antigua ya... Ya se está por la 2.6.34...

En el sistema de ficheros squashfs-root veo el directorio squashfs-root/usr/local/firmware que me hace preguntarme si será el sitio donde se pone la imagen MS400_091209_0118.img del firmware cuando lo copia del usb para luego cuando se reinicie el aparato empezar a cargar esa imagen del firmware.

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Creación de alias

Mensaje  alonso_c el Sáb Mar 13, 2010 4:36 pm

Pues si queréis tener alias creados para vuestros comandos favoritos, tan sólo editar el fichero /usr/local/etc/profile y pornerlos al final:

....
unset pathmunge
export TZ=CST+0:00:00


alias open="eject /dev/cdroms/cdrom0"
alias close="eject -t /dev/cdroms/cdrom0"

alias dir="ls -la"
alias "cd.."="cd .."


ulimit -c unlimited

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Conexión de teclado, ratón, etc.

Mensaje  alonso_c el Sáb Mar 13, 2010 4:43 pm

Me da la impresión que para poner conectar un teclado, ratón, etc. hay que actualizar el kernel que tiene, porque viendo el directorio de drivers se echan en falta algunos directorios como el keyboard, mouse, etc.

/lib/modules/2.6.12.6-VENUS/kernel/drivers # dir
drwxr-xr-x 5 root root 37 Nov 18 08:45 .
drwxr-xr-x 6 root root 50 Nov 18 08:45 ..
drwxr-xr-x 3 root root 25 Nov 18 08:45 net
drwxr-xr-x 2 root root 43 Nov 18 08:47 scsi
drwxr-xr-x 4 root root 29 Nov 18 08:45 usb

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Las passwords de las redes locales se almacenan sin encriptar...

Mensaje  alonso_c el Sáb Mar 13, 2010 5:44 pm

cat /usr/local/etc/dvdplayer/NetworkBrowser.ini

[MAIN]
num=1
[0]
label='<Etiqueta>'
id='<Identificador>'
pw='<Contraseña>'
domain='<Dominio>'
hostname='<Nombre del Host>'
ip1=<Primer Octeto>
ip2=<Segundo Octeto>
ip3=<Tercer Octeto>
ip4=<Cuarto Octeto>

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Información sobre la CPU Realtek Venus MIPS 24K V7.8 y el kernel MIPS

Mensaje  alonso_c el Sáb Mar 13, 2010 9:34 pm


alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  ArquitectoAcero el Sáb Mar 13, 2010 11:42 pm

alonso_c escribió:http://www.mips.com/products/processors/hard-ip-cores/24kec-hard-ip-core/

http://www.linux-mips.org/wiki/Main_Page

Kernel 2.6.12 original con parches: http://www.linux-mips.org/pub/linux/mips/kernel/v2.6/

Una página muy interesante de personalización del firmware (es de otro reproductor, pero tiene la misma CPU): http://rtd1261.wikidot.com/tweaking-the-official-firmware

Muy interesantes los links, pero ¿donde has leido que el RTD1261 es el mismo chip que el del LG? He buscado y buscado información al respecto y no encuentro mucha info del RTD1183 del LG.

Saludos,

ArquitectoAcero

Mensajes : 125
Fecha de inscripción : 25/01/2010

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  alonso_c el Dom Mar 14, 2010 12:47 pm

ArquitectoAcero escribió:Muy interesantes los links, pero ¿donde has leido que el RTD1261 es el mismo chip que el del LG? He buscado y buscado información al respecto y no encuentro mucha info del RTD1183 del LG.

Saludos,
Es cierto que no son los mismos chips. Me quería referir a que tenían el mismo kernel.

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  alonso_c el Lun Mar 15, 2010 10:31 am

vic1972 escribió:Hola:
Pongo a continuación una pequeña guía que he utilizado para crear un firmware ligeramente modificado.

Los siguientes pasos en la investigación serán firmwares modificados con todos los addons disponibles hasta el momento.

...

He probado y al crear la nueva imagen no la detecta el MS450H. Creo que hay que depurar más los parámetros en la creación del nuevo sistema de ficheros squash. Hay que indicarle que los usuarios de los ficheros sean 'root', el tamaño del bloque de 64K (por defecto pone otro tamaño) y supongo que más cosas, porque con lo que indicas no funciona.

mksquashfs squashfs-root/ squashfs1.img -all-root -b 65536

No sé si tendrá que ver que la versión de squashfs que utilizo es la 4.0 y la que viene por defecto en la imagen original es la 3.0

alonso_c

Mensajes : 72
Fecha de inscripción : 11/03/2010

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Lun Mar 15, 2010 11:19 am

Hola,
lo primero darte la bienvenida hombre Smile
Espero que puedas solucionar los problemas que tengas con el LG, y te quedes con nosotros Smile

Si, el problema es la version del squashfs-tools. yo tenia la 4 en mi equipo, y me tuve que hacer un downgrade
y ya funcionó a la primera Smile

Suerte!!!! Smile
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  Itmares el Jue Abr 01, 2010 4:01 pm

vic1972 escribió:Hola:
Importante: Se requiere un ordenador con Sistema Operativo basado en Linux.

Hola,

Soy un novatillo que le pica la curiosidad de empezar a trastear y querría preguntar si hay una necesidad real de SO Linux que no pueda ser compensada con Cygwin+Win32 (la diferenciación entre mayúsculas y minúsculas es lo primero que me viene a la cabeza)

Gracias.

Itmares

Mensajes : 4
Fecha de inscripción : 01/04/2010
Edad : 43
Localización : Madrid

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Jue Abr 01, 2010 4:12 pm

Hola Smile
Bienvenido!!!
Si, es cierto, quizas no sea necesario tener linux en tu equipo principal.
Basicamente necesitas poder comprimir / descomprimir .tar

y tambien comprimir / descomprimir squashfs, para esto necesitas las squasfs tools.
En mi equipo linux las instale del tiron con yum install squashfs-tools.

Puede ser que estas tools esten disponibles para el sistema que tu mencionas.
suerte, y si descubres algo interesante pues nos lo comunicas... Smile
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  Itmares el Jue Abr 01, 2010 6:39 pm

vic1972 escribió:Hola Smile
Puede ser que estas tools esten disponibles para el sistema que tu mencionas.
suerte, y si descubres algo interesante pues nos lo comunicas... Smile

Ok, por si sirve de algo:

1) Cygwin es un entorno unix para Windows (http://www.cygwin.com/)
2) He encontrado el SquashFS sobre Cygwin (http://comsul.blogspot.com/2008/12/squashfs-on-cygwin.html)
3) He descomprimido el squashfs1.img de la revisión C del firmware original con el mismo resultado que el ejemplo tuyo
Código:

$ uname -a
CYGWIN_NT-5.1 xxx 1.7.2(0.225/5/3) 2010-03-24 21:12 i686 Cygwin

$ ../../squashfs3.4/squashfs-tools/unsquashfs squashfs1.img
Parallel unsquashfs: Using 2 processors
1123 inodes (1574 blocks) to write

[========================================================================================================================================================================================/] 1574/1574 100%
created 873 files
created 84 directories
created 250 symlinks
created 0 devices
created 0 fifos

He utilizado la versión 3.4 (que no es inferior a la 3.1) y no sé si al montar el fs de nuevo funcionará... Neutral

Itmares

Mensajes : 4
Fecha de inscripción : 01/04/2010
Edad : 43
Localización : Madrid

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Jue Abr 01, 2010 7:34 pm

MUY BIEN Smile
Ya solo falta probarlo,
ya se que 3.4 es version mejorada de 3.1.
En mi equipo venia por defecto 3.4, pero no me funciono, tuve que hacer un downgrade a 3.1, y asi funciono,
quizas a ti en el sistema cygwin funcione.
Lo suyo seria probarlo, asi dispondriamos de 2 sistemas validos para crear nuevos firmwares.
Prueba a generar de nuevo el sistema de archivos squasfs, y probarmos a generar un firmware generado con tu sistema,
si no lo quieres probar tu, lo generas, me lo pasas y lo pruebo yo.

saludos
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Vie Abr 02, 2010 1:00 am

Gracias por el MP con la información,
te respondí con otro,
vamos a probarlo y ya postearemos en el foro el resultado Smile
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Sáb Abr 03, 2010 7:06 pm

alonso_c escribió:cat /usr/local/etc/dvdplayer/NetworkBrowser.ini

[MAIN]
num=1
[0]
label='<Etiqueta>'
id='<Identificador>'
pw='<Contraseña>'
domain='<Dominio>'
hostname='<Nombre del Host>'
ip1=<Primer Octeto>
ip2=<Segundo Octeto>
ip3=<Tercer Octeto>
ip4=<Cuarto Octeto>



Hola,
estoy revisando un poco todos los posts.


Ese archivo que comentas yo no lo tengo, lo tiene algun en su equipo?...
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  vic1972 el Sáb Abr 03, 2010 8:08 pm

Hola,
hay varias personas que estan haciendo distintas pruebas con el firmware.
Por ahora me estan contactando via MP, les animo que usen el foro, ya que si la información se comparte, y las mismas preguntan
se ven respondidas.

Bueno, para estas personas, les voy a facilitar un poco la vida.
Resulta que despues de instalar un nuevo firmware, perdemos los settings, los canales, etc, y se pierde algo de tiempo en buscar o copiar los canales, la ip, etc, etc.

Me he creado un firmware que recuerda los canales tdt y settings.

Consiste en copiar basicamente los archivos que tengais acuales: dtv_channel.txt y setup.real
al fichero:
package1/usr.local.etc.tar.bz2

Esos 2 archivos en el lg residen en /usr/local/etc/dvdplayer



Algo curioso, despues de iniciar, despues del OK en display, cuando arranca el LG, ya va directamente al menu normal del LG,
y no al menu de settings init.

Curioso 2, es que al pincchar en TDT, dice que no hay señal, parace que no pilla bien el archivos de canales, pero basta con pulsar ok,
te sale la lista de canales, seleccionas cualquier canal, ok, y ya sale bien la tele, y ya nunca mas te da el mensaje de "no signal" Wink
avatar
vic1972

Mensajes : 2260
Fecha de inscripción : 09/12/2009
Edad : 45
Localización : Malaga

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  ev@ngel el Dom Abr 04, 2010 4:46 pm

vic1972 escribió:
Hola,
estoy revisando un poco todos los posts.

Ese archivo que comentas yo no lo tengo, lo tiene algun en su equipo?...

Pues el fichero /usr/local/etc/dvdplayer/NetworkBrowser.ini yo sí lo tengo e imagino que es "el acceso directo" (configuración guardada) para poder acceder a mi PC, a mis recursos compartidos sin tener que rellenarlos cada vez que quieres acceder a ellos.

El usuario y la contraseña aparecen sin cifrar, a lo bruto, así que cuidadín con este fichero.

Salu2!!!
avatar
ev@ngel

Mensajes : 260
Fecha de inscripción : 20/12/2009
Edad : 43
Localización : Valladolid

Ver perfil de usuario

Volver arriba Ir abajo

Re: Creando Firmware Customizado

Mensaje  Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Página 1 de 2. 1, 2  Siguiente

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.