#!/bin/bash case ${1} in IO0) GPIO=25 ;; IO1) GPIO=16 ;; IO2) GPIO=20 ;; IO3) GPIO=21 ;; IO4) GPIO=26 ;; IO5) GPIO=19 ;; IO6) GPIO=6 ;; IO7) GPIO=5 ;; IO8) GPIO=22 ;; IO9) GPIO=4 ;; *) echo "Input not defined" >&2 exit 1 ;; esac if [ -z "${GPIO}" ]; then CHIP_BASE_DIR="/sys/bus/i2c/devices/1-00${ADDR}/gpio" CHIP_NAME="$(ls ${CHIP_BASE_DIR})" CHIP_DIR="${CHIP_BASE_DIR}/${CHIP_NAME}" CHIP="${CHIP_NAME#gpiochip}" GPIO="$((${INDEX} + ${CHIP}))" fi if [ ! -d /sys/class/gpio/gpio${GPIO} ]; then echo "${GPIO}" > /sys/class/gpio/export fi echo in > /sys/class/gpio/gpio${GPIO}/direction cat /sys/class/gpio/gpio${GPIO}/value