domingo, 17 de noviembre de 2013

BeagleBone Black Android Boot Script



Explicaremos como ejecutar un script al inicio del sistema operativo Android para la BBB, permitiéndonos por ejemplo inicializar el hardware ( en este caso las GPIOS )

Para empezar deberemos escribir nuestro script el cual se encargará de configurar el pin que maneja uno de los leds que esta en la placa.


 echo "Script configuracion de gpios" > /scriptgpios.txt  
 #Configuramos LED USER 0 - GPIO1_21  
 echo 53 > /sys/class/gpio/export  
 cd /sys/class/gpio/gpio53  
 # Direction : out  
 echo high > direction  
 echo 0 > value  
 chmod 777 value  
 chmod 777 direction  
 echo "GPIO1_21 Configurado correctamente" >> /scriptgpios.txt  
 #**********************************  


Guardaremos este script con el nombre "scriptgpios.sh" en /system/etc. Recordar brindarle al archivo permisos de ejecución.

Como puede observarse en el script, hacemos un export del gpio 53, configuramos la direccion como salida y lo ponemos en cero, también concedemos permisos sobre los archivos direction y value para que cualquier aplicación los puede escribir, de esta forma cualquier aplicación Android podrá manejarlos.

A continuación deberemos editar el archivo init.rc que se encuentra en el raíz, y agregar debajo de :


 service debuggerd /system/bin/debuggerd  
   class main  


las siguientes líneas que provocarán que nuestro script se ejecute al inicio:

 service scriptgpios /system/bin/sh /system/etc/scriptgpios.sh  
   class main  
   oneshot  


Guardamos los cambios en el archivo init.rc y reiniciamos la placa. Al volver a iniciar, el pin gpio53 deberá existir dentro del directorio /sys/class/gpios y ya no deberemos hacer el export manualmente.