Difference between revisions of "EBC Project Ideas"
m (→Sources for Project Ideas) |
|||
(68 intermediate revisions by 14 users not shown) | |||
Line 1: | Line 1: | ||
− | [[Category:ECE497]] | + | [[Category:ECE497 |Project]] |
[[Category:BeagleBoard]] | [[Category:BeagleBoard]] | ||
+ | {{YoderHead}} | ||
− | + | One '''full project''' is done for the class and it's done with a team of 2 or 3. The goal is to have your work contribute to the open source world. Any code is generated will be kept on [https://github.com/ github]. | |
− | |||
− | |||
− | |||
− | |||
What follows are | What follows are | ||
; Places to look for project ideas: Feel free to add your own suggestions. | ; Places to look for project ideas: Feel free to add your own suggestions. | ||
− | ; | + | ; Full Project ideas: Add your own suggestions. |
− | |||
== Sources for Project Ideas == | == Sources for Project Ideas == | ||
Here are some links where you'll find ideas for your project. | Here are some links where you'll find ideas for your project. | ||
− | * [ | + | * [https://spectrum.ieee.org/topic/diy/ IEEE DIY] [https://spectrum.ieee.org/type/hands-on/ IEEE Hands On] |
+ | * [https://www.hackster.io/ Hackster.io] | ||
+ | * [https://blog.hackster.io/the-10-most-common-hardware-hackathon-projects-8e2fc66ee9b7#.5x4y36djn What's been tried.] | ||
+ | * [https://www.raspberrypi.org/magpi/issues/ The MagPi]. Magizine for Raspberry Pi. See issues 57 and 58 for interesting AIY projects. | ||
+ | * [https://github.com/joergi77/MagPiDownloader MagPi Downloader]. | ||
* [http://beagleboard.org/project Official list of Beagle Projects], there are many Beagle specific projects listed here. Many are inactive. ''List your project here once it running.'' | * [http://beagleboard.org/project Official list of Beagle Projects], there are many Beagle specific projects listed here. Many are inactive. ''List your project here once it running.'' | ||
* [http://www.youtube.com/watch?v=Mk1xjbA-ISE Augmented Reality Project], here's an idea that I think we can do on the Beagle. Rather than using augmented reality glasses, I'd suggest we use a [http://focus.ti.com/dlpdmd/docs/dlpdiscovery.tsp?sectionId=60&tabId=2235 TI DLP pico projector]. [http://www.hitlabnz.org/wiki/EmbeddedAR Here's] AR running on the Beagle. | * [http://www.youtube.com/watch?v=Mk1xjbA-ISE Augmented Reality Project], here's an idea that I think we can do on the Beagle. Rather than using augmented reality glasses, I'd suggest we use a [http://focus.ti.com/dlpdmd/docs/dlpdiscovery.tsp?sectionId=60&tabId=2235 TI DLP pico projector]. [http://www.hitlabnz.org/wiki/EmbeddedAR Here's] AR running on the Beagle. | ||
− | |||
− | |||
− | == | + | * [[BeagleBoard/GSoC]] Google summer code ideas. |
+ | |||
+ | == Full Projects == | ||
+ | |||
+ | === Fall 2019 === | ||
+ | Signup on [https://docs.google.com/document/d/17X4OdK0ltG-ERZir6rNPsHE7CHyzNWQ_cC7227xIK_4/edit Project Google Doc] | ||
+ | |||
+ | === Fall 2018 === | ||
+ | Signup on [https://docs.google.com/document/d/1bKxTJn2iTYHZJyTnvBZ29WC9F-hj-Pcmz_6wI-KO3tM/edit?usp=sharing Project Google Doc]. | ||
+ | |||
+ | === Fall 2017 === | ||
+ | Signup on [https://drive.google.com/drive/folders/0B5UNMAgIJB74V19KcUpmaFlxTEU?usp=sharing Project Google Doc]. | ||
+ | |||
+ | === Fall 2016 === | ||
+ | Signup on [https://docs.google.com/document/d/1CmHaiSR4ZpB56ubySgc_YtVJqB5rrsWMbpFULqjbn8U/edit Project Google Doc]. | ||
+ | |||
+ | * Interface the BeagleBone '''Blue''' to a robot. ([https://beagleboard.org/blue https://beagleboard.org/blue], [http://hackaday.com/2016/01/11/introducing-the-beaglebone-blue/ http://hackaday.com/2016/01/11/introducing-the-beaglebone-blue/], [https://www.element14.com/community/groups/open-source-hardware/blog/2016/01/14/new-beaglebone-blue-robotics-something https://www.element14.com/community/groups/open-source-hardware/blog/2016/01/14/new-beaglebone-blue-robotics-something] and [https://github.com/jadonk/beaglebone-blue https://github.com/jadonk/beaglebone-blue]) | ||
+ | * Interface the BeagleBone '''Green''' Wireless ([https://beagleboard.org/green-wireless https://beagleboard.org/green-wireless] and [http://wiki.seeed.cc/SeeedStudio_BeagleBone_Green_Wireless/ http://wiki.seeed.cc/SeeedStudio_BeagleBone_Green_Wireless/]) to some Grove Sensors ([http://wiki.seeed.cc/Grove_System/ http://wiki.seeed.cc/Grove_System/]) to do something interesting. | ||
+ | * Implement a DIY emergency button ([http://spectrum.ieee.org/geek-life/hands-on/diy-emergency-button-hack-a-nikeipod-sport-kit-to-create-an-elder-alert-system http://spectrum.ieee.org/geek-life/hands-on/diy-emergency-button-hack-a-nikeipod-sport-kit-to-create-an-elder-alert-system]). | ||
+ | * Build a simple CAN cape. | ||
+ | * Fix eEQP for the 4.4 kernel. | ||
+ | * Convert [https://github.com/Yona-Appletree/LEDscape https://github.com/Yona-Appletree/LEDscape] to use PRU remote proc | ||
+ | * Build user interface to control LEDs on ECE Christmas tree. ([https://github.com/MarkAYoder/BeagleBoard-exercises/tree/master/displays/LEDstring]) Could use [http://nodered.org/ Node-Red] or [https://developers.google.com/blockly/ blockly]. See past student project: [[ECE497_Project_Programmable_Light_Show]]. | ||
+ | * Run LabVIEW on the Bone. ([https://forums.ni.com/t5/LabVIEW/LINX-3-0-LabVIEW-for-BeagleBone-Black-and-Raspberry-Pi-2-3/td-p/3278758 https://forums.ni.com/t5/LabVIEW/LINX-3-0-LabVIEW-for-BeagleBone-Black-and-Raspberry-Pi-2-3/td-p/3278758]) | ||
+ | * Run MATLAB on the Bone. ([https://www.mathworks.com/help/supportpkg/beaglebone/examples/getting-started-with-beaglebone-black-support-package.html?searchHighlight=beaglebone%20tutorial https://www.mathworks.com/help/supportpkg/beaglebone/examples/getting-started-with-beaglebone-black-support-package.html?searchHighlight=beaglebone%20tutorial] and [https://www.mathworks.com/help/supportpkg/beagleboneio/examples/getting-started-with-matlab-support-package-for-beaglebone-black-hardware.html?searchHighlight=beaglebone%20tutorial https://www.mathworks.com/help/supportpkg/beagleboneio/examples/getting-started-with-matlab-support-package-for-beaglebone-black-hardware.html?searchHighlight=beaglebone%20tutorial]. | ||
+ | * Implement a 3D scanner similar to [https://hci.rwth-aachen.de/fabscan Fabscan PI] | ||
+ | |||
+ | === Fall 2014 === | ||
+ | * [http://www.makeymakey.com/ MakeyMakey Cape] | ||
+ | * [https://d396qusza40orc.cloudfront.net/conrob%2Fhardware_content%2FQuickBot_Wiring.pdf Simple Robot Cap] | ||
+ | * Fix the BoneScript [https://www.npmjs.org/package/i2c i2c] package | ||
+ | * Tabletop assistant similar to [http://cubicrobotics.ru/ this one] with voice recognition and further sentence processing using [http://nodered.org/ Node Red] or [https://ifttt.com/ IFTTT] | ||
+ | |||
+ | === Fall 2013 === | ||
+ | * [http://www.wireshark.org/about.html WireShark] | ||
+ | * [https://www.thingspeak.com/ ThingSpeak] | ||
+ | * [http://www.instructables.com/id/Make-Game-with-Rainbowduino/ Rainboduio Game] | ||
+ | |||
+ | === Fall 2012 === | ||
{| border="1" cellspacing="0" cellpadding="5" | {| border="1" cellspacing="0" cellpadding="5" | ||
− | ! | + | ! Team Members |
− | ! | + | ! Project Title |
− | ! Description | + | ! Description |
− | |||
|- | |- | ||
| Mark A. Yoder | | Mark A. Yoder | ||
− | | | + | | Spectrum Analyzer |
− | | | + | | http://www.oz9aec.net/index.php/beaglebone/480-rtlizer |
− | + | ||
+ | Uses Bone, LCD and a DVB dongle. | ||
|- | |- | ||
− | | | + | | |
− | | | + | | 3G modem |
− | + | | [http://mbed.org/cookbook/VodafoneUSBModem] | |
− | | [http:// | ||
|- | |- | ||
| Mark A. Yoder | | Mark A. Yoder | ||
− | + | | [http://www.edn.com/article/521185-How_to_design_a_digital_FM_radio.php Add a digital FM radio] | |
− | + | | Interface an FM radio SoC to the Beagle. | |
− | | [http:// | ||
|- | |- | ||
| Mark A. Yoder | | Mark A. Yoder | ||
− | + | | [http://www.instructables.com/id/Email-notification-bell/ Email notification bell] | |
− | + | | Make a real hardware bell ring when email arrives. Do it all on the Beagle without the need of a host PC. | |
− | | [http://www. | ||
|- | |- | ||
| Mark A. Yoder | | Mark A. Yoder | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| [https://gforge.ti.com/gf/project/tiesr TI Embedded Speech Recognizer] | | [https://gforge.ti.com/gf/project/tiesr TI Embedded Speech Recognizer] | ||
+ | | Port TI's fixed-point speech recognizer to the DSP. It currently runs on the ARM. | ||
|- | |- | ||
| Mark A. Yoder | | Mark A. Yoder | ||
− | | | + | | Kinect |
− | + | | [http://hackaday.com/2010/11/15/rendering-a-3d-environment-from-kinect-video/ Here] and [http://gamerfront.net/2010/12/with-a-second-kinect-you-can-map-out-your-bedroom-in-3d/4644 here] are some interesting things people are doing with Kinects. Maybe we could port it to the Beagle. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | | [http:// | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|} | |} | ||
− | |||
− | |||
=== Winter 2011-2012 === | === Winter 2011-2012 === | ||
Line 192: | Line 100: | ||
! Project Title | ! Project Title | ||
! Description | ! Description | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | [http://www.gigamegablog.com/2012/01/05/beaglebone-coding-101-blinking-an-led/ Blink LED] | ||
+ | [http://www.hive76.org/beagle-bone tweeting] | ||
+ | [http://imakethin.gs/blog/?p=2613 Washing-Up Detector] | ||
+ | | Doing things with BeagleBone | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | [http://beagleboard.org/project/webLightSwitch/ Home Automation] | ||
+ | [https://groups.google.com/forum/#!topic/beagleboard/rUBiPuTvOS0 via x10] | ||
+ | | Control lights, etc. with the Beagle. | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | [http://www.instructables.com/id/Email-notification-bell/ Email notification bell] | ||
+ | | Make a real hardware bell ring when email arrives. Do it all on the Beagle without the need of a host PC. | ||
|- | |- | ||
| Mark A. Yoder | | Mark A. Yoder | ||
Line 283: | Line 206: | ||
| Run classic pong, projecting the screen and using a camera to track user's hands for input. | | Run classic pong, projecting the screen and using a camera to track user's hands for input. | ||
|} | |} | ||
+ | |||
+ | == Mini Project Ideas == | ||
+ | |||
+ | === Fall 2012 === | ||
+ | |||
+ | {| border="1" cellspacing="0" cellpadding="5" | ||
+ | ! Suggestor | ||
+ | ! Implementor | ||
+ | ! Description | ||
+ | ! Link | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | | ||
+ | | Kill-A-Watt interface | ||
+ | | [http://www.forums.adafruit.com/search.php?t=15273&sid=53cf632c498272ff75cfe115cfd3bf06 Schematics] | ||
+ | |- | ||
+ | | Kevin Geisler <br> Tom Atnip | ||
+ | | | ||
+ | | Stream Audio over HTTP | ||
+ | | [http://gstreamer.freedesktop.org/ Gstreamer] | ||
+ | |- | ||
+ | | Kevin Geisler <br> Tom Atnip | ||
+ | | | ||
+ | | Stream Audio and Video over HTTP | ||
+ | | [http://gstreamer.freedesktop.org/ Gstreamer] | ||
+ | |- | ||
+ | | Ruffin White | ||
+ | | | ||
+ | | Grab images off a Canon digital SLR via USB | ||
+ | | [http://ultrawide.wordpress.com/2009/01/27/timelapse-photography-on-linux/ Time Laps] | ||
+ | |- | ||
+ | | Matthew Moravec | ||
+ | | | ||
+ | | Voice recognition | ||
+ | | [http://beagleboard.org/project/tiesr/ TIESR] | ||
+ | |} | ||
+ | |||
+ | === Winter 2011-2012 === | ||
+ | |||
+ | {| border="1" cellspacing="0" cellpadding="5" | ||
+ | ! Suggestor | ||
+ | ! Implementor | ||
+ | ! Description | ||
+ | ! Link | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | Mike Yuhas | ||
+ | | Interface the BeagleBoard with an SRF08 Ultrasonic Ranger over I2C | ||
+ | | [http://yetanotherhackersblog.wordpress.com/2011/04/07/interfacing-the-beagleboard-with-an-srf08-ultrasonic-ranger-over-i2c Ultrasonic Ranger] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | | ||
+ | | Compile the PowerVR examples | ||
+ | | [http://www.imgtec.com/powervr/insider/sdkdownloads/index.asp PowerVR Insider SDK Downloads] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | Douglas Selby | ||
+ | | Get TI' embedded speech recognizer installed and demo the examples. | ||
+ | | [https://gforge.ti.com/gf/project/tiesr TI Embedded Speech Recognizer] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | Stephen Mayhew | ||
+ | | Find who is doing what with Kinect on the Beagle and install and run it. | ||
+ | | [http://www.google.com/webhp?rlz=1C1GPCK_enUS392US392&sourceid=chrome-instant&ie=UTF-8&ion=1#hl=en&sugexp=ldymls&xhr=t&q=beagleboard+kinect&cp=0&qe=YmVhZ2xlYm9hcmQga2lu&qesig=9qrD0rFfjWfujRRGmkB_Bw&pkc=AFgZ2tn-cylx0f71PasgBKOazjBQY3VK712RWQ7DueEjQNAdbOHr6BCgUd9xdyXyPe8TWErkesrQ246vygwImnAS5mIzCG2-5g&pf=p&sclient=psy&rlz=1C1GPCK_enUS392US392&site=webhp&source=hp&aq=0&aqi=&aql=&oq=beagleboard+kin&pbx=1&bav=on.2,or.&fp=3e817b7ec5d13467&ion=1 Google - beagleboard kinect] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | | ||
+ | | Find some examples of how to use '''cmem'''. CMEM is an API and library for managing one or more blocks of physically contiguous memory. It also provides address translation services (e.g. virtual to physical translation) and user-mode cache management APIs. It's used for managing the shared memory between the ARM and the DSP on the processor. I've been unable to find examples of how to use it. | ||
+ | | [http://processors.wiki.ti.com/index.php/CMEM_Overview CMEM Overview] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | Yifei Li | ||
+ | | Change the splash screen to a Rose logo when the Beagle starts up | ||
+ | | [http://blog.bizmobiletech.com/?p=253&utm_source=feedburner&utm_medium=twitter&utm_campaign=Feed%3A+BeagleBoard+%28BeagleBoard.org%29 How to Change Angstrom Boot logo in beagleboard] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | Ziyi Zhang | ||
+ | | Do remote debugging with Eclipse. My page needs updating. This [http://www.lvr.com/eclipse1.htm tutorial] might be helpful. | ||
+ | | [[ECE497 Installing the Eclipse IDE]] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | | ||
+ | | Investigate Eigen. Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. Explicit vectorization is performed for SSE 2/3/4, ARM NEON, and AltiVec instruction sets, with graceful fallback to non-vectorized code. This means it should run fast on the Beagle. How fast does it run? Has anyone used it on the Beagle? | ||
+ | | [http://eigen.tuxfamily.org/index.php?title=Main_Page eigen.tuxfamily.org] | ||
+ | |- | ||
+ | | Mark A. Yoder | ||
+ | | | ||
+ | | Find what libraries are available for the DSP side of the DM 3730 and write some examples that use them. | ||
+ | | [http://focus.ti.com/docs/toolsw/folders/print/sprc265.html C64x+ DSP Library (DSPLIB)] | ||
+ | [http://focus.ti.com/docs/toolsw/folders/print/sprc092.html DSPLIB] | ||
+ | [http://focus.ti.com/docs/toolsw/folders/print/sprc094.html IMGLIB] | ||
+ | |- | ||
+ | | Jack Ma | ||
+ | | | ||
+ | | Install an RT kernel on beagleboard. If successful, this could turn into a full project for exploring RT system and application. | ||
+ | | | ||
+ | |} | ||
+ | |||
+ | |||
+ | {{YoderFoot}} |
Latest revision as of 06:47, 12 January 2023
Embedded Linux Class by Mark A. Yoder
One full project is done for the class and it's done with a team of 2 or 3. The goal is to have your work contribute to the open source world. Any code is generated will be kept on github.
What follows are
- Places to look for project ideas
- Feel free to add your own suggestions.
- Full Project ideas
- Add your own suggestions.
Contents
Sources for Project Ideas
Here are some links where you'll find ideas for your project.
- IEEE DIY IEEE Hands On
- Hackster.io
- What's been tried.
- The MagPi. Magizine for Raspberry Pi. See issues 57 and 58 for interesting AIY projects.
- MagPi Downloader.
- Official list of Beagle Projects, there are many Beagle specific projects listed here. Many are inactive. List your project here once it running.
- Augmented Reality Project, here's an idea that I think we can do on the Beagle. Rather than using augmented reality glasses, I'd suggest we use a TI DLP pico projector. Here's AR running on the Beagle.
- BeagleBoard/GSoC Google summer code ideas.
Full Projects
Fall 2019
Signup on Project Google Doc
Fall 2018
Signup on Project Google Doc.
Fall 2017
Signup on Project Google Doc.
Fall 2016
Signup on Project Google Doc.
- Interface the BeagleBone Blue to a robot. (https://beagleboard.org/blue, http://hackaday.com/2016/01/11/introducing-the-beaglebone-blue/, https://www.element14.com/community/groups/open-source-hardware/blog/2016/01/14/new-beaglebone-blue-robotics-something and https://github.com/jadonk/beaglebone-blue)
- Interface the BeagleBone Green Wireless (https://beagleboard.org/green-wireless and http://wiki.seeed.cc/SeeedStudio_BeagleBone_Green_Wireless/) to some Grove Sensors (http://wiki.seeed.cc/Grove_System/) to do something interesting.
- Implement a DIY emergency button (http://spectrum.ieee.org/geek-life/hands-on/diy-emergency-button-hack-a-nikeipod-sport-kit-to-create-an-elder-alert-system).
- Build a simple CAN cape.
- Fix eEQP for the 4.4 kernel.
- Convert https://github.com/Yona-Appletree/LEDscape to use PRU remote proc
- Build user interface to control LEDs on ECE Christmas tree. ([1]) Could use Node-Red or blockly. See past student project: ECE497_Project_Programmable_Light_Show.
- Run LabVIEW on the Bone. (https://forums.ni.com/t5/LabVIEW/LINX-3-0-LabVIEW-for-BeagleBone-Black-and-Raspberry-Pi-2-3/td-p/3278758)
- Run MATLAB on the Bone. (https://www.mathworks.com/help/supportpkg/beaglebone/examples/getting-started-with-beaglebone-black-support-package.html?searchHighlight=beaglebone%20tutorial and https://www.mathworks.com/help/supportpkg/beagleboneio/examples/getting-started-with-matlab-support-package-for-beaglebone-black-hardware.html?searchHighlight=beaglebone%20tutorial.
- Implement a 3D scanner similar to Fabscan PI
Fall 2014
- MakeyMakey Cape
- Simple Robot Cap
- Fix the BoneScript i2c package
- Tabletop assistant similar to this one with voice recognition and further sentence processing using Node Red or IFTTT
Fall 2013
Fall 2012
Team Members | Project Title | Description |
---|---|---|
Mark A. Yoder | Spectrum Analyzer | http://www.oz9aec.net/index.php/beaglebone/480-rtlizer
Uses Bone, LCD and a DVB dongle. |
3G modem | [2] | |
Mark A. Yoder | Add a digital FM radio | Interface an FM radio SoC to the Beagle. |
Mark A. Yoder | Email notification bell | Make a real hardware bell ring when email arrives. Do it all on the Beagle without the need of a host PC. |
Mark A. Yoder | TI Embedded Speech Recognizer | Port TI's fixed-point speech recognizer to the DSP. It currently runs on the ARM. |
Mark A. Yoder | Kinect | Here and here are some interesting things people are doing with Kinects. Maybe we could port it to the Beagle. |
Winter 2011-2012
Team Members | Project Title | Description |
---|---|---|
Mark A. Yoder | Blink LED | Doing things with BeagleBone |
Mark A. Yoder | Home Automation | Control lights, etc. with the Beagle. |
Mark A. Yoder | Email notification bell | Make a real hardware bell ring when email arrives. Do it all on the Beagle without the need of a host PC. |
Mark A. Yoder | 3D Structured Light using DLP® Technology | Create 3D maps using a DLP pico and the Beagle. |
Mark A. Yoder | Beagle Midi | Make the Beagle synthesize midi files. |
Mark A. Yoder | Beagle Power Management | Work up some power management demos. |
2011
Edit this page to add projects you would like to do. If you aren't in the class, add ideas you would like to see done by class members.
Team Members | Project Title | Description |
---|---|---|
Mark A. Yoder | TI Embedded Speech Recognizer | Port TI's fixed-point speech recognizer to the DSP. It currently runs on the ARM. |
Mark A. Yoder | Kinect | Here and here are some interesting things people are doing with Kinects. Maybe we could port it to the Beagle. |
Mike Lester | Accelerometer-based auto-leveled projection | Several projects have been started to add accelerometer support to the BeagleBoard. This project would involve getting an accelerometer installed and working, perhaps using a trainer board, as well the TI Pico Projector. The orientation data from the accelerometer would be used to rotate, skew, keystone the projected image in order to keep it level and normalized. |
Aaron Bamberger | Kinect Based 3d Scanner | Build some sort of motorized gantry that allows the Kinect to be rotated around (and possibly from top to bottom) of an arbitrary object. The motors would be controlled using the BeagleBoard's I2C or SPI interfaces. Use libfreenect to capture depth information from every side of the object as the Kinect rotates around the object. Use this data and OpenGL to build a 3d model of the scanned object |
Mark A. Yoder | Port winDSK6 to the Beagle | winDSK6 is a Windows program that talks to a TI 'C6711 DSK and performs many interesting audio effects. This project would implement the code running on the Windows side on the ARM. The ARM could capture a frame of audio and send it to the DSP for processing. The ARM could then send the processed audio to the speakers. c6run would be used to interact with the DSP. |
David Bliss | Automated Die Tester | Make a device that can roll a die, and keep statistics on how random the die is. The build can either be very complex, or very simple, depending on how you define "rolling a die". The software doesn't necessarily have to know what the numbers mean, it just has to be able to uniquely identify the sides. |
Stephen Mayhew | Set-Playing System | Set is a relatively simple card game that lends itself nicely to image recognition and computer play. The layout is not very structured, and the game play is pretty simple. This project would incorporate image recognition, projection of possible moves (using the pico projector), and maybe even speech synthesis, and recognition. For example, if someone didn't know how to play Set, then the board could take them through a tutorial, asking questions of the user as it went along ("If I have these 2 cards, what 3rd card would make a set?"). This would make for an interesting demo at conferences. |
Michael Fuson
Jay Dial |
Spectrum Analyzer | Create a real-time audio Spectrum analyzer on the BeagleBoard. Project Page |
2010
Team Members | Project Title | Description |
---|---|---|
Yannick Polius | pyWikiReader | This project is mostly software, with the hardware element being the use of the dsp. The idea is to tie together three technologies: speech recognition, speech synthesis, and internet access in order to create an interface capable of orating information to the user based on a vocal command. The implementation I have in mind is to use the Pocket Sphinx speech recognition engine to first understand what the user wants through speech, such as "Rose-Hulman". Once the speech is translated, the software can execute a Wikipedia search to pull said item's page. Most of the important info is contained within the introductory paragraph, so the software will take only that chunk and feed it into the Flite speech synthesis engine. The end result is a simple machine with "mother box" like usability, that is, no interaction besides what is natural to the user (speaking) should be necessary to retrieve the information. |
Paul Morrison Steven Stark |
3D Chess with Networking | This project would simulate a hand-held chess game, and the game would allow two player games using two beagleboards over a network connection. The graphics would use the beagle's PowerVR SGX for hardware accelerated graphics by using OpenGL. In addition to 3D graphics and networking, a third portion of the project would be to optimize the boot time because a chess computer should start up quickly. |
Tom Most David Baty Mark Jacobson |
Sumo Robot | The goal of this project is to create a robot capable of competing in the 3.0 kg weight class of a sumo competition (an example). This would have minor hardware and electronics elements, but would focus on communication with sensors using the BeagleBoard and the Linux kernel. At minimum, this involves sensors to detect the edge of the ring and the opposing robot. This would likely be implemented using Sharp IR rangefinders, a ultrasonic rangefinders, and ideally a camera. Sumo rules. |
Brian Embry Jessica Lipscomb Paul Banister |
ECE597 Network based MP3 player | Network based mp3 player. The Beagle will be programmed using a custom, protocol for transferring files from a network based server (x86 pc) to a Beagle. Speakers will be attached to the Beagle, where the file will be played back. Possible extensions are a LCD for displaying id3 tag information, and buttons for user interaction (next track, previous track, etc.) on the GPIO interface. |
Chris Routh J. Cody Collins Greg Jackson Keqiong Xin |
ECE597: Auto HUD | Use the beagle board to run image recognition on a camera feed located inside a car, and then signaling to the driver via a pico projector various objects of interest. |
Adam Jesionowski Qiang Jiang |
Adding Sense to Beagle (See BeagleBoard/GSoC/Ideas) | Sensory aware applications are becoming more mainstream with the release of the Apple iPhone. This project would combine both HW and SW to add sensory awareness to beagle. First, additional modules such as GPS, 3-axis accelerometers, Gyroscopes, Temperature Sensors, Humidity Sensors, Pressure Sensors, etc, would be added to beagle to compliment the microphone input in order to allow sensing of the real world environment. Then SW APIs would need to be layered on top to allow easy access to the sensory data for use by applications. |
Mitch Garvin Matt Luke Elliot Simon Jian Li |
Interactive Pong | Run classic pong, projecting the screen and using a camera to track user's hands for input. |
Mini Project Ideas
Fall 2012
Suggestor | Implementor | Description | Link |
---|---|---|---|
Mark A. Yoder | Kill-A-Watt interface | Schematics | |
Kevin Geisler Tom Atnip |
Stream Audio over HTTP | Gstreamer | |
Kevin Geisler Tom Atnip |
Stream Audio and Video over HTTP | Gstreamer | |
Ruffin White | Grab images off a Canon digital SLR via USB | Time Laps | |
Matthew Moravec | Voice recognition | TIESR |
Winter 2011-2012
Suggestor | Implementor | Description | Link |
---|---|---|---|
Mark A. Yoder | Mike Yuhas | Interface the BeagleBoard with an SRF08 Ultrasonic Ranger over I2C | Ultrasonic Ranger |
Mark A. Yoder | Compile the PowerVR examples | PowerVR Insider SDK Downloads | |
Mark A. Yoder | Douglas Selby | Get TI' embedded speech recognizer installed and demo the examples. | TI Embedded Speech Recognizer |
Mark A. Yoder | Stephen Mayhew | Find who is doing what with Kinect on the Beagle and install and run it. | Google - beagleboard kinect |
Mark A. Yoder | Find some examples of how to use cmem. CMEM is an API and library for managing one or more blocks of physically contiguous memory. It also provides address translation services (e.g. virtual to physical translation) and user-mode cache management APIs. It's used for managing the shared memory between the ARM and the DSP on the processor. I've been unable to find examples of how to use it. | CMEM Overview | |
Mark A. Yoder | Yifei Li | Change the splash screen to a Rose logo when the Beagle starts up | How to Change Angstrom Boot logo in beagleboard |
Mark A. Yoder | Ziyi Zhang | Do remote debugging with Eclipse. My page needs updating. This tutorial might be helpful. | ECE497 Installing the Eclipse IDE |
Mark A. Yoder | Investigate Eigen. Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. Explicit vectorization is performed for SSE 2/3/4, ARM NEON, and AltiVec instruction sets, with graceful fallback to non-vectorized code. This means it should run fast on the Beagle. How fast does it run? Has anyone used it on the Beagle? | eigen.tuxfamily.org | |
Mark A. Yoder | Find what libraries are available for the DSP side of the DM 3730 and write some examples that use them. | C64x+ DSP Library (DSPLIB) | |
Jack Ma | Install an RT kernel on beagleboard. If successful, this could turn into a full project for exploring RT system and application. |
Embedded Linux Class by Mark A. Yoder