Translate

sábado, mayo 20, 2017

Salidas GPIO Orange PI 2G IoT



Salidas GPIO Orange PI 2G IoT


En el anuncio de la Orange Pi 2G IoT dicen  "40 pins Header Compatibe witch Raspberry pi B+"
Voy a comparar los interfaces.

1.Orange Pi 2G IoT, SoC RDA8810:




Probando comunicación con los pins GPIO (pruebas, gracias a la ayuda del grupo de Telegram):

1.Bajar ultima distro, yo uso Ubuntu Server:

http://www.orangepi.org/downloadresources/

2. Aplicar modulo GPIO:

        #cd /lib/modules/3.10.62-rel5.0.2/kernel/drivers/gpio
        #insmod gpio-OrangePiRDA.ko

3. Con el comando dmesg vemos el log y como queda aplicado el modulo:
                [ 1299.883361] GPIO name B24
                [ 1299.883789] GPIO_INIT finish used!

4.De momento han activado un pin (el 7 que corresponde con el GPIO_B24), aparece tras aplicar el modulo del punto numero 2, y está en /sys/class/gpio_OrangePi/ .Si queremos encender / apagar un led debemos usar el pin GPIO numero 7 (GPIO_B24):

             

Encendio: /sys/class/gpio_OrangePi/B24# echo "1">data

Apagado:/sys/class/gpio_OrangePi/B24# echo "0">data




NOTA IMPORTANTE (otra forma de trabajar con los gpio de esta placa): 

Gracias al trabajo de Reinhard  http://ec.hobbykompetenz.de/index.php/2017/06/07/gpio/ también se puede trabajar sobre los puertos GPIO sin la carga del modulo GPIO en memoria en tal caso para encender/apagar el led sería usando el pin 7 de la placa (GPIO_B24) que en el sistema de archivos es gpio56:
Hay que habilitar en el sistema de archivos el puerto GPIO al pin 7 de la placa:
echo "56" > /sys/class/gpio/export

Apagar LED:  echo "in" > /sys/class/gpio/gpio56/direction
Enceder LED1: echo "out" > /sys/class/gpio/gpio56/direction

Para consultar el estado de entrada/salida del puerto: cat  cat /sys/class/gpio/gpio56/value

He realizado un script para que parpadee el LED (blink.sh):

#!/bin/sh

echo 56 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio56/direction

while true
do
        echo 1 > /sys/class/gpio/gpio56/value
        sleep 1
        echo 0 > /sys/class/gpio/gpio56/value
        sleep 1
done





4 comentarios:

Anónimo dijo...

Hay un grupo de telegram de orange pi?

Anónimo dijo...

Quitar el guion t.m-e, es para evitar spam:

https://t.m-e/joinchat/AAAAAEHxVPlYqktFzY6Sxg

Alfredo Pons dijo...

Hola,

En la ultima Ubuntu Server de la pagina oficial de Orange Pi para la 2G-IoT, el modulo gpio-OrangePiRDA.ko ya no aparece. Se puede obtener de algun otro lugar?

Muchas gracias. Un blog genial!

Juan Carlos Barrientos dijo...

por lo que parece no es necesaria la carga del modulo, si lees la NOTA IMPORTANTE (otra forma de trabajar con los gpio de esta placa), veras como acceder a los puertos gpio sin la carga del modulo.