marzo 31, 2009 10:49 P.M.

Dando soporte a Ubuntu para comunicarse por USB (NXT) / TorreUSB IR (RIS 2.0), Mindstorm Lego


Imagen del Dia
Retomando los proyectos sobre robótica, usando el Mindstorm de Lego (Sitio Oficial ), se necesita una manera para poder comunicarse con los bloques desde la PC, y en mi caso dede Linux.

En mi máquina (La TX1000, que está enferma aún :(), se podia conectarse por bluetooth, en esta nueva no dispongo de un bluetooth, por lo que no queda otra que hacerlo cableado, por USB para el NXT, la nueva versión del RIS y mediante la torre usb por IR ( Infrarojo ) en el RIS 2.0.

Me he basado en un procedimiento hecho por Trevor Creech, pero he hecho algunas modificaciones :), vamos a configurar nuestra torre para poder comunicarnos con el bloque.

Configurando la Torre de Comunicaciones IR en Ubuntu





Nota: Asumiremos realizar el trabajo siendo root en tu sistema.


0. Este procedimiento, lo he realizado en Ubuntu 8.10.

1. Conecta a tu maquina la torre a un USB libre.

2. mkdir /dev/usb ( Nota: En mi caso no necesite crear el directorio, ya existia :) ).
3. ln -s /dev/usb/legousbtower0 /dev/usb/lego0 (Nota: en mi caso tuve que eliminar /dev/usb/usb0, ya que existia y era un directorio.)

4. chmod 666 /dev/usb/lego0.

5. echo test > /dev/usb/lego0 ( Nota: observa la luz verde que parpadea en la Torre IR, si es así, todo esta correcto. :).

6. Descarga la última version de los fuentes de NQC, desde el sitio oficial. (Nota: En mi caso, descarge la Version NQC 3.1r6 ).

7. Lo descargas en un directorio de tu preferencia, para rapida referencia, en mi caso /home/coolsnow/Documentos/lego/nqc, y lo descomprimo dentro. (tar -xvzf nqc-*).

8. Edito el archivo Makefile:

8.1 Elimino el soporte de USB para la torre, busco la linea siguiente,

USBOBJ = rcxlib/RCX_USBTowerPipe_linux.o

8.2 Dado que la torre es USB, cambiaré el puerto por defecto, para que apunte al USB :D, buscando la variable DEFAULT_SERIAL_NAME y asignarle el usb, así:
DEFAULT_SERIAL_NAME = "/dev/usb/lego0" ( Nota: es el puerto que acabamos de configurar :) ).

9. mkdir rcxlib/LegoUSB/

10. cd rcxlib/LegoUSB/

11. wget http://legousb.cvs.sourceforge.net/*checkout*/legousb/LegoUSB/drivers/linux/include/legousbtower.h

12 cd ../../ (estamos en la carpeta de nqc :D )

13. make

14. make install

15. export RCX_PORT=usb ( Nota: lo puedes agregar en tu .bashrc, para que no tengas que exporta cada vez que lo necesites. )


16. intenta haciendo esta prueba: nqc -msg 7 (enviar un mensaje por el puerto IR :D ), revisa las luces verdes, en donde esta recibiendo los datos. :)

17. Si lo del punto anterior te funciona, entonces ya pudes usar el NQC en tu bloque :D y tu maquina. Ahora solo hay que instalar el firmware del RIS en el bloque, inserta el CD del Robotic Invention System, y ejecuta el siguiente comando: nqc -firmware /media/cdrom/firm/firm0309.lgo

18. Descarga ahora tus programas, ejemplo el slot 1, nqc -d programa.nqc.

Si todo ha salido correctamente, ya tienes lo necesario para programar en NQC, para darle vida a tu bloque.

Configurando la Comunicacion por cable USB con el NXT





Ahora vamos a configurar lo necesario para poder hablarle al NXT, el bloque dispone de coneccion Bluetooth, pero en mi máquina actual no dispongo de dicha maravilla, por lo que lo haremos mediante el cable suminstrado por el kit. Un cable USB.

EL NTX, podes ver sus caractéristicas desde su sitio principal
, lo que haremos es usar un software para poder comunicarnos con el bloque, veamos:

Buscando en el tio Google, damos con esta completa guia de como poder programar el Lego Mindstorm NXT desde GNU/Linux, Ubuntu en mi caso.

Descargamos el programa t2nm de Pascal Raymond, y lo instalamos:

#tar -xvzf t2n-0.2.tgz

#mv mv t2n-0.2/t2n /usr/bin/

#mv t2n-0.2/udev/70-lego.rules /etc/udev/rules.d/

Ahora conectamos el bloque a la computadora desde el USB, esperamos que en la pantalla lcd aparezca la palabra USB.

Al estar conectada la unidad, podemos revisar el equipo usb conectado, usando lsusb:

#lsusb
...
Bus 001 Device 005: ID 0694:0002 Lego Group


Para obtener datos del bloque podemos ejecutar:

coolsnow@nabuconosor:~/Documentos/lego$ t2n -i
#### NXT INFOS ###############
protocol version=1.124 firmware version=1.1
NXT Name: NXT1
Blutooth address: xx:xx:xx:xx:xx:xx ( por seguridad, no compartire mi mac address del bluetooth del bloque :D
Blutooth signal: 0 (esta apagado el bluetooth :D )
Free user flash: 54576


Esto nos indica que nos estamos comunicando con el bloque desde Linux :D. Si desearamos enviar algun programa al bloque, hariamos:

# t2n -put programa1.rxe

Para ejecutarlosólo debemos navegar por la pantalla de nuestro NXT para ejecutar nuestro programa, que estará en My Files -> Software files -> programa1

La ayuda de la aplicación para más detalles:

coolsnow@nabuconosor:~/Documentos/lego$ t2n -help
t2n version 0.2
usage: t2n [options] | t2n -help
recognized options:
-b : check battery level
-i : print nxt info
-ls : list files
-put : upload file
-get : download file
-v : set verbose mode
-vv : even more verbose
-vvv : gossip
-help : print help and return
-version : print version and return

Como revisión general, vemos los dispositivos USB conectados en nuestro equipo:


#lsusb
...
Bus 001 Device 005: ID 0694:0002 Lego Group
Bus 001 Device 003: ID 0694:0001 Lego Group Mindstorms Tower

Con esto dejamos nuestros bloques reconocidos y listos para la etapa de desarrollo y creación de "robots", para el aprendizaje y exploracón de los RIS (Robotic Invetion System) de Lego.

Felices Hacking!!.

Escrito por: CoolSnow | Permalink | Categories: Robotica & Electrónica

marzo 28, 2009 1:29 P.M.

Usando Twhirl !!


Imagen del Dia
Revisando como usar de una manera más productiva esto de Twitter, me encontre esta herramiente, Twhirl la cual es una aplicación desktop desarrollada con Adobe Air, (Code Name: Apollo) lo cual es un entorno de ejecución multiplataforma, para el desarrollo de aplicaciones RIA ( Rich Internet Applications ), usando Adobe Flash, Adobe Flex, HTML,CSS y Ajax, las cuales pueden ejecutarse como aplicaciones de Escritorio estandar.

Twihrl, es una aplicación cliente gratuita de Twitter, la cual se instala en tu sistema con un diseño muy llamativo y agradable al uso.

Además, tiene muchísimas características muy útiles:

- Funciona en Linux, Windows y Mac.
- Posibilidad de conectarse a múltiples cuentas Twitter, Identi.ca, laconi.ca, Friendfeed y Seesmic.
- Posibilidad de acortar las URLS automáticamente.
- Subir imagenes.
- En tu idioma :)
- Buscar "Tweets" (mensajes).

Esto de Aplicaciones RIA, no esta tan mal :), habrá que revisar una tendencia nueva de desarrollo y ver que te permite hacer.



Felices Hackings !!

Referencias:

Adobe Integrated Runtime (AIR) - Wikipedia - es
Adobe AIR Resources - en
Descargar AIR - es



Escrito por: CoolSnow | Permalink | Categories: Soluciones y Desarrollos

marzo 27, 2009 11:13 P.M.

Realmente será útil el tener twitter ??


Imagen del Dia
En estos días he estado analizando el uso y el boom generado por las redes sociales en los últimos tiempos.

Me llama mucho la atención el servicio Twitter, el cual me permite estar informado, mediante la técnica de MicroBloggin, o micro-bitacoras. Bueno informado de que ?, ... a simple vista de chorradas y pendejadas, como:

Voy saliendo de clases!
Me compre un refresco.
@fulanito Waaooo invitados todos a mi casa, fiesta de traje, 5 pm !


Todo lo que este accesible en Internet dependera del ojo con que lo veas, y de lo que realmente andes buscando, en su mayoria será spam, chorradas, o simplemente una ventana a la vida de tus amigos ( los cuales sigues o te sigen mediante Twitter).

El servicio com tal, dispone de un par de aplicaciones básicas para realizar eso, Microbloggingm, ya sea desde la web, sms, email, enviando texto e imagenes. Esto último aun no me convence, por las restricciones de espacio, tamaños, etc. Pero no deja de ser fascinante el concepto.

Mediante el API, del servicio le puedes hablar desde tu aplicación en varios idiomas, he probado desde php, y funciona de lo más bien, animo a ser parte con un par de aplicaciones "de terceros :D, claro esta" para este servicio adictivo y contagioso.

Explorando un poco sobre el ambiente "Twitterero" he encontrado varios sitios interesantes y con la ayuda de amigos twitters con mayor experiencia, le he encontrado utilidades exponenciales, bastará en aplicarlas a la vida cotidiana y a ver que pasa.

Les dejo mi espacio en el Twitt, para que intercambiemos chooradas de esto que llamamos vida, y se nos haga más placentero el viaje.

Saludes y a Twittiar ...

Mi espacio Twitter, http://www.twitter.com/soluciones_tux

Escrito por: CoolSnow | Permalink | Categories: Soluciones y Desarrollos

marzo 27, 2009 10:52 P.M.

Agregado el contador para el flisol 2009@UNA


Hoy me acorde agregar, el contador regresivo para acordarme :D ejjeje e informar los procesos de coordinación del próximo flisol 2009 que se realizara en la Universidad Nacional, en la Escuela de Informática, en el campus Omar Dengo, Heredia.

No dudes en darte una vuelta y participar de un día de charlas e intalaciones de Software Libre y principalmente GNU / Linux :d.

Me base en un contador de Omar Vega, el cual me parecio muy limpio y le hice unos cuantos hacks, para que me funcionara en mi blog y con las imagenes que ya habia hecho :D.

Saludes y Felices Hacks.

Escrito por: CoolSnow | Permalink | Categories: Cosas de Blogs

March 04, 2009 8:52 PM

La Fonera +


Imagen del Dia
La Fonera+ es el modelo de 2 puertos de los routers WiFi de FON. Viene provista de un puerto Internet para conectar tu servicio de banda ancha existente, y un puerto LAN adicional para conectar por cable un dispositivo a tu red. La Fonera+ es fásil de instalar, ofrece tasas de transferencia de datos de hasta 54Mbps, y funciona con todos tus dispositivos WiFi (portátiles, teléfonos, MP3s, etc.). El alcance estándar está entre 10 y 50 metros, dependiendo del entorno.

Lo que es mejor todavía, La Fonera+ te permite compartir de una manera segura tu servicio de Internet de banda ancha con la Comunidad FON. A cambio, obtienes acceso gratuito a cientos de miles de hotspots creados por otros miembros FON como tú. Con la Fonera+, también puedes establecer el ancho de banda que quieres compartir, personalizar tu Portal de Acceso con tus vídeos y fotos, e incluso ganar dinero gracias a los que se conectan a tu hotspot!

Al comprar tu Fonera+, consigues tres semanas de acceso gratuito a todos nuestros FON Spots en todo el mundo, de esta forma no tendrás que esperar a recibir tu Fonera+ para empezar a navegar.

La principal diferencia con La Fonera estándar es el puerto LAN adicional que puedes necesitar si no dispones de un puerto LAN libre en tu módem para conectar el Router WiFi.

ESPECIFICACIONES TÉCNICAS

Dimensiones 93.5 mm x 25.5 mm x 110 mm (excluyendo antena)
Conector de antena Conector RP-SMA (SMA inverso)
Antena Antena exterior de 1,5dBi
Autenticación WEP 64bit/128 bit, WPA, WPA2, WPA mixed
Cifrado TKIP, AES, Mixed
Estándares IEEE 802.11b / 802.11g (hasta 54 Mbps)
Puertos 1 Puerto Ethernet WAN (10/100Mbps) para conexión Internet + 1 Puerto Ethernet LAN (10/100 Mbps) para conexión ordenador o dispositivo red (impresora de red, unidad de almacenamiento, etc.)
SSIDs Uno público (llamado FON_FREE_INTERNET por defecto) sin encriptar y uno privado (llamado MyPlace por defecto) con cifrado WPA/PSK (modificable)


Este juegete lo compre, pensando en poder poner una señal inalambrica en mi casa, ya que mi hermano pondrá internet, pero ahora resulta que el módem que pondrá tiene un AP :S que mal, jajajaja :D ahora me sobra una Fonera :), creo que ampliaré la señal en mi propia casa.

jajajajaja

Gajes del oficio ...

Escrito por: CoolSnow | Permalink | Categories: Telematica y Redes

March 03, 2009 8:58 PM

Reviviendo desde la red ...


He decidido el día de hoy reactivar este blog, dado que nunca habrá tiempo por lo que hay que hacerlo, en el transcurso de esté tiempo agregaré más categorias y periodicamente trataré de ponerme al día de cosas que han pasado y no he publicado.

Lo primero que hay que hacer es poner un poco más de colores a esta plantilla.

Felices Hackings !!!

Escrito por: CoolSnow | Permalink | Categories: Cosas de Blogs