Tutorial para la instalación de TinyOS sobre Windows.
Metodo 1: Corriendo una Maquina Virtual.
Este metodo consiste en utilizar una imagen virtual pre-cofigurada de
Xubuntu, siga los pasos del siguiente enlace para instalar utilizando
este metodo.
http://docs.tinyos.net/index.php/Running_a_XubunTOS_Virtual_Machine_Image_in_VMware_Player
Metodo 2: Instalación sobre entorno Cygwin.
Este metodo consiste en instalar los paquetes necesarios para el
desarrollo con TinyOS en el entorno Cygwin, el cual emula un ambiente
Linux sobre Windows.
Este tutorial fue probado en Windows 7, los enlaces en cursiva llevan a imagenes que le pueden servir de referencia durante el proceso.
Referencia: http://docs.tinyos.net/index.php/Installing_TinyOS_2.1.1#Manual_installation_on_your_host_OS_with_RPMs.
Paso 1: Instalar Java 1.6 JDK.
Descargar e instalar el JDK desde http://www.oracle.com/technetwork/java/javase/downloads/index.html siguiendo los pasos de descarga e instalación. Se recomienda instalar la versión de 32 bits para asegurar la compatibilidad.
Paso 2: Instalar de Cygwin.
Cygwin habilita
un ambiente Linux sobre Windows para ejecutar aplicaciones
desarrolladas para el estándar POSIX
Puede Descargar Cygwin desde http://www.cygwin.com/,
pero debido a que actualizan bastante seguido no se puede asegurar la
compatibilidad con los paquetes que se utilizarán para este proposito,
por ende es recomendable:
- Descargar el archivo http://cone.informatik.uni-freiburg.de/people/aslam/cygwin-files.zip y extraer los archivos en una
carpeta local, por ejemplo, C:/cygwin-files/.
- Ir a la carpeta donde extrajo los archivos y ejecutar el "setup.exe".
- En la pantalla "Choose Installation Type" elija la opción "Install
from a Local Directory".
- En la pantalla "Select Root Install Directory" utilice la
configuración:
Root Directory: C:\cygwin (o alguna otra dirección sin espacios)
Install for: All Users (RECOMMENDED).
Default Text file type: Unix/Binary (RECOMMENDED).
- En la pantalla "Select Local Package Directoy" seleccione
la carpeta donde extrajo los archivos.
- Complete el resto de la instalación sin modificaciones.
Paso 3: Instalar los compiladores nativos.
- Ejecutar el icono de acceso directo creado en su escritorio al
finalizar la instalación de cygwin, se abrirá una ventana de terminal,
en la cual podrá ejecutar diversos comandos de uso habitual en
ambientes Unix, dado que es la primera vez que ejecuta Cygwin, se crearán los directorios de usuario en /home/.
- Descargar los siguientes archivos y guardarlos en algun
directorio dentro de C:\cygwin\ (o la carpeta que haya puesto como
"Root Directory" en el paso 2.4), por ejemplo C:\cygwin\home\MyUsuario\
Herramientas TI MSP430
- Para instalar los paquetes descargados anteriormente se ejecuta el comando rpm -ivh <rpm> en el directorio donde guardo los archivos, por ejemplo rpm -ivh msp430tools-base-0.1-20050607.cygwin.i386.rpm. Proceder a instalar cada uno de los paquetes, recuerde usar la tecla TAB para facilitar este proceso.
NOTAS:
- Si recibe el mensaje "warning: user TinyOS User does note exist -using
root",
ignórelo.
- Si recibe el mensaje "package <paquete> is intended for a cygwin_nt-5.1
...
", vuelva a intentar la instalación ejecutando rpm -ivh --ignoreos <rpm>.
- Si recibe el mensaje "error: Failed dependencies...", vuelva a intentar
la instalación ejecutando rpm -ivh --nodeps <rpm>.
- Si recibe un mensaje acerca de conflictos con paquetes instalados
previamente, vuelva a intentar
la instalación ejecutando rpm -ivh --ignoreos --force <rpm>.
Paso 4: Instalar herramientas específicas de TinyOS.
Descargar los archivos del mismo modo que en el paso anterior, pero ahora instalarlos con el comando indicado en la columna "Comando de instalación" para cada paquete.
Herramientas específicas de TinyOS
NOTA:
- Si recibe el error "Java not found, not installing JNI code" al instalar tinyos-tools-1.4.0-3.cygwin.i386.rpm, siga con los pasos de instalación, y al terminar revise el punto 2 de la sección Solución de problemas para concretar la correcta instalación de este paquete.
Paso 5: Instalar el código fuente de TinyOS.
- Instalar el código fuente.
Descargar el siguiente archivo:
tinyos-2.1.1-3.cygwin.noarch.rpm al igual que en el paso 3, e instalarlo con el comando
rpm -ivh <rpm> (Utilizar
rpm -ivh --ignoreos <rpm> en caso de que arroje error)
- Configurar las variables de entorno.
Para Configurar las variables de entorno de manera facil debe descargar el siguiente
script, colocarlo en la carpeta
C:\cygwin\etc\profile.d\ y luego reiniciar Cygwin
Paso 6: Comprobar si el entorno quedo correctamente instalado.
Abra un terminal Cygwin y ejecute cd /opt/tinyos-2.x/apps/Blink , donde se encuentra la aplicacion de ejemplo "Blink", compilar ejecutando el comando make tmote, se mostrará la el resultado de una compilación correcta.
Conecte el Tmote en el puerto USB, si es primera que lo hace probablemente deba esperar a que windows instale los controladores, al terminar dicho proceso ejecute el comando motelist , si todo esta correctamente instalado debera ver una lista donde se aprecia el dispositvo en su respectivo puerto COM, en caso contrario revise el punto 3 de la sección Solución de problemas.
Cargar el programa en el dispositivo utilizando el comando make tmote install (en el directorio de Blink, con el Tmote conectado), al volver al prompt verá el resultado correcto de la instalación y los leds del Tmote comenzarán a prenderse intermitentemente, en caso contrario revise el punto 4 de la sección Solución de problemas.
Solución de problemas:
- Si al ejecutar el comando java en Cygwin no arroja nada, entonces debe editar o crear la variable de entorno PATH en las propiedades del sistema y agregar C:\Program Files (x86)\Java\jdk1.6.0_21\bin;
acepte los cambios, reinicie Cygwin y pruebe nuevamente en comando
java, deberia responder correctamente mostrando las opciones del
comando.
- Si recibe el error "Java not found, not installing JNI code" comente las lineas:
CLASSPATH="C:\cygwin\opt\tinyos-2.x\support\sdk\java\tinyos.jar;."
...
export CLASSPATH
Si aún le arroja error, ejecute el comando
tos-install-jni, si este
comando tambien le arroja error, dirijase a
C:\cygwin\lib\tinyos, renombre los archivos
getenv.dll y
toscomm.dll a
getenv-32.dll y
toscomm-32.dll respectivamente y ejecute el comando
tos-install-jni nuevamente.
- Si el comando motelist no muestra nada a pesar de que tiene un
Tmote conectado al puerto USB, pruebe instalando Cygwin nuevamente,
pero esta vez una version actualizada descargada de http://www.cygwin.com/, esta vez en vez de seleccionar la opción "Install
from a Local Directory", seleccione "Install form Internet" en la pantalla de "Choose Installation Type". No debiese ser necesario reinstalar los paquetes nuevamente.
- Si al intentar instalar un programa en el Tmote
le arroja un error "could not open port" intente el comando nuevamente,
si no, pruebe desconectarlo y conectarlo nuevamente, en caso de
persistir el error cambie el numero de puerto y encuentre uno que funcione (generalmente es uno de menor numero).