Fast and easy digital input/output and analog input for Beaglebone hardware with PRU subsystem. via beagleboard.org
Developing I/O tasks on Beaglebone (white or black) hardware isn’t really fun (effective May 2014). For digital I/O you’ve to deal with issues like
multiple source (device tree overlays and you program)
several device tree compiler versions (option -@)
pure documentation (spread all over the kernel source)
And also for analog input the situation isn’t better
faulty ADC kernel driver
no control over the ADC device setting
slow sampling rates
Most operations either need root privileges or a lot of configurations to get access for a normal user. Furthermore, all I/O isn’t fast due to the slow file operations.
All these pitfalls don’t realy help when you’re going to focus on your core problem: create new software.
Here’s my solution
libpruio is a driver for the AM33xx processor family. It controls the subsystems
Control Module (pinmuxing)
GPIO 0 to 3 (General Purpose Input and Output)
TSC_ADC_SS (Touch Screen Controler and Analog to Digital Convertor SubSystem)
PWMSS 0 to 2 (Pulse Width Modulation SubSystem)
in real time by software running on the PRUSS (Programable Realtime Unit SubSystem). The API is designed for easy and safe usage, but also for high speed operations. For the daily work you need not care about mystic tables with CPU ball numbers or GPIO codes. Instead specify what you see (ie. P8_11 = header P8, pin 11).
Each Tuesday is BeagleBone Black Day here Adafruit! What is the BeagleBone? The BeagleBones are a line of affordable single-board Linux computers (SBCs) created by Texas Instruments. New to the Bone? Grab one of our Adafruit BeagleBone Black Starter Packs and check out our extensive resources available on the Adafruit Learning System including a guide to setting up the Adafruit BeagleBone IO Python Library. We have a number of Bone accessories including add-on shields (called “capes”) and USB devices to help you do even more with your SBC. Need a nice display to go along with your Bone? Check out our fine selection of HDMI displays, we’ve tested all of them with the Beagle Bone Black!