#!/bin/bash source /usr/sbin/gpio-defs.sh function gpio_number() { GPIO_BASE=$(cat /sys/class/gpio/gpiochip$GPIO_CHIP0_BASE/base) echo $((${GPIO_BASE} + $1)) } # Configure GPIO as output and set its value function gpio_configure_output() { gpioId=$(gpio_number $1) echo $gpioId > /sys/class/gpio/export echo out > /sys/class/gpio/gpio${gpioId}/direction echo $2 > /sys/class/gpio/gpio${gpioId}/value echo $gpioId > /sys/class/gpio/unexport } function gpio_get_val() { gpioId=$(gpio_number $1) echo $gpioId > /sys/class/gpio/export echo $(cat /sys/class/gpio/gpio$gpioId/value) echo $gpioId > /sys/class/gpio/unexport } # Configure GPIO as input function gpio_configure_input() { gpioId=$(gpio_number $1) echo $gpioId > /sys/class/gpio/export echo "in" > /sys/class/gpio/gpio${gpioId}/direction echo $gpioId > /sys/class/gpio/unexport }