This guide will teach you how to access the GPIO using Android and Ubuntu.
GPIO Number List
1 | PIN GPIO Number |
TipSome GPIOs may be set to other functions by default, e.g. I2C. If you want to use them as GPIO you need to modify the DTS.
How To Get GPIO Number
You can use the following formula to get GPIO number:
1 | n = (block_number * 32) + (sub_block_number * 8) + index |
Where:
- block_number: index of the block number
- sub_block_number: the alphabetical index of the block name, minus 1
- index: the pin number within the block
Example: PIN15(GPIO1_C2)
1 | GPIO1_C2 -> (1 * 32) + (2 * 8) + 2 = 50 |
How To Access GPIO Via Terminal
Request the gpio(GPIO1_C2)
1 | $ echo 50 > /sys/class/gpio/export |
Config the gpio(GPIO1_C2) as output
1 | $ echo out > /sys/class/gpio/gpio50/direction |
Config the gpio(GPIO1_C2) as high level output
1 | $ echo 1 > /sys/class/gpio/gpio50/value |
Config the gpio(GPIO1_C2) as low level output
1 | $ echo 0 > /sys/class/gpio/gpio50/value |
Config the gpio(GPIO1_C2) as input
1 | $ echo in > /sys/class/gpio/gpio50/direction |
Get the level of gpio(GPIO1_C2)
1 | $ cat /sys/class/gpio/gpio50/value |
Release the gpio(GPIO1_C2)
1 | $ echo 50 > /sys/class/gpio/unexport |