VisualPRU is a minimal browser-based editor and debugger for the Beaglebone PRUs. The app runs from a local server on the Beaglebone and is accessed by connecting the Beaglebone to your computer via USB and navigating your browser to 192.168.7.2:3333. You can also connect via wireless or ethernet with configuration of a static ip.
Internally,The hardware is accessed by twiddling bits in memory-mapped /dev/mem . Assembly programs are compiled using TI's open-source pasm library.
- The Header allows you to choose which PRU you are targeting and shows their current status. If you're working on an application where the PRUs collaborate, it's possible to trigger a program on one PRU and debug the other PRU as they interact.
- Column 1 shows the editor view. You can add as many files as you want and include them in your main program(e.g. for header files and macro definitions).
- Column 2 shows the compiler view. It shows the output from the TI PASM compiler and allows you to step through your compiled code or run it full-speed.
- Column 3 shows the memory view. It allows you to look at the values of all the general purpose registers.
Install python if necessary, then:
pip install bottle
pip install gevent-websocket
cd /home
git clone https://github.com/mmcdan/visualpru.git
Finally, download pasm, run the linuxbuild script, and put the resulting executable in /usr/local/bin (or another system-wide binary location)
Just go into the VisualPRU directory and type python visualpru.py, then navigate to 192.168.7.2:3333 with your browser! To stop the program, use CTRL-C.
- Transition from /dev/mem to UIO
- Add the ability to load existing source files
- Highlight errors in the editor view
- Allow the user to modify memory registers
- Show Data RAM, Scratchpad RAM, and DDR RAM chunk in memory view
- Add better error-handling for edge cases
- Add unit tests
- Web interface layout is compressed when using Internet Explorer
MIT