Welcome to libpruio library,
- a driver for micro processors of type TI AM335x,
- designed for Beaglebone hardware, supporting
- analog input and
- digital input and output features.
It's designed for easy configuration and data handling at high speed. libpruio software runs on the host (ARM) and in parallel on a Programmable Realtime Unit SubSystem (= PRUSS or just PRU) and controls the CPU subsystems
- Control Module: CPU Ball configurations (pinmuxing)
- GPIO: General Purpose Input / Output
- PWMSS: Pulse-Width Modulation Subsystem (PWM, QEP, CAP)
- TSC_ADC_SS: Touch Screen Controler and Analog-to-Digital Convertor SubSystem (or just ADC)
- TIMER: Timers 4 to 7 (TIMER, PWM)
The driver supports three run modes
- IO mode: digital and analog lines, sloppy timing controlled by the host,
- RB mode: digital and analog lines, accurate ADC timing controlled by the PRU,
- MM mode: analog lines and optional triggers, accurate ADC timing controlled by the PRU.
Since version 0.6.2 a PRU driver is included to load and start firmware on the PRUSS.
The libpruio project is hosted at GitHub. It's developed and tested on a Beaglebone Black. It should run on all Beaglebone platforms with Debian based LINUX operating system, including PocketBeagle and BeagleboneBlue. It's compiled by the FreeBasic compiler. Wrappers and examples code for C and Python programming languages are included.
Find more information in the online documentation at
or at related forum pages:
\note The PRUSS are powerful precessors that can access any memory at the host system. There's no kernel protection, the PRU can even access kernel space memory. Malware running on a PRU can damage your complete system. So be careful which software you run on, and enable the PRUSS only when you need them.
Copyright © 2014-2023 by Thomas{ doT ]Freiherr[ At ]gmx[ DoT }net
This program is free software; you can redistribute it and/or modify it under the terms of the Lesser GNU General Public License version 2 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110- 1301, USA. For further details please refer to: http://www.gnu.org/licenses/lgpl-2.0.html
Copyright © 2014-2023 by Thomas{ doT ]Freiherr[ At ]gmx[ DoT }net
The examples of this bundle are free software as well; you can redistribute them and/or modify them under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.
The programs are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110- 1301, USA. For further details please refer to: http://www.gnu.org/licenses/gpl-3.0.html