0.1.5 • Published 8 years ago

pruss v0.1.5

Weekly downloads
3
License
CC0-1.0
Repository
github
Last release
8 years ago

PRU

Assembler, disassembler, driver for TI's PRUSS-v2 stack.

build status coverage license version downloads

Native support for Beaglebone's programmable real-time unit including debugger, assembler, disassembler and instructions not found in TI's default pasm package.

Usage

Driver

var pruss = require('pruss');
// ...
// Run code on PRU0
pruss.prus[0].run('./path/to/some/firmware');

Assembler

pasm --help

Disassembler

pdasm --help

Installation

Default BeagleBone Black installation as of November 1st 2013, (Angstrom v2012.12 (Core edition) rev 2ac8ed60f1c4152577f334b223b9203f57ed1722) does not come with the packages required for compiling nodejs C modules. This can be fixed by running:

opkg install python-compiler python-misc python-multiprocessing

Proceed with standard NPM installation:

npm install pruss

Finally, make sure your device tree has the PRU UIO driver enabled. It will be automatically loaded with the correct device-tree overlay. The following fragment details part of such an overlay:

/dts-v1/;
/plugin/;
/{
	compatible = "ti,beaglebone-black";
	part-number = "YOURPART";
	version = "YOURVERSION";
	fragment@0{
		target = <&pruss>;
		__overlay__{
			status = "okay";
		};
	};
};

This can then be enabled by compiling and loading the overlay via capemgr:

dtc -@ -O dtb -b 0 -o YOURPART-YOURVERSION.dtbo YOURPART-YOURVERSION.dts
mv YOURPART-YOURVERSION.dtbo /lib/firmware
echo "YOURPART" > /sys/devices/bone_capemgr.*/slots

You can verify the PRUSS subsystem is loaded by searching for it under platform devices:

ls /sys/bus/platform/devices/ | grep pruss # Should see 4a300000.pruss or similar
0.1.5

8 years ago

0.1.4

8 years ago

0.1.3

8 years ago

0.1.2

8 years ago

0.1.1

8 years ago

0.1.0

8 years ago