@@ 1,6 1,6 @@
# ppbbq10
-Experimental Kernel module for Arturo182's BBQ10 PMOD.
+Kernel module for [Arturo182's BBQ10](https://www.tindie.com/products/arturo182/bb-q10-keyboard-pmod/) PMOD.
Forked from:
Current differences:
@@ 14,17 14,38 @@ Planned:
## Usage Instructions
Tested on pmOS but should generally work on any distro.
-1. First test to make sure you're I2C is hooked up properly. Run `i2c-detect -y 3`.
-This should show 0x1F showing up. It shouldn't be blank or just -- all throughout.
+**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. Fetch the kernel headers. On debian or arch you can probably just install linux-headers
+**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:
-
-3. Clone this repo:
-
-4. Build the kernel module
-
-5. Load the kernel module
-
+```
+git clone https://github.com/megous/linux
+git checkout $REF_KERNEL_BUILT_AGAINST_CHECK_PMAPORTS
+cat /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-orange-pi-5.10-20210130-2109/ M=$PWD modules
+```
+
+**5.** Load the kernel module
+```
+insmod ppbbq10
+```
+
+## Resources
+- Original kernel module forked from: https://github.com/arturo182/bbq10pmod_module
+- I2C Protocol: https://github.com/arturo182/bbq10kbd_i2c_sw