<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>BBB - Working with the PRU-ICSS/PRUSSv2</title><link>/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><description>(Disclaimer - this is some experimentation, so the information here may not be the best way of doing things.Also, please read the comments below, which have recent information as people discover things)17th March 2013 - Anything old is now in purple.</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Fri, 06 Sep 2019 21:55:36 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>mp2100</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;&lt;span&gt;[mention:b0bc65b9ecdc4307bd967592f00e340a:e9ed411860ed4f2ba0265705b8793d05]&lt;/span&gt;&amp;nbsp; This is cool, did you know Mark Yoder&amp;nbsp; (of &amp;#39;cookbook&amp;#39; fame &lt;a class="jive-link-external-small" href="https://www.amazon.com/BeagleBone-Cookbook-Software-Hardware-Solutions/dp/1491905395" rel="nofollow ugc noopener" target="_blank" title="https://www.amazon.com/BeagleBone-Cookbook-Software-Hardware-Solutions/dp/1491905395"&gt;https://www.amazon.com/BeagleBone-Cookbook-Software-Hardware-Solutions/dp/1491905395&lt;/a&gt;&amp;nbsp;&amp;nbsp; )&lt;/p&gt;&lt;p&gt;links to this discussion in his course notes?&amp;nbsp; Professor Yoder posted to the beaglebone group (&amp;nbsp; &lt;a class="jive-link-external-small" href="https://groups.google.com/forum/#!category-topic/beagleboard/beaglebone-black/IjJ6T8iXJks" rel="nofollow ugc noopener" target="_blank" title="https://groups.google.com/forum/#!category-topic/beagleboard/beaglebone-black/IjJ6T8iXJks"&gt;https://groups.google.com/forum/#!category-topic/beagleboard/beaglebone-black/IjJ6T8iXJks&lt;/a&gt;&amp;nbsp;&amp;nbsp; )&amp;nbsp; that he was teaching the course. If you follow the links to the course outline ( &lt;a class="jive-link-external-small" href="https://elinux.org/index.php?title=Category:ECE497" rel="nofollow ugc noopener" target="_blank" title="https://elinux.org/index.php?title=Category:ECE497"&gt;https://elinux.org/index.php?title=Category:ECE497&lt;/a&gt;&amp;nbsp;&amp;nbsp; )&amp;nbsp; the PRU topic links to here.&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Fri, 09 Jun 2017 06:43:23 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>edwingate</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Trying to get PRU working, but get stuck in step 4, when you say &amp;quot;In the .dts file (same as before), the following additions are to be made in the appropriate sections (just search for something similar, and then insert these lines):&amp;quot;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;What are the appropriate sections?&amp;nbsp; How many sections should the lines be added to?&amp;nbsp; What similar thing do I search for? Similar to what, exactly? To me, everything in the dts file looks similar to those lines.&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Tue, 20 Sep 2016 11:55:46 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi Shabaz,&lt;/p&gt;&lt;p&gt;First of all, you are doing a really great job here. &lt;/p&gt;&lt;p&gt;I am in dilemma and hard time picking up on using the PRU for SPI communication though. I have a normal executable file that can be run on the beaglebone to monitor temperature and humidity and now I would like to use part of the code dealing with SPI in PRU mode. &lt;/p&gt;&lt;p&gt;I am quite new to all this, come across the official c compiler from TI and the CCSV6 and thinking those might somehow make the conversion easier. Do you have a complete example for similar type of this kind of application? &lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Wed, 01 Jun 2016 15:03:33 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Shabaz,&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I found your article informative. I am developing an 800Hz sample rate platform stabilization attitude control system with Linux-Xenomai on AM335x. I currently have all the I2C sensor polling code running on an external STM32F uC and need to have this functionality integrated into a PRU on the AM335x SOC using a hard (not bit-banged) I2C master controller with a memory mapped RAM interface similar to the primary proposal in your video, to the Xenomai kernel. Any interest in working on this project? - &lt;/span&gt;&lt;a class="jive-link-email-small" href="mailto:info@usysinc.com"&gt;info@usysinc.com&lt;/a&gt;&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Fri, 26 Feb 2016 15:02:39 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>clem57</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;&lt;span&gt;[mention:b0bc65b9ecdc4307bd967592f00e340a:e9ed411860ed4f2ba0265705b8793d05]&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; This is by far one of the best blogs on E14.&lt;/p&gt;&lt;p&gt;Clem&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Wed, 03 Feb 2016 06:25:35 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi Shabaz (or anybody that might have cloned my PRUSS-EndToEnd-PWM project referenced in my last post)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;A few things:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I posted a minor revision tonight of the PRUSS-EndToEnd-PWM project.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;First thing: nobody was cloning my last project (prudebug-bbb) that I posted here. I got a bit complacent because of this with the Github PRUSS-EndToEnd-PWM project. I apparently was lax about checking whether anybody had cloned this project. Well, I just updated it, and in the process went through some rebase confusion on my local system. I posted the wrong branch to master tonight and scrambled to sort it out. It is all sorted out now, at least from my perspective.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;My concern is that whomever cloned it might be or get out of sync with it. I am pretty sure this won&amp;#39;t happen (or didn&amp;#39;t), but sometimes I get thrown off on Git and may not notice a mistake I made.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;If you, or anybody else, has cloned this project and does a pull on the master branch, please let me know of any problem experienced.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Second thing:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;This project is closely tied to Derek Molloy&amp;#39;s book, Exploring BeagleBone. In particular it is derived/heavily influenced by his Chapter 13 and its associated web page. I have tried to post a notice there but the site is failing to accept comments. I would like the work I have produced to get out into the community in hopes that those interested in the BBB and the PRUSS find it helpful.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I am not sure of the best way to achieve this at this point.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Third Thing(s):&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Another update to PRUSS-EndToEnd is coming shortly with a Windows client written in C#, and some discussion of tests myself and my associate ran with this code.&lt;/li&gt;&lt;li&gt;Another project is coming that explores the various ways of accessing DDR in C code. The idea is to clarify items I found confusing initially. It is derived from research I did into the inner workings of the uio_pruss kernel module and the prussdrv app loader api. It also demonstrates using the scratchpad to signal PRU-to-PRU (in lieu of an interrupt), and it runs autonomously as a simulator (no physical input on pins required). It simulates production of identifiable data with a configurable data rate. The data rate timing is achieved by using the PRUSS Industrial Ethernet Peripheral (IEP) which is actually essentially a pretty straightforward timer. It is again, well commented and organized. The idea is to facilitate easy understanding of these very useful features.&lt;/li&gt;&lt;/ol&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Wed, 27 Jan 2016 18:36:17 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;I have added a project on Github:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt; &lt;a class="jive-link-external-small" href="https://github.com/ttreker/PRUSS-EndToEnd-PWM" rel="nofollow ugc noopener" target="_blank" title="https://github.com/ttreker/PRUSS-EndToEnd-PWM"&gt;https://github.com/ttreker/PRUSS-EndToEnd-PWM&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;which is a demonstration program of the PRUSS that I and a friend have put together to consolidate some knowledge of the PRUSS&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;The project does the following:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Its a client-server end-to-end test: PRUSS gathers data; C module sets itself up as a server; client connects and downloads data.&lt;/li&gt;&lt;li&gt;One of the ideas behind the project was to build a framework of a remotely controlled PRUSS-based BBB application.&lt;/li&gt;&lt;li&gt;It demonstrates PRU-to-PRU interrupt functionality.&lt;/li&gt;&lt;li&gt;It demonstrates use of the scratchpad to pass data between PRUs.&lt;/li&gt;&lt;li&gt;Designed to keep the code reasonably straightforward&lt;/li&gt;&lt;li&gt;The PRUSS samples a pulse width modulator signal as its source data&lt;/li&gt;&lt;li&gt;Can be used to test PRUSS throughput limits if a PWM source&amp;#39;s frequency can approach the PRUSS&amp;#39;s speed&lt;/li&gt;&lt;li&gt;Can be used as a framework for future programs&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;The README file goes into the detail.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;There is going to be a Windows C-based client added to the program as soon as it is tested. This should be soon.&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Mon, 14 Dec 2015 18:09:06 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>scitechindian</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;very cool ! &lt;span&gt;[View:/resized-image/__size/16x16/__key/commentfiles/f7d226abd59f475c9d224a79e3f0ec07-9b98eec9-b729-4869-8c9f-f9bb55f19ce7/3884.contentimage_5F00_1.png:16:16]&lt;/span&gt; &lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Sun, 13 Dec 2015 05:45:12 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;To whomever may be interested:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I have created a fork on Github of the PRU Debugger code (&lt;a class="jive-link-external-small" href="http://sourceforge.net/projects/prudebug/" rel="nofollow ugc noopener" target="_blank" title="http://sourceforge.net/projects/prudebug/"&gt;prudebug download | SourceForge.net)&lt;/a&gt;&lt;/p&gt;&lt;p&gt;This fork is not as ambitious as Steven Anderson&amp;#39;s code line. I am aiming primarily for the&lt;/p&gt;&lt;p&gt;platform on which I am working: BeagleBone Black Rev C, where I believe that&lt;/p&gt;&lt;p&gt;Steven was aiming to be a little more general purpose. I don&amp;#39;t plan in the&lt;/p&gt;&lt;p&gt;foreseeable future to maintain it for any other platform, but I am not&lt;/p&gt;&lt;p&gt;planning on removing that existing functionality either. I will also always&lt;/p&gt;&lt;p&gt;avoid hard-coding things like memory locations when they are available from&lt;/p&gt;&lt;p&gt;Steven&amp;#39;s code in a table-driven manner. Here is the link to Prudebug BBB:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;a class="jive-link-external-small" href="https://github.com/ttreker/prudebug-bbb" rel="nofollow" target="_blank"&gt;https://github.com/ttreker/prudebug-bbb&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;and the clone command:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; git clone &lt;/span&gt;&lt;a class="jive-link-external-small" href="https://github.com/ttreker/prudebug-bbb" rel="nofollow" target="_blank"&gt;https://github.com/ttreker/prudebug-bbb&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;To keep confusion with Steven&amp;#39;s executable down I have renamed my executable&lt;/p&gt;&lt;p&gt;to prudbgb.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;This version currently only has a few simple, but I think none the less worthy&lt;/p&gt;&lt;p&gt;improvements, the highlights of which are:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; - The command line is readline-based. Command recall, editing, and search&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; are now possible, and it remains &amp;quot;clean&amp;quot;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; - Created aliases for several of the commands for quicker, more fluid&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; command line control.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Steven&amp;#39;s tool is wonderful; this fork is just sanding down a rough edge here&lt;/p&gt;&lt;p&gt;and there. The plan is to add some additional functionality as I and an&lt;/p&gt;&lt;p&gt;associate of mine continue on our journey of hacking the PRUSS.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I hope people find this fork useful.&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Thu, 04 Dec 2014 06:12:19 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>zafar4472</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi,&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I am just wanted to use the PRUSS and want to establish the basic communication between ARM and PRUSS using some shared memory, how can we do the same.&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Mon, 20 Oct 2014 21:46:53 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>ryan_austin</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hello shabaz. This has been very informative. I recently obtained my BBB primarily to evaluate use of the PRU in a sensor application. The intent: upon a trigger the PRU will sample from a high speed ADC for a configured number of samples and then ultimately transfer the data set into RAM for the host to access. The host will then process the data, make comparisons, and store results in a database. The PRU is to be used so the sampling sequence will be well controlled.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;At this stage I&amp;#39;m basically trying to prove to myself that I can send data back and forth from a PRU to memory available to the host. The BBB revision C model I received shipped with Debian (Linux beaglebone 3.8.13-bone47 #1 SMP Fri Apr 11 01:36:09 UTC 2014 armv7l GNU/Linux). I&amp;#39;ve followed instructions and guidance found on many posts and have been able to perform some basic PRU checks, but none of those involved data transfers. Then I found this post, which was great, until I ran into this. In step 2 the ./mytest.out command hangs (apparently) waiting for the halt command:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; root@beaglebone:/home/debian/am335x_pru_package-master/pru_sw/example_apps/bin# ./mytest.out&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INFO: Starting PRU_memAcc_DDR_sharedRAM example.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INFO: Initializing example.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INFO: Executing example.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INFO: Waiting for HALT command.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I&amp;#39;ve tried slimming down the .p file to simply enter the program, write the completion to r31.b0, and halt the PRU, but no luck. It still hangs. The other two examples yield the same situation. Googling for this situation has led to no helpful guidance. Can you recommend some steps to help diagnose the problem?&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;My slots file contains:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; root@beaglebone:/home/debian/am335x_pru_package-master/pru_sw/example_apps/bin# cat /sys/devices/bone_capemgr.9/slots&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0: 54:PF---&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1: 55:PF---&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2: 56:PF---&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3: 57:PF---&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5: ff:P-O-L Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-BONE-PRU-01&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Any suggestions would be appreciated. Thank you. Ryan&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Wed, 28 May 2014 11:55:17 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;&amp;nbsp; Hello!&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I hope this thread is not dead. It is very nice and informative. I got&amp;nbsp; started to pru with Shabaz skillful guidelines.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I am trying to compile a PRU_gpioToggle.c file but its giving errors like:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;PRU_gpioToggle.c: In function ‘main’:&lt;/p&gt;&lt;p&gt;PRU_gpioToggle.c:72: error: ‘PRU_Code’ undeclared (first use in this function)&lt;/p&gt;&lt;p&gt;PRU_gpioToggle.c:72: error: (Each undeclared identifier is reported only once&lt;/p&gt;&lt;p&gt;PRU_gpioToggle.c:72: error: for each function it appears in.)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Where is this PRU_Code declared? I just could not locate. Can anyone help?&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Sun, 20 Apr 2014 09:35:27 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>0</slash:comments><description>&lt;blockquote class="jive-quote"&gt;&lt;ol&gt;
&lt;li&gt;Get the PRU assembler installed on the BBB (code for the PRUs is written in assembler currently, &lt;strong&gt;until someone creates a C compiler for it&lt;/strong&gt;)&lt;/li&gt;
&lt;/ol&gt;&lt;/blockquote&gt;&lt;p&gt;See: &lt;a class="jive-link-external-small" href="http://article.gmane.org/gmane.comp.hardware.beagleboard.user/65907" rel="nofollow ugc noopener" target="_blank"&gt;http://article.gmane.org/gmane.comp.hardware.beagleboard.user/65907&lt;/a&gt;&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Thu, 13 Mar 2014 20:32:00 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi shabaz!&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;As I told you in another post, I&amp;#39;m working with camera sensors, trying to interfacing them with the beaglebone, using PRU. I think I&amp;#39;m near to a solution, and sure I will share here my experience as soon it will be ready. There is something not so clear to me, about PRU interrupt management.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;In my project, I&amp;#39;m using PRU 1, so I&amp;#39;ve used the following settings (only code regarding pru interrupts):&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;[embed:dc8ab71f-3b98-42d9-b0f6-e21e02a0f8e2:3ef06e6b-9b7d-4651-b12d-db8be7f5e991:type=c_cpp&amp;amp;text=%5B...%5D%0Aprussdrv_open%28PRU_EVTOUT_1%29%3B%0A%5B...%5D%0Aprussdrv_pru_wait_event+%28PRU_EVTOUT_1%29%3B%0A%5B...%5D%0Aprussdrv_pru_clear_event+%28PRU_EVTOUT_1%2CPRU1_ARM_INTERRUPT%29%3B%0A%5B...%5D]&lt;/p&gt;&lt;div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;In the assembly part, to signal the event I&amp;#39;ve used:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;[embed:dc8ab71f-3b98-42d9-b0f6-e21e02a0f8e2:3ef06e6b-9b7d-4651-b12d-db8be7f5e991:type=text&amp;amp;text=MOV+r31.b0%2C+PRU1_ARM_INTERRUPT+%2B16]&lt;/p&gt;&lt;div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Actually program do not block on prussdrv_pru_wait_event and the presence of the instruction MOV r31.b0, PRU1_ARM_INTERRUPT +16 is simply ignored.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I really need to have a blocking behavior on prussdrv_pru_wait_event. How can I obtain that using PRU 1?&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: BBB - Working with the PRU-ICSS/PRUSSv2</title><link>https://community.element14.com/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2</link><pubDate>Tue, 07 Jan 2014 01:44:37 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:9b98eec9-b729-4869-8c9f-f9bb55f19ce7</guid><dc:creator>Former Member</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hello,&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; Thanks for the guide.I&amp;#39;m using Debian&amp;nbsp; I&amp;#39;m at step 4, where I should be echoing to $SLOTS&lt;/p&gt;&lt;p&gt;&lt;span&gt;echo cape-bone-pru &amp;gt; $SLOTS&lt;/span&gt;&lt;/p&gt;&lt;p&gt;However, I&amp;#39;m getting this error:&lt;/p&gt;&lt;p&gt;-bash: echo: write error: No such file or directory&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Backtracking through am335x-boneblack.dtb, I see that BB-BONE-PRU is linked to cape-bone-pru-00A0.dtbo, but I cannot find cape-bone-pru-00A0.dtbo, nor do I see the step where it was created. Based on this post:&lt;/p&gt;&lt;p&gt;&lt;a class="jive-link-blog-small" href="/products/devtools/single-board-computers/next-genbeaglebone/b/blog/posts/bbb---working-with-the-pru-icss-prussv2"&gt;BBB - Working with the PRU-ICSS/PRUSSv2&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I assume there&amp;#39;s an example file, but I seem to have missed it.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I&amp;#39;m wondering if at the step:&lt;/p&gt;&lt;p&gt;Then convert to .dtb as before.&lt;/p&gt;&lt;p&gt;Create a device tree “fragment” file called BB-BONE-PRU-00A0.dts containing the following:&lt;/p&gt;&lt;p&gt;I should have saved the file as &amp;quot;cape-bone-pru-00A0.dtbo&amp;quot; instead?&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Thanks&lt;/p&gt;&lt;img src="https://community.element14.com/aggbug?PostID=15707&amp;AppID=80&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item></channel></rss>