BBB stepper controller using PRU

Greetings. I just joined the group, which I figured was overdue since I have been doing a lot of work on the BBB over the past 6 months or so.

I had the idea of using some kind of controller to implement a camera focus controller to do focus stacking. This has all worked out
and is operational now, but not without quite a bit of learning. Some high points:

  1. I abandoned Cloud-9 immediately as hopelessly buggy (I hope nobodies feelings are hurt) and was far happier just editing javascript
    files with vim and running node on the command line. Ultimately my project has a beagle hosted web based GUI and I have no regrets
    about this way of doing things. Although I do all my development under linux, my photography machine runs windows and I can just run the
    GUI in a browser (Chrome works fine) to do the camera focus control.

  2. I used the PRU to generate steps for a stepper motor. Doing this from node was hopeless (actually it was quite entertaining to listen
    to the motor run with changes of tone and stops and starts as the linux scheduler preempted my code). With step generation in the
    PRU, it is consistent and bulletproof. I very much like the PRU - but there is a learning curve. I reworked the “standard PRU” library
    to fix bugs and add some features I though were desirable.

All my notes are at this link:

In particular, my reworked PRU package is here:

Thank you for your contribution, it is very appreciated.

Thanks that is a lot of interesting stuff!