miércoles, 11 de agosto de 2010

Restaurando un GPS chino con software libre

Hace un tiempo me llegó un GPS "chino" (Viutech, hay otras marcas porque son genéricos, internamente vienen con WindowsCE).
Traen un software de navegación LogicGear o Igo8 (no Garmin) y una aplicación multimedia para reproducir musica, video y documentos.

Todo bien, lastima que es bastante frágil, y cada tanto la memoria flash interna (1GB) se corrompe (dañandose los archivos y no pudiendo entrar), por lo que el software de navegación deja de funcionar.


A tal punto se daño que aparecían archivos y directorios estraños, del tipo "ñ}çávèv" que ni siquiera se podían borrar con el explorador desde la PC, ocupando todo el disco sin dejar espacio disponible.

La única solución que encontré fue formatear la memoria interna (ADVERTENCIA: esto puede incapacitar permanentemente el aparato, usar con mucho cuidado bajo su propia responsabilidad)

La buena noticia es que hay herramientas avanzadas de software libre para poder manipular estos dispostivos de "bolsillo": synce y compañía (y en Ubuntu están muy bien soportados).

Para ello hay que agregar como orígen de Software http://ppa.launchpad.net/synce/ubuntu y descargar los siguientes paquetes:
  •  synce-hal
  •  synce-gvfs y gnome-vfs (para explorar los archivos)
  •  synce-trayicon (para poder montar facilmente el dispositivo)

Luego, por línea de comando, una vez conectado el aparato, ejecutar la herramienta para correr programas (en este caso, el explorador) :

synce-prun explorer

Con esto se abrirá el explorador en el aparato, donde podemos ir al "Panel de Control", "Storage Mananger", y ahí desmontar y/o formatear la partición (PELIGRO: seguramente tiene varias particiones y dispositivos, un error en este punto puede incapacitar permanentemente el aparato, usar con mucho cuidado bajo su propia responsabilidad)

Una vez formateada, al reiniciar el aparato se debería reestablecer la memoria interna sin datos, y en ese caso es posible volver a restaurar los archivos originales.  Para ello se puede usar synce-pcp o el navegador visual Nautilus (desde el SynCe Tray Icon, click derecho, WinCe, Explore with Filemanager)

viernes, 6 de agosto de 2010

PySimpleSOAP e integración con web2py

PySimpleSoap es una librería que desarrollamos inicialmente para comunicarse con los servicios web SOAP de Factura Electrónica de AFIP, a la que luego hice varias mejoras generales (desprendiéndola del proyecto original PyAfipWs), incluyendo:
  • Un despachador para construir servidores (similar a xmlrpclib)
  • Soporte para WSDL: instrospección y generación dinámica
  • Serialización y desserialización automática, con una representación de datos simple basada en diccionarios Python
  • Interoperabilidad con .NET, Java Axis y JBoss WS, probado con SoapUi y .Net Web Services Studio, cumpliendo con los estándares WS-I
  • Capacidad de realizar pedidos y respuestas crudas -sin procesar- (útiles para tipos de datos genéricos xsd:anyType u operaciones avanzadas)
  • Documentación WIKI, incluyendo ejemplos WSDL, pruebas básicas de compatibilidad y rendimiento
  • Limpieza y estabilización de la API (incluyendo mejoras a SimpleXMLElement, una forma fácil y rápida orientada a objetos de manipular XML)
A diferencia de otras soluciones, nuestro acercamiento es simple e intuitivo, no requiere complicadas definiciones XML o código autogenerado, flexibilizando el desarrollo rápido de webservices con el dinamismo de Python.

Desde la reciente versión 1.82.1, la integramos con web2py, lo que lo convierte en una plataforma con soporte completo para exponer y consumir servicios web, complementando la infraestructura previa de json y xml_rpc, con un enfoque simple similar.

Esta disponible un servicio online para pruebas, con una página que contiene la descripción y mensajes de ejemplo:
Los comentarios son bienvenidos, sobre todo reportes o casos de prueba, ejemplos, colaboración con otras librarías para mejorar la interoperabilidad, etc.

Licencia y Aviso Legal

CC BY-SACopyright (C) 2009 - 2013 Mariano Reingart reingart@gmail.com - Visite el sitio http://reingart.blogspot.com/ para novedades. Salvo indicación contraria, el texto de esta página está disponible bajo la Licencia Creative Commons Atribución Compartir Igual 3.0 Unported; podrían ser aplicables cláusulas adicionales.

Se solicita mantener el aviso de copyright (enlazando al texto original), compartir las obras derivadas bajo la misma licencia, y si es, posible comunicando al autor cualquier mejora. No utilizar logotipos ni marcas sin la debida autorización de sus titulares.

Toda información es proporcionada a Titulo Informativo y se entrega como está, sin garantías explícitas ni implicitas de ningún tipo, incluyendo sin limitación, pérdida de ganancias, interrupción de negocios, pérdida de programas u otros datos en sistemas de computación o cualquier otro reclamo. Al usarla acepta hacerlo bajo su propia responsabilidad, conociendo la normativa y reglamentaciones existentes. En caso de controversias respecto del presente, usted acepta presentarlas y resolverlas exclusivamente en la jurisdicción de los Tribunales Ordinarios Civiles y Comerciales del Departamento Judicial de Morón, Provincia de Buenos Aires, Argentina, renunciando expresamente a cualquier otro fuero que pudiere corresponder.