lunes, 10 de diciembre de 2007

Como resucitar una Zaurus SL-C1000

Existe información oficial sobre como reflashear una Zaurus, pero no se si sera por el modelo en concreto, ninguna de las combinaciones de teclas que he leido en estas webs me permitian entrar en el menu de servicio de este aparato, asi como la documentacion parece ser ambigua.
Despues de haber rescatado con exito esta PDA, os resumo el proceso por si alguien tiene el mismo problema.

  • Pagina oficial por la que se distribuyen el soft de determinados modelos de PDA de SHARP:
http://www.trisoft.de/c1000howto.htm

  • Bajaros de esa pagina la imagen de la BIOS "C1000NAND240305.zip", descomprimis el unico archivo que contiene "SYSTC100.DBK" en una tarjeta SD o CF (previamente formateada en FAT16) e insertais la tarjeta en la Zaurus.
  • Dadle la vuelta, y quitad la tapa de la bateria, para dejar al descubierto un pequeño pulsador que es el reset del sistema.
  • dejadle puestas la bateria y el cargador.
  • Ahora hay que mantener pulsadas a la vez las teclas Fn + D + P, y sin soltarlas hay que pulsar el boton de reset (os podeis ayudar del lapiz tactil por ejemplo).
  • Voilá, ya estamos en el menu de servicio, ahora seleccionais por orden:
    • DIAG MENU 3/3
    • EXTRA MENU
    • BACKUP RESTORE MENU
    • NAND Flash Restore
Ahora, él solo detectara la tarjeta que hayais introducido y buscara el archivo "SYSTC100.DBK" y os pedira confirmacion para comenzar el proceso de restauración, pulsais OK 2 veces y a esperar que la barra de progreso de color verde termine, (tarda aproximadamente 8 minutos).
  • Cuando termine, simplemente respondera OK, le dais a la tecla CANCEL varias veces para ir al raiz del menu, y aseguraos que abajo, donde vienen algunos campos de información, donde pone BootFlg, este en blanco "BootFlg:---", de lo contrario, os arrancara siempre en modo diagnostico.
  • Si esta en modo diagnostico "BootFlg:DIAG", podreis desactivarlo seleccionando en el menu:
    • DIAG MENU 3/3
    • Clear Diag Flag
  • O bien (no se porque, las entradas del menu cambian ligeramente ¿?):
    • DIAG MENU 3/3
    • EXTRA MENU
    • Clear Diag Flag
  • Por ultimo, sin poner la tapa de la bateria, dejad el interruptor de al lado de la tapa hacia la derecha y pulsad reset. Ahora podremos ver como la luz naranja de carga se enciende, indicando que funciona la carga de la bateria.
  • pulsad el boton On/Off y comenzara a iniciarse el sistema :)

Curiosidad:
Parece que el menu de diagnostico no esta en la memoria flash, supongo que esta en el microprocesador, que tendra una pequeña flash integrada para el bootloader, por eso aunque se flashee mal o incluso si se borra completamente la NAND flash, siempre se podra acceder al menu de servicio.

Otra informacion:
Antes de conseguir flashear esta Zaurus, me asegure que el hardware estaba bien y puesto que no me funcionaban las combinaciones de teclas para el menu que lei por otras webs, estaba ya dispuesto a utilizar un metodo de depuracion hardware para, con la ayuda de un pc y un pequeño circuito jtag por puerto paralelo, depurar el sistema, con esto pretendia flashear la BIOS de alguna manera.
Finalmente como habeis leido, no ha sido necesario, pero os dejo algo de informacion sobre esas herramientas, por si es de utilidad para alguna Zaurus que le haya pasado un camión por encima o algo asi, al menos son un punto de partida.

  • jtag pinout:
http://www.zaurus.ru/board/viewtopic.php?t=150948&start=0&postdays=0&postorder=asc&highlight=

  • software de depuracion mediante JTAG (gratis):
http://www.macraigor.com/ocd_cmd.htm

  • esquema del programador JTAG (Wiggler):
http://wiki.openwrt.org/OpenWrtDocs/Customizing/Hardware/JTAG_Cable

Solo me queda añadir que el procesador de esta Zaurus es un Intel Xscale PXA270, que si es soportado en el software gratuito de Macraigor.
La NAND Flash es la k9f1g08x0a de SAMSUNG, cuyo datasheet podeis leer en:

http://vast.uccs.edu/personal/qli_files/ds_k9f1g08x0a_rev10.pdf