Current differences from Arturo's original kernel module:
Tested on pmOS but should generally work on any distro.
1. First test to make sure you're I2C is hooked up properly. You should make sure you see 0x1F present in the below command. If not, recheck pin connections.
i2c-detect -y 3
2. Setup kernel headers. On debian or arch you can probably just install linux-headers and be on your merry way. On pmOS linux-headers for linux-postmarketos-allwinner are currently broken. So instead you can just grab the source from GH and prepare things:
# Either (1) git clone https://github.com/megous/linux git checkout $REF_KERNEL_BUILT_AGAINST_CHECK_PMAPORTS # Or, faster (2) wget https://github.com/megous/linux/archive/$REF_KERNEL_BUILT_AGAINST_CHECK_PMAPORTS.tar.gz tar xvfz linux*.tar.gz # Then cd linux-src-folder zcat /proc/config.gz > .config make modules_prepare
3. Clone this repo:
git clone https://git.sr.ht/~mil/ppbbq10
4. Build the kernel module
make -C ../linux-src-folder/ M=$PWD modules
5. Load the kernel module
Work-in-progress bumper-style case to be 3d-printed contained in
folder. Models built in solvespace.