#!/bin/bash case ${1} in O0) GPIO=19;; O1) GPIO=6;; O2) GPIO=5;; O3) GPIO=22;; O4) GPIO=4;; PIN7) GPIO=7;; PIN8) GPIO=8;; *) echo "Output not defined" >&2 exit 1 ;; esac VALUE="${2:-1}" 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 [ "${VALUE}" = "stop" ]; then echo "${GPIO}" > /sys/class/gpio/unexport exit 0 fi if [ ! -d /sys/class/gpio/gpio${GPIO} ]; then echo "${GPIO}" > /sys/class/gpio/export fi echo "out" > /sys/class/gpio/gpio${GPIO}/direction echo "${VALUE}" > /sys/class/gpio/gpio${GPIO}/value