Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
projects:gpio-bb [2021/07/12 15:17] – [Raspbian for Raspberry Pi] darronprojects:gpio-bb [2024/05/16 10:54] (current) – [GPIO bit-bang driver for Linux] darron
Line 7: Line 7:
 GPIO bit-bang is well suited to PICMicro ICSP but not exclusively. GPIO bit-bang is well suited to PICMicro ICSP but not exclusively.
  
-=== Raspbian for Raspberry Pi ===+WARNING: The underlying kernel API this module uses may have been removed from your running kernel. 
 +=== Build === 
 + 
 +This module is built out of kernel and depends on the header files and tools found locally or may be cross compiled. 
 + 
 +For cross compilation, an example Makefile named `cross-compile.mk' is provided which should work for Raspberry PI OS as explained [[:tools:raspbian#kernel|here]]. 
 + 
 +If the linux source directory was cross compiled and then copied to the target system to build the module, `scripts.sh' is provided to rebuild certain kernel header scripts locally. This is needed because some scripts are actually binary files on the foreign architecture. 
 + 
 + 
 + 
 +=== Raspberry Pi OS===
  
 First install development tools and the kernel headers when using a regular kernel. First install development tools and the kernel headers when using a regular kernel.
Line 29: Line 40:
 </code> </code>
  
-=== Void Linux for Raspberry Pi ===+=== Armbian ===
  
-First install development tools and the kernel headers. +==BPI==
-<code> +
-xbps-install mercurial make gcc rpi-kernel-headers  +
-</code> +
- +
-Now install the kernel module. +
-<code> +
-hg clone http://hg.kewl.org/pub/gpio-bb +
-cd gpio-bb +
-./rpi-void.sh +
-</code> +
- +
-=== Bananian for Banana Pi === +
- +
-Install development tools and the kernel headers and then install the kernel module. +
- +
-<code> +
-hg clone http://hg.kewl.org/pub/gpio-bb +
-cd gpio-bb +
-./bpi-bananian.sh +
-</code> +
- +
-=== Armbian for Orange Pi Zero === +
- +
-Install development tools and then install the kernel module.+
  
 <code> <code>
 +apt install linux-headers-current-sunxi
 hg clone http://hg.kewl.org/pub/gpio-bb hg clone http://hg.kewl.org/pub/gpio-bb
 cd gpio-bb cd gpio-bb
Line 74: Line 62:
 </code> </code>
  
-=== OpenWRT === +=== Obsolete documentation === 
-[[projects:gpio-bb:openwrt|GPIO bit-bang driver for OpenWRT]] +[[projects:gpio-bb:armbian|Armbian]] 
- +[[projects:gpio-bb:bananian|Bananian]] 
-=== Raspbian for Raspberry Pi (obsolete) === +[[projects:gpio-bb:openwrt|OpenWRT]] 
-[[projects:gpio-bb:raspbian|GPIO bit-bang driver for Raspbian]]+[[projects:gpio-bb:raspbian|Raspbian]]
  
 === Troubleshooting === === Troubleshooting ===
  
-gpio-bb uses the kernel API to access pins, this API demands +gpio-bb uses the kernel API to access pins, this API demands exclusive access to a pin per process. This means you cannot use gpio-bb and sysfs export simultaneously for a single pin.
-exclusive access to a pin per process. This means you cannot use +
-gpio-bb and sysfs export simultaneously for a single pin.+
  
 === Resources === === Resources ===
  
 [[https://www.pedalpc.com/blog/program-pic-raspberry-pi/#gpio-bb|Using gpio-bb]] [[https://www.pedalpc.com/blog/program-pic-raspberry-pi/#gpio-bb|Using gpio-bb]]