PRU PID Motor Speed Controller Using RemoteProc and RPMsg

Here is a quick overview of this project at youtube:

This is based on the example project from Texas Instruments:

I have used the latest Debian version 8 Beaglebone Green IOT image.
There was a bit of hacking to convert to the System Interrupts from the older Mailbox implementation.
All hacking was done on the BBG using the clpru compiler. I did not use IDE or crosscompiler to get this to work.

A very minor change to a Device Tree file was required. Thanks to Robert Nelson’s scripting, this process was trivial!

Also, I used a different DC motor-encoder I found on eBay. It works perfectly with this project and is slightly cheaper than the recommended motor/encoder.

I will publish to Github with documentation soon.
I think the project is really cool, and the material provided by Texas Instruments is amazing and a huge help in showing how to use C programming with the PRU and Remoteproc/RPMsg!


Thanks for this! Care to post the same with some details on the steps and code to

Yes, I was already planning to upload the project to
I’ve got a few hours of work to do on the documentation and cleaning up the repository.

Will post an update when I get it published.