pruss for ppm/pwm realtime decoding

693 views
Skip to first unread message

Eric Fort

unread,
Feb 9, 2013, 3:36:08 AM2/9/13
to beagleboard
I'm interested in adding wwvb radio clock capabilities to the beagle bone in one project and have another that needs to decode a pwm or ppm stream.  For the wwvb radio clock application the pulses have an interval of 1 second, starting low for 200ms, 500ms, or 800ms, followed by a high state of 800ms, 500ms, or 200ms respectively (high state + low state = 1second) with each pulse representing a 0, 1, or marker.  The other application needs to decode a pwm or ppm signal in which a series of binary multibit numbers are included in the width and or position of each pulse.  could the pruss be used to decode these streams in realtime then asert an nmi such that linux kernel and/or userspace immediately reads in and acts upon the values read.  Are there any good examples of this or similar use of the pruss?  can the pruss even do such a task?

Eric

Xu Shirui

unread,
Feb 9, 2013, 5:14:58 PM2/9/13
to beagl...@googlegroups.com
Hi Eric,
Sure you can use Pruss for this. The pruss ruan at 200mhz,. I used Pruss to decode signal from receiver, the pulse is about 1.5ms and it can gain 512 level for 11 channels.

Xu


On Sat, Feb 9, 2013 at 2:36 AM, Eric Fort <eric...@gmail.com> wrote:
I'm interested in adding wwvb radio clock capabilities to the beagle bone in one project and have another that needs to decode a pwm or ppm stream.  For the wwvb radio clock application the pulses have an interval of 1 second, starting low for 200ms, 500ms, or 800ms, followed by a high state of 800ms, 500ms, or 200ms respectively (high state + low state = 1second) with each pulse representing a 0, 1, or marker.  The other application needs to decode a pwm or ppm signal in which a series of binary multibit numbers are included in the width and or position of each pulse.  could the pruss be used to decode these streams in realtime then asert an nmi such that linux kernel and/or userspace immediately reads in and acts upon the values read.  Are there any good examples of this or similar use of the pruss?  can the pruss even do such a task?


Eric

--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Brett Smith

unread,
Feb 15, 2013, 2:17:26 PM2/15/13
to beagl...@googlegroups.com, x...@controlanything.com
Hello Xu!
I am trying to do the exact same thing: I want to read an rc receiver using the beaglebones pru.
I did this succesfully before using the arduino by attaching a couple of interrupts. Now I want to do it with the beaglebone.
Can you push me in the right direction on this?? I need to do a lot of real time processing for my latest project.
Any reading you can reconmend for me? Would you be willing to share some of your code?
I found a couple of online libraries, but I am not yet that proficient with C, but I do know C++

http://elinux.org/ECE497_BeagleBone_PRU#Installation_Instructions


Xu Shirui

unread,
Feb 15, 2013, 9:37:34 PM2/15/13
to beagl...@googlegroups.com
Hi Brett,
I start Pru from the first link you sent. I put hte source code of my project to here.

Please refer the code in ReadPWM for source code. It include test code also. 
Hope this could help.
Thanks,
Xu

Xu Shirui

unread,
Feb 15, 2013, 9:36:45 PM2/15/13
to beagl...@googlegroups.com
Hi Eric,
I start Pru from the first link you sent. I put hte source code of my project to here.

Please refer the code in ReadPWM for source code. It include test code also. 
Hope this could help.
Thanks,
Xu
On Fri, Feb 15, 2013 at 1:17 PM, Brett Smith <waym...@gmail.com> wrote:

Georges-Etienne Legendre

unread,
May 24, 2013, 2:44:12 PM5/24/13
to beagl...@googlegroups.com, x...@controlanything.com
Any update on that? I'm trying to port the receiving portion of rc-switch to BeagleBoard for RF data collection. I'm looking at a way to quickly decode the RF wave, and it looks like PRUSS is the way to go. Anybody already have this working?

Thanks!

On Saturday, May 18, 2013 1:50:23 PM UTC-4, Muhammad Bilal Khan wrote:
Hi! I checked out your code. It seems to be a perfect solution to the problem. But when I try to build its project using eclipse, there is a make error. Please tell how I can compile the code and can you provide an explanation to how the program decodes PWM so that I can add it easily in my code. 

Regards.

Xu Shirui

unread,
May 24, 2013, 3:22:36 PM5/24/13
to beagl...@googlegroups.com
I will try to update it this weekend for both beaglebone and beglebone black



--
Reply all
Reply to author
Forward
0 new messages