Documentation and apps for the OrangePi-i96 board. Fixes the GPIO access, and includes notes to help make the board more useable

Pat Beirne c591c8ba42 add the kernel wifi module 2 years ago
LICENSE b2cfd849db change to CC-4 2 years ago
README.md c591c8ba42 add the kernel wifi module 2 years ago
blink.py 2f0105f826 add the devmem2.py and blink files 2 years ago
devmem2.py 2f0105f826 add the devmem2.py and blink files 2 years ago
gpio_fixup.py bdd3f877e8 first commit 2 years ago
gpio_fixup.sh 1e28040cec first commit 2 years ago
rdawfmac.ko c591c8ba42 add the kernel wifi module 2 years ago

README.md

i96

Documentation and apps for the OrangePi-i96 board. Fixes the GPIO access, and includes notes to help make the board more useable.

See the wiki for the documentation.

Download the gpio_fixup.py file onto your OrangePi-i96. I usually install it into `/usr/local/bin'.

sudo -i                  # change to root
cd /usr/local/bin
wget http://wiki.pbeirne.com/patb/i96/raw/master/gpio_fixup.py

# add a line to /etc/rc.local to execute this at startup
sed -i "/^exit 0$/i\/usr/local/bin/gpio_fixup.py" /etc/rc.local

That little script will run at boot time, and change the gpio pins on the 40 pin connector (pins 23-34) into true GPIO pins, and it'll restore proper operation of the UART2 and SPI2 pins (pins 3,9,8,10,12,14) NOTE: this is OrangePi-i96 specific; do not use on the 2G-iot board

gpio_fixup.sh is the equivalent script written in bash, using devmem2 to access the cpu registers.

devmem2.py is a local version of the program to access the cpu registers. Use if you can't download devmem2 from the Debian/Ubuntu repositories. devmem2.py uses Python3 and is very slow, and must be run by root or sudo.

blink.py is just an example to show how you might play with the GPIO lines.

The rdawfmac.ko file included here contains the change that allows the WiFi MAC address to persist between reboots. This file (kernel module) can be copied into /lib/modules/3.10.62-rel5.0.2+/kernel/drivers/net/wireless/rdaw80211/rdawlan/ to overwrite the existing file. If you decide to use this version of the module, be sure to create a folder off the root called /data/misc/wifi/ so the module can store its randomized MAC address.