<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://elinux.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://elinux.org/api.php?action=feedcontributions&amp;user=Whiteer&amp;feedformat=atom</id>
		<title>eLinux.org - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://elinux.org/api.php?action=feedcontributions&amp;user=Whiteer&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://elinux.org/Special:Contributions/Whiteer"/>
		<updated>2013-05-22T23:21:56Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.21alpha</generator>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-11-14T14:52:55Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Uw]]&lt;br /&gt;
== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Technical interest areas:&lt;br /&gt;
::* Signal/Image Processing&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Mathematics in general&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin] profile&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-11-14T14:52:30Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Uw]]&lt;br /&gt;
== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Technical interest areas:&lt;br /&gt;
::* Signal/Image Processing&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Mathematics in general&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin] profile&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-08T20:02:01Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:53:50Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Executive Summary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
An Embedded version of Ubuntu has been successfully installed, and ROS has been installed on top of it.  While I make my final SLAM algorithm decision there is nothing else that works.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Building the world model and localizing my self in it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With this project I hope to provide a example for my Aerial-robotics team members to follow and a starting point that leads them to increasingly awesome aerial robotics projects.&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are a few fairly large installs (embedded Ubuntu, ROS) required.  I'll pretty up the procedure and put throw it up here when I think it is at its most painless.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Pending...&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The operating system running on the -xm is an embedded version of Ubuntu 12.04.  ROS (Robotic Operating System) is installed within this OS, providing hardware abstraction, device drivers, libraries, et cetera, that provide simplified control of the robot platform.  OpenCV is embedded in ROS and is responsible for the robot's interpreting the data provided by the camera and constructing an accurate representation of the world.  While I haven't yet made my final decision on which SLAM algorithm to use, I am leaning towards [http://www.openslam.org/gmapping.html GMapping].&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:53:21Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Executive Summary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
An Embedded version of Ubuntu has been successfully installed, and ROS has been installed on top of it.  While I make my final SLAM algorithm decision there is nothing else that works.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Building the world model and localizing my self in it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
With this project I hope to provide a example for my Aerial-robotics team members to follow and a starting point that leads them to increasingly awesome aerial robotics projects.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are a few fairly large installs (embedded Ubuntu, ROS) required.  I'll pretty up the procedure and put throw it up here when I think it is at its most painless.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Pending...&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The operating system running on the -xm is an embedded version of Ubuntu 12.04.  ROS (Robotic Operating System) is installed within this OS, providing hardware abstraction, device drivers, libraries, et cetera, that provide simplified control of the robot platform.  OpenCV is embedded in ROS and is responsible for the robot's interpreting the data provided by the camera and constructing an accurate representation of the world.  While I haven't yet made my final decision on which SLAM algorithm to use, I am leaning towards [http://www.openslam.org/gmapping.html GMapping].&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:49:06Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Installation Instructions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are a few fairly large installs (embedded Ubuntu, ROS) required.  I'll pretty up the procedure and put throw it up here when I think it is at its most painless.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Pending...&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The operating system running on the -xm is an embedded version of Ubuntu 12.04.  ROS (Robotic Operating System) is installed within this OS, providing hardware abstraction, device drivers, libraries, et cetera, that provide simplified control of the robot platform.  OpenCV is embedded in ROS and is responsible for the robot's interpreting the data provided by the camera and constructing an accurate representation of the world.  While I haven't yet made my final decision on which SLAM algorithm to use, I am leaning towards [http://www.openslam.org/gmapping.html GMapping].&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:46:19Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* User Instructions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Pending...&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The operating system running on the -xm is an embedded version of Ubuntu 12.04.  ROS (Robotic Operating System) is installed within this OS, providing hardware abstraction, device drivers, libraries, et cetera, that provide simplified control of the robot platform.  OpenCV is embedded in ROS and is responsible for the robot's interpreting the data provided by the camera and constructing an accurate representation of the world.  While I haven't yet made my final decision on which SLAM algorithm to use, I am leaning towards [http://www.openslam.org/gmapping.html GMapping].&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:45:41Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Theory of Operation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The operating system running on the -xm is an embedded version of Ubuntu 12.04.  ROS (Robotic Operating System) is installed within this OS, providing hardware abstraction, device drivers, libraries, et cetera, that provide simplified control of the robot platform.  OpenCV is embedded in ROS and is responsible for the robot's interpreting the data provided by the camera and constructing an accurate representation of the world.  While I haven't yet made my final decision on which SLAM algorithm to use, I am leaning towards [http://www.openslam.org/gmapping.html GMapping].&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:35:50Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Conclusions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nothing yet.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:35:40Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Future Work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:35:24Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Conclusions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:35:08Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Work Breakdown */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As a solo group I'll be the only one working on this project.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:34:20Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Highlights */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
While there are currently no highlights, this [http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=IMSozUpFFkU video] provides an idea of what I would like to do, although the quality of their results is much higher than I am expecting to achieve.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:29:53Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Conclusions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:29:43Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Conclusions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  #Useful sensors include:&lt;br /&gt;
#Laser scanning range-finder&lt;br /&gt;
#IMU (Inertial measurement unit)   &lt;br /&gt;
#Digital Compass&lt;br /&gt;
#GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:29:07Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Conclusions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In order to improve performance once could bolster the sensory profile of the platform.  Useful sensors include:&lt;br /&gt;
Laser scanning range-finder&lt;br /&gt;
IMU (Inertial measurement unit)   &lt;br /&gt;
Digital Compass&lt;br /&gt;
GPS&lt;br /&gt;
&lt;br /&gt;
The incorporation of the data gathered from these sensors will improve the robot's model of the world and decrease the uncertainty it has about its location in the model.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:22:40Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Executive Summary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
In autonomous navigation understanding the robot's surrounding environment, as well as its position in this environment, is of paramount importance.  This project attempts to leverage the open-source efforts resulting in simultaneous localization and mapping (SLAM) algorithms and use them, in collaboration with the Beagleboard -xm, to develop a 3-D model of the world surrounding the board as it moves through space.  Obviously the more (quality) sensory data used in a SLAM algorithm the better the results, but at this time a camera will be the only sensor device, although there is the possibility of incorporating a gyroscope.  A primary objective of this project is to test the feasibility of using the Beagleboard -xm as the &amp;quot;brain&amp;quot; for an autonomous quad-copter.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_SLAM_via_ROS</id>
		<title>ECE497 SLAM via ROS</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_SLAM_via_ROS"/>
				<updated>2012-11-02T17:11:25Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Created page with &amp;quot;Project Team members: Elias White  == Executive Summary == &amp;lt;!-- Give two sentence intro to the project. --&amp;gt;  &amp;lt;!-- Give two sentences tell...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Hello&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_Contributions_and_Project_Status</id>
		<title>ECE497 Contributions and Project Status</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_Contributions_and_Project_Status"/>
				<updated>2012-11-02T17:11:01Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Contributions]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
== Fall 2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
Please edit this page and add your project to this list. Copy my [[ECE497 Project Template]] to your own eLinux page and include the title of your project in the name of the page.  &lt;br /&gt;
&lt;br /&gt;
Please make the list alphabetical by family name.&lt;br /&gt;
&lt;br /&gt;
Take a look at what you and others have contributed.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- &lt;br /&gt;
! Name&lt;br /&gt;
! Contributions&lt;br /&gt;
! Project&lt;br /&gt;
! git repository&lt;br /&gt;
|-&lt;br /&gt;
| [[User:atniptw | Tom Atnip]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Beagle VNS | Beagle VNS]]&lt;br /&gt;
| [https://github.com/atniptw/ atniptw]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:larmorgs | Greg Larmore]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/larmorgs/ larmorgs]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:jessebrannon | Jesse Brannon]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Rover | Rover]]&lt;br /&gt;
| [https://github.com/brannojs/ brannojs]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Xinyu1991 | Xinyu Cheng]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/xinyu1991]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:correlbn | Bryan Correll]]&lt;br /&gt;
| [[Special:Contributions/correlbn|contrib]]&lt;br /&gt;
| [[BeagleBone PRU | BeagleBone PRU]]&lt;br /&gt;
| [https://github.com/correlbn/My-Beagle-Project/ Correlbn]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:draneaw | Alex Drane]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 draneaw Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/draneaw/My-Beagle-Project draneaw]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:duganje | Josh Dugan]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project: XBee|XBee]]&lt;br /&gt;
| [https://github.com/duganje/ duganje]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Geislekj | Kevin Geisler]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Beagle VNS | Beagle VNS]]&lt;br /&gt;
| [https://github.com/geislekj/ geislekj]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:chris.good | Christopher A Good]]&lt;br /&gt;
| [[Special:Contributions/Chris.good|contrib]]&lt;br /&gt;
| [[ECE497 Project Rover | Rover]]&lt;br /&gt;
| [https://github.com/goodca/ goodca]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:hansenrl | Ross Hansen]]&lt;br /&gt;
| [[Special:Contributions/hansenrl|contrib]]&lt;br /&gt;
| [[ECE497 Project Rover | Rover]]&lt;br /&gt;
| [https://github.com/hansenrl/ Hansenrl]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:jungeml | Michael Junge]]&lt;br /&gt;
| [[Special:Contributions/jungeml|contrib]]&lt;br /&gt;
| [[ECE497 Project Rover | Rover]]&lt;br /&gt;
| [https://github.com/jungeml/ Jungeml]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Lix | Xia Li]]&lt;br /&gt;
| [[Special:Contributions/Lix|contrib]]&lt;br /&gt;
| [[ECE497 Lix Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/1984xiali/ xiali]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:mmoravec | Matthew Moravec]]&lt;br /&gt;
| [[Special:Contributions/mmoravec|contrib]]&lt;br /&gt;
| [[ECE497 Project: XBee|XBee]]&lt;br /&gt;
| [https://github.com/mmoravec/ mmoravec]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ngop | Peter Ngo]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 ngop Project: Beaglebone PRU|Beaglebone PRU]]&lt;br /&gt;
| [https://github.com/ngop/ ngop]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:shinnsm|Stephen Shinn]]&lt;br /&gt;
| [[Special:Contributions/shinnsm|contrib]]&lt;br /&gt;
| [[ECE497 Project: XBee|XBee]]&lt;br /&gt;
| [https://github.com/shinnsm shinnsm]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Yoder | Mark A. Yoder]]&lt;br /&gt;
| [[Special:Contributions/Yoder | contrib]]&lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/MarkAYoder MarkAYoder]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Popenhjc | James Popenhagen]]&lt;br /&gt;
| &lt;br /&gt;
| [[BeagleBone PRU | BeagleBone PRU]]&lt;br /&gt;
| [https://github.com/popenhjc/ popenhjc]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Whiteer | Elias White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 SLAM via ROS | My Beagle Project]]&lt;br /&gt;
| [https://github.com/whiteer whiteer]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ruff | Ruffin White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Beagle VNS | Beagle VNS]]&lt;br /&gt;
| [https://github.com/ruffsl/ ruffsl]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Richarsm | Sean Richardson]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 richarsm Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/seanrich Sean Richardson]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Millerap | Andrew Miller]]&lt;br /&gt;
|&lt;br /&gt;
| [[ECE 497 millerap Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/millerap millerap]&lt;br /&gt;
|-| &lt;br /&gt;
| [[User:Astroricks | Yue Zhang]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Yue Zhang Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/Astroricks/Beagle-Project Yue Zhang]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Lobdeljt | John Lobdell]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE 497 lobdeljt Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/jtlobdell jtlobdell]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Winter 2011-2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Contributions ===&lt;br /&gt;
&lt;br /&gt;
# [[Special:Contributions/Yuming | Yuming Cao]]&lt;br /&gt;
# [[Special:Contributions/Yifei | Yifei Li]]&lt;br /&gt;
# [[Special:Contributions/Harrisgw | Greg Harrison]]&lt;br /&gt;
# [[Special:Contributions/mac | Jack Ma]]&lt;br /&gt;
# [[Special:Contributions/Gemini91 | Guanqun Wang]]&lt;br /&gt;
# [[Special:Contributions/Yanj | Mona Yan]]&lt;br /&gt;
# [[Special:Contributions/Yoder | Mark A. Yoder]]&lt;br /&gt;
# [[Special:Contributions/Yuhasmj | Michael Yuhas]]&lt;br /&gt;
# [[Special:Contributions/Ziyi Zhang | Ziyi Zhang]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | David Zitnik]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | Alex Drane]]&lt;br /&gt;
# [[Special:Contributions/jessebrannon | Jesse Brannon]]&lt;br /&gt;
# [[Special:Contributions/larmorgs | Greg Larmore]]&lt;br /&gt;
# [[Special:Contributions/jungeml | Michael Junge]]&lt;br /&gt;
# [[Special:Contributions/millerap | Andrew Miller]]&lt;br /&gt;
# [[Special:Contributions/correlbn | Bryan Correll]]&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Yoder | Mark A. Yoder]], [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
# [[user:Yanj|Mona Yan]] and [[user:Harrisgw| Greg Harrison]], [[PS EYE QT PROJECT | Playstation Eye Audio with Qt]]&lt;br /&gt;
# [[user:Caogecym | Yuming Cao]] and [[user:Ziyi Zhang | Ziyi Zhang]], [[Node.js Weather Station]]&lt;br /&gt;
# [[user:Yifei| Yifei Li]] and [[user:Gemini91| Guanqun Wang]], [[ Kinect Project | Play games using Kinect on Beagleboard]]&lt;br /&gt;
# [[user:Yuhasmj| Michael J. Yuhas]] and [[user:mac | Jack Ma]], [[ Multiple Partitions via U-boot | Multiple Partitions via U-boot ]]&lt;br /&gt;
# [[user:Zitnikdj| David Zitnik]], [[ ECE497 Project: Twitter Java Application | Twitter Java Application ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-02T17:09:11Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
Hello&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-02T17:05:30Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:whiteer|Elias White]]&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-02T17:04:59Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:Whiteer|Elias White]], (List all the team members here with link to their eLinux User page.  Use my format.&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-02T17:03:53Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
Team members: [[user:Whiteer|Elias White]], (List all the team members here with link to their eLinux User page.  Use my format.&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-02T17:02:53Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Team members: [[user:Whiteer|Elias White]], (List all the team members here with link to their eLinux User page.  Use my format.&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_whiteer_Project</id>
		<title>ECE497 whiteer Project</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_whiteer_Project"/>
				<updated>2012-11-02T17:01:46Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Created page with &amp;quot;Project  Team members: Elias White, (List all the team members here with link to their eLinux User page.  Use my format.  == Executive Su...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Project]]&lt;br /&gt;
&lt;br /&gt;
Team members: [[user:Whiteer|Elias White]], (List all the team members here with link to their eLinux User page.  Use my format.&lt;br /&gt;
&lt;br /&gt;
== Executive Summary ==&lt;br /&gt;
&lt;br /&gt;
Give two sentence intro to the project.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what works.&lt;br /&gt;
&lt;br /&gt;
Give two sentences telling what isn't working.&lt;br /&gt;
&lt;br /&gt;
End with a two sentence conclusion.&lt;br /&gt;
&lt;br /&gt;
The sentence count is approximate and only to give an idea of the expected length.&lt;br /&gt;
&lt;br /&gt;
== Installation Instructions ==&lt;br /&gt;
&lt;br /&gt;
Give step by step instructions on how to install your project on the SPEd2 image.  &lt;br /&gt;
&lt;br /&gt;
* Include your [https://github.com/ github] path as a link like this:  [https://github.com/MarkAYoder/gitLearn https://github.com/MarkAYoder/gitLearn].  &lt;br /&gt;
* Include any additional packages installed via '''opkg'''.&lt;br /&gt;
* Include kernel mods.&lt;br /&gt;
* If there is extra hardware needed, include links to where it can be obtained.&lt;br /&gt;
&lt;br /&gt;
== User Instructions ==&lt;br /&gt;
&lt;br /&gt;
Once everything is installed, how do you use the program?  Give details here, so if you have a long user manual, link to it here.&lt;br /&gt;
&lt;br /&gt;
== Highlights ==&lt;br /&gt;
&lt;br /&gt;
Here is where you brag about what your project can do.&lt;br /&gt;
&lt;br /&gt;
Include a [http://www.youtube.com/ YouTube] demo.&lt;br /&gt;
&lt;br /&gt;
== Theory of Operation ==&lt;br /&gt;
&lt;br /&gt;
Give a high level overview of the structure of your software.  Are you using GStreamer?  Show a diagram of the pipeline.  Are you running multiple tasks?  Show what they do and how they interact.&lt;br /&gt;
&lt;br /&gt;
== Work Breakdown ==&lt;br /&gt;
&lt;br /&gt;
List the major tasks in your project and who did what.&lt;br /&gt;
&lt;br /&gt;
Also list here what doesn't work yet and when you think it will be finished and who is finishing it.&lt;br /&gt;
&lt;br /&gt;
== Future Work ==&lt;br /&gt;
&lt;br /&gt;
Suggest addition things that could be done with this project.&lt;br /&gt;
&lt;br /&gt;
== Conclusions ==&lt;br /&gt;
&lt;br /&gt;
Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/EBC_Exercise_10_Flashing_an_LED</id>
		<title>EBC Exercise 10 Flashing an LED</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/EBC_Exercise_10_Flashing_an_LED"/>
				<updated>2012-09-18T08:18:54Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:EmbeddedBeagleClass]]&lt;br /&gt;
[[Category:ECE497]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
The [http://en.wikipedia.org/wiki/Hello_world_program &amp;quot;Hello World&amp;quot;] program is the traditional first program for many classes.  Flashing an LED is the embedded equivalent.  Here we will explore a few ways to flash and LED on the Beagle and explore General Purpose I/O (gpio) along the way.  These calls will be done from the command line of the Beagle, so there is no need for the host computer.&lt;br /&gt;
&lt;br /&gt;
== gpio via the Shell Command Line and sysfs ==&lt;br /&gt;
&lt;br /&gt;
('''Note''':  Draw the new diagrams with [http://engineersofthecorn.blogspot.com/2012/06/fritzing-part-for-beaglebone.html this].)&lt;br /&gt;
&lt;br /&gt;
The easiest way to do general purpose I/O (gpio) on the Beagle is through a terminal window and a shell prompt. In Linux most everything is treated as a file.  Even things that aren't files. In our class we'll use a virtual file system called '''sysfs'''.  sysfs exposes the drivers for the hardware so you get easily use them.&lt;br /&gt;
&lt;br /&gt;
Try this, open a terminal and type:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 block/  bus/  class/  dev/  devices/  firmware/  fs/  kernel/  module/  power/&lt;br /&gt;
&lt;br /&gt;
Here we see several directories that represent hardware we can control. Explore a bit and see what you find.&lt;br /&gt;
&lt;br /&gt;
Now try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 bccat/      hwmon/        mtd/             scsi_disk/     usb_device/&lt;br /&gt;
 bdi/        i2c-adapter/  net/             scsi_generic/  usbmon/&lt;br /&gt;
 block/      i2c-dev/      omap-previewer/  scsi_host/     vc/&lt;br /&gt;
 bluetooth/  input/        omap-resizer/    sound/         video4linux/&lt;br /&gt;
 bsg/        leds/         pvr/             spi_master/    vtconsole/&lt;br /&gt;
 display/    mdio_bus/     regulator/       spidev/&lt;br /&gt;
 firmware/   mem/          rfkill/          thermal/&lt;br /&gt;
 gpio/       misc/         rtc/             tty/&lt;br /&gt;
 graphics/   mmc_host/     scsi_device/     ubi/&lt;br /&gt;
&lt;br /&gt;
Explore some.  What do you find?  In '''graphics''' you will see the 3 frame buffers supported by the processor.  In '''sound''' you'll see the [http://www.alsa-project.org/main/index.php/Main_Page alsa] sound devices.&lt;br /&gt;
&lt;br /&gt;
== Flashing the user LEDs ==&lt;br /&gt;
&lt;br /&gt;
The Beagle xM has two user LEDS, '''user0''' and '''user1''', that you can control.  The Bone has 4. Try this:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/leds'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 beaglebeagleboard::pmu_stat@  beagleboard::usr0@  beagleboard::usr1@&lt;br /&gt;
&lt;br /&gt;
Here you see the directories for controlling each of the usr LEDs. By default, usr0 flashes a heartbeat pattern and usr1 flashes when the micro SD card is accessed.  Let's control usr0.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd beagleboard\:\:usr0'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 brightness  device@  max_brightness  power/  subsystem@  trigger  uevent&lt;br /&gt;
&lt;br /&gt;
See what's in '''brightness''', '''max_brightness''' and '''trigger''' by using the &amp;lt;code&amp;gt;cat&amp;lt;/code&amp;gt; command.  For example:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 none nand-disk mmc0 [heartbeat]&lt;br /&gt;
&lt;br /&gt;
This shows trigger can have 4 values.  The present value is '''heartbeat'''.  Check the LED, is the beating?  You can stop the heartbeat via:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo none &amp;gt; trigger'''&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 [none] nand-disk mmc0 heartbeat &lt;br /&gt;
&lt;br /&gt;
Did it stop beating?  You can now turn it on and off with:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 1 &amp;gt; brightness'''&lt;br /&gt;
 beagle$ '''echo 0 &amp;gt; brightness'''&lt;br /&gt;
&lt;br /&gt;
Is it responding correctly?&lt;br /&gt;
&lt;br /&gt;
The Bone has more trigger options.  Try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 [none] mmc0 timer heartbeat backlight gpio default-on &lt;br /&gt;
 beagle$ '''echo timer &amp;gt; trigger'''&lt;br /&gt;
 brightness  delay_on  max_brightness  subsystem  uevent&lt;br /&gt;
 delay_off   device    power           trigger&lt;br /&gt;
 beagle$ '''echo 100 &amp;gt; delay_on'''&lt;br /&gt;
 beagle$ '''echo 900 &amp;gt; delay_off'''&lt;br /&gt;
&lt;br /&gt;
What does this do?&lt;br /&gt;
&lt;br /&gt;
== Adding your own LED - bone ==&lt;br /&gt;
&lt;br /&gt;
It's not hard to use the gpio pins to control your own LED. All you need is an LED and a 220&amp;amp;Omega; resistor. Here's a picture of how it's wired. We are just doing the LED at the top of the breadboard for now.&lt;br /&gt;
&lt;br /&gt;
[[File:Bone gpio.JPG|300px]]&lt;br /&gt;
[[File:BoneGPIO.png|300px]]&lt;br /&gt;
&lt;br /&gt;
So how do you know where to connect it?  The BeagleBone [http://beagleboard.org/static/beaglebone/latest/Docs/Hardware/BONE_SRM.pdf System Reference Manual] has the details.  Figure 3 on page 18 of RevA5.01 shows:&lt;br /&gt;
&lt;br /&gt;
[[File:Beagle Bone.jpg|300px]]&lt;br /&gt;
&lt;br /&gt;
There at two expansion headers, P8 and P9.  Look at the bottom of the left header and you'll see it's labeled '''P9'''. Table 11 on page 59 shows the pinout for P9.&lt;br /&gt;
&lt;br /&gt;
[[File:Bone P9 pinout.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
On the first photo above you can see that pin 1 (Ground) is wired to the '''-''' bus and pin 3 (3.3V) is wired to the '''+''' bus. The 220&amp;amp;Omega; resistor is wired to the '''-''' bus and the other end is attached to the negative lead of the LED.  The positive lead is attached to pin 12 which, as shown in Table 11, is attached to '''gpio1_28'''.  The gpio pins are in banks of 32 each, so to find the gpio number to use on the Beagle, use 1*32+28='''60'''.  Here's how you turn it on&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 export  gpiochip0  gpiochip32  gpiochip64  gpiochip96  unexport&lt;br /&gt;
&lt;br /&gt;
Presently no gpio pins are visible.  You need to tell it which pin to export&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 60 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 gpio60  gpiochip0  gpiochip32  gpiochip64  gpiochip96&lt;br /&gt;
&lt;br /&gt;
Notice '''gpio60''' has appeared.  All we need to do is tell it which direction and then turn it on.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd gpio60'''&lt;br /&gt;
 beagle$ '''echo out &amp;gt; direction'''&lt;br /&gt;
 beagle$ '''echo 1 &amp;gt; value'''&lt;br /&gt;
&lt;br /&gt;
Your LED should be on!  When you are done you can unexport the pin and it will disappear.&lt;br /&gt;
 beagle$ cd ..&lt;br /&gt;
 beagle$ '''echo 60 &amp;gt; unexport'''&lt;br /&gt;
&lt;br /&gt;
== Reading a switch - bone ==&lt;br /&gt;
&lt;br /&gt;
Now that you have an LED working, wiring in a switch is easy.  The picture above shows a push button switch wired in at the bottom of the P9 header.  Attach the '''+''' bus to one pole on the switch with a wire.  The other end of the switch is attached to pin 42 which is '''gpio0_7'''. &lt;br /&gt;
&lt;br /&gt;
Based on what you saw above, show how to read the switch.&lt;br /&gt;
&lt;br /&gt;
Once you have the switch and LED working you can use the following scripts to play with them.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd ~/exercises/gpio'''&lt;br /&gt;
 beagle$ '''./togglegpio.sh 60 0.1'''&lt;br /&gt;
&lt;br /&gt;
The LED should be blinking on and off.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''./readgpio.sh 7'''&lt;br /&gt;
&lt;br /&gt;
Push the pushbutton and see what happens.&lt;br /&gt;
&lt;br /&gt;
How can this work without a pulldown resistor? It turns out the Bone has an internal pulldown (and up) resistor that can be software enabled.  Try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/kernel/debug/omap_mux'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 ain0               gpmc_ad2        lcd_data3      mii1_txd2&lt;br /&gt;
 ain1               gpmc_ad3        lcd_data4      mii1_txd3&lt;br /&gt;
 ain2               gpmc_ad4        lcd_data5      mii1_txen&lt;br /&gt;
 ain3               gpmc_ad5        lcd_data6      mmc0_clk&lt;br /&gt;
 ain4               gpmc_ad6        lcd_data7      mmc0_cmd&lt;br /&gt;
 ain5               gpmc_ad7        lcd_data8      mmc0_dat0&lt;br /&gt;
 ain6               gpmc_ad8        lcd_data9      mmc0_dat1&lt;br /&gt;
 ain7               gpmc_ad9        lcd_hsync      mmc0_dat2&lt;br /&gt;
 board              gpmc_advn_ale   lcd_pclk       mmc0_dat3&lt;br /&gt;
 ecap0_in_pwm0_out  gpmc_ben0_cle   lcd_vsync      rmii1_refclk&lt;br /&gt;
 emu0               gpmc_ben1       mcasp0_aclkr   spi0_cs0&lt;br /&gt;
 emu1               gpmc_clk        mcasp0_aclkx   spi0_cs1&lt;br /&gt;
 gpmc_a0            gpmc_csn0       mcasp0_ahclkr  spi0_d0&lt;br /&gt;
 gpmc_a1            gpmc_csn1       mcasp0_ahclkx  spi0_d1&lt;br /&gt;
 gpmc_a10           gpmc_csn2       mcasp0_axr0    spi0_sclk&lt;br /&gt;
 gpmc_a11           gpmc_csn3       mcasp0_axr1    uart0_ctsn&lt;br /&gt;
 gpmc_a2            gpmc_oen_ren    mcasp0_fsr     uart0_rtsn&lt;br /&gt;
 gpmc_a3            gpmc_wait0      mcasp0_fsx     uart0_rxd&lt;br /&gt;
 gpmc_a4            gpmc_wen        mdio_clk       uart0_txd&lt;br /&gt;
 gpmc_a5            gpmc_wpn        mdio_data      uart1_ctsn&lt;br /&gt;
 gpmc_a6            i2c0_scl        mii1_col       uart1_rtsn&lt;br /&gt;
 gpmc_a7            i2c0_sda        mii1_crs       uart1_rxd&lt;br /&gt;
 gpmc_a8            lcd_ac_bias_en  mii1_rxclk     uart1_txd&lt;br /&gt;
 gpmc_a9            lcd_data0       mii1_rxd0      usb0_drvvbus&lt;br /&gt;
 gpmc_ad0           lcd_data1       mii1_rxd1      usb1_drvvbus&lt;br /&gt;
 gpmc_ad1           lcd_data10      mii1_rxd2      vrefn&lt;br /&gt;
 gpmc_ad10          lcd_data11      mii1_rxd3      vrefp&lt;br /&gt;
 gpmc_ad11          lcd_data12      mii1_rxdv      xdma_event_intr0&lt;br /&gt;
 gpmc_ad12          lcd_data13      mii1_rxerr     xdma_event_intr1&lt;br /&gt;
 gpmc_ad13          lcd_data14      mii1_txclk&lt;br /&gt;
 gpmc_ad14          lcd_data15      mii1_txd0&lt;br /&gt;
 gpmc_ad15          lcd_data2       mii1_txd1&lt;br /&gt;
 beagle$ '''ls | wc'''&lt;br /&gt;
    125     125    1220&lt;br /&gt;
&lt;br /&gt;
Here you will find a list of how all the pin muxes are set. There are some 125 of them!&lt;br /&gt;
How do you find which one is gpio0_7?&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''grep gpio0_7 *'''&lt;br /&gt;
 ecap0_in_pwm0_out:name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0027), b NA, t NA&lt;br /&gt;
 ''ecap0_in_pwm0_out'':signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | ''gpio0_7''&lt;br /&gt;
&lt;br /&gt;
'''ecap0_in_pwm0_out''' is the file that contains gpio0_7.  Look up gpio0_7&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat ecap0_in_pwm0_out'''&lt;br /&gt;
 name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0027), b NA, t NA&lt;br /&gt;
 mode: ''OMAP_PIN_INPUT_PULLDOWN'' | OMAP_MUX_MODE7&lt;br /&gt;
 signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | gpio0_7&lt;br /&gt;
&lt;br /&gt;
It's set to be a PULLDOWN.  Sectiion 9.2.2.2, Page 877 of the AM335x Technical Reference manual discusses Pull Selection and tells which bits do what.  The '''0x0027''' is the code that says which MODE is used and how the pull up/down resistor is set. (There seems to be a mismatch between the manual and the bone.  The manual says bit 3 of 0x0027 enables the pull up/down.  Bit 3 isn’t set, but the pull down is working.)&lt;br /&gt;
&lt;br /&gt;
You can switch the gpio pin to pullup.  Try&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 0x0037 &amp;gt; ecap0_in_pwm0_out'''&lt;br /&gt;
 beagle$ '''cat ecap0_in_pwm0_out''' &lt;br /&gt;
 name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0037), b NA, t NA&lt;br /&gt;
 mode: OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE7&lt;br /&gt;
 signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | gpio0_7&lt;br /&gt;
&lt;br /&gt;
Does it act like a pullup resistor is attached?&lt;br /&gt;
&lt;br /&gt;
=== Challenge ===&lt;br /&gt;
&lt;br /&gt;
* Can you modify the scripts above to read the switch and turn the LED on and off?&lt;br /&gt;
* Rewire your switch to work with a pullup resistor.&lt;br /&gt;
&lt;br /&gt;
== Analog in - bone ==&lt;br /&gt;
&lt;br /&gt;
(This is based on [http://www.gigamegablog.com/2012/01/22/beaglebone-coding-101-using-the-serial-and-analog-pins/ this].)&lt;br /&gt;
&lt;br /&gt;
The bone has eight Analog Inputs.  Several are exposed on P9.  They are labeled '''AIN''' in table 11 above.  How many do you find?&lt;br /&gt;
&lt;br /&gt;
The AIN pins are sampled at 12 bits and 100k samples per second.  The input voltage is between 0 and 1.8V.  Fortunately, both voltages are available on P9.&lt;br /&gt;
&lt;br /&gt;
The photo above shows a small potentiometer wired to the bone.  One end goes to the analog ground (pin 34), the other analog 1.8V (pin 32). The wiper is attached to '''AIN5''' which is pin 36.&lt;br /&gt;
&lt;br /&gt;
You interact with the analog in much like the gpio, but it appears in a different location.  How do you find that location?  One approach is the '''find''' command.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''find / -name ain5'''&lt;br /&gt;
 /sys/devices/platform/omap/tsc/ain5&lt;br /&gt;
 /sys/kernel/debug/omap_mux/ain5&lt;br /&gt;
 '''^C'''&lt;br /&gt;
&lt;br /&gt;
I used '''Ctrl-C''' to interrupt since it already found what I wanted.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/devices/platform/tsc'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 ain1  ain3  ain5  ain7  driver    power      uevent&lt;br /&gt;
 ain2  ain4  ain6  ain8  modalias  subsystem&lt;br /&gt;
&lt;br /&gt;
There are the various analog inputs, but watch out.  This interface starts numbering at '''1''' and Table 11 starts at '''0''', so to read AIN5 you need to look at '''ain6'''!&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat ain6'''&lt;br /&gt;
 1185&lt;br /&gt;
&lt;br /&gt;
(Unfortunately the interface doesn't print a RETURN after the value.)&lt;br /&gt;
Change the pot and rerun the cat.  What's the min and max value you get?  Is it 12 bits?&lt;br /&gt;
&lt;br /&gt;
=== Challenge ===&lt;br /&gt;
Rewrite the scripts from before to read an AIN pin and continuously display it's value.&lt;br /&gt;
&lt;br /&gt;
== Reading a gpio pin with an Oscilloscope - xM ==&lt;br /&gt;
&lt;br /&gt;
You can easily access many of the gpio pins via the Main Expansion Header.  Page 107 of the [http://beagleboard.org/static/BBxMSRM_latest.pdf BeagleBoard-xM System Reference Manual] has this figure.&lt;br /&gt;
[[File:MainHeader.png | 750px]]&lt;br /&gt;
&lt;br /&gt;
Unfortunately the gpio pins don't appear here.  It turns out the processor has more internal I/O lines than it has physical pins.  Each physical pin can can be connected to up to 8 internal lines.  [[BeagleBoardPinMux]] does a nice job of explaining it all.  The big clue is here [[BeagleBoardPinMux#Beagle]] which references Table 22 on page 108 of the -xM [http://beagleboard.org/static/BBSRM_latest.pdf System Reference Manual].&lt;br /&gt;
&lt;br /&gt;
[[File:ExpansionSignals.png‎]]&lt;br /&gt;
&lt;br /&gt;
Note that gpio130 appears on pin 21 of the Expansion Header. Also note that pins 27 and 28 are ground.  Attach your scope probe to these.  Now, let's put a signal on the pin.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export      gpiochip128@  gpiochip192@  gpiochip64@  unexport&lt;br /&gt;
 gpiochip0@  gpiochip160@  gpiochip32@   gpiochip96@&lt;br /&gt;
&lt;br /&gt;
Notice there is no folder for gpio130.  Create it with:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 130 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export    gpiochip0@    gpiochip160@  gpiochip32@  gpiochip96@&lt;br /&gt;
 gpio130@  gpiochip128@  gpiochip192@  gpiochip64@  unexport&lt;br /&gt;
&lt;br /&gt;
Update your exercises folder and cd to gpio directory.&lt;br /&gt;
&lt;br /&gt;
  beagle$ '''cd'''&lt;br /&gt;
  beagle$ '''cd exercises/gpio'''&lt;br /&gt;
  beagle$ '''git pull'''&lt;br /&gt;
  beagle$ '''gedit togglegpio.sh'''&lt;br /&gt;
&lt;br /&gt;
Can you tell what the program is doing?  Try running it:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''togglegpio 130 0.05'''&lt;br /&gt;
&lt;br /&gt;
Note that if you are the root user (which is the default case for Angstrom), you will have to type the following command:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''./togglegpio 130 0.05'''&lt;br /&gt;
&lt;br /&gt;
The first argument tells which gpio port to toggle, the second tells how long to delay between toggling.  In this example 0.05 s is 50 ms, which should give a period around 100ms. Measure the signal on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
== Assignment: gpio from the shell ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;Measuring a gpio pin on an Oscilloscope &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Answer the following questions about gpio measurements.&lt;br /&gt;
&lt;br /&gt;
# What's the min and max voltage?  &lt;br /&gt;
# What period is it?  &lt;br /&gt;
# How close is it to 100ms?  &lt;br /&gt;
# Why do they differ?&lt;br /&gt;
# Run '''htop''' and see how much processor you are using.&lt;br /&gt;
# Try different values for the sleep time (2nd argument). What's the shortest period you can get? Make a table of the values you try and the corresponding period and processor usage.&lt;br /&gt;
# How stable is the period?  &lt;br /&gt;
# Try launching something like '''mplayer'''. How stable is the period?&lt;br /&gt;
# Try cleaning up togglegpio and removing unneeded lines.  Does it impact the period?&lt;br /&gt;
# togglegpio uses bash (first line in file).  Try using sh.  Is the period shorter?&lt;br /&gt;
# What's the shortest period you can get?&lt;br /&gt;
&lt;br /&gt;
=== Toggling the LEDs ===&lt;br /&gt;
&lt;br /&gt;
Modify togglegpio (call it toggleLED) to toggle the LEDs.  Can you get the LED to appear to dim by changing the duty cycle of the toggling?&lt;br /&gt;
&lt;br /&gt;
=== User Button to gpio 130 ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that reads the User Button and outputs it value on gpio pin 130.&lt;br /&gt;
&lt;br /&gt;
=== Count the User Button Presses ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that displays a count of the number of times the User Button has been pressed.&lt;br /&gt;
&lt;br /&gt;
=== Copy gpio 130 to gpio 131 ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that copies the value of gpio pin 130 to gpio pin 131.  How much CPU time does it take?  What's the delay from the time the input changes until the output changes?  How constant is the delay?&lt;br /&gt;
&lt;br /&gt;
== Additional Exercises ==&lt;br /&gt;
&lt;br /&gt;
=== Reading the Keyboard and Mouse ===&lt;br /&gt;
Try this:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/input'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 beagle$ '''evtest /dev/input/event2'''&lt;br /&gt;
 Hit ctrl-C to stop&lt;br /&gt;
&lt;br /&gt;
Now move your mouse around, or try you keyboard.  My mouse is plugged into the bottom left USB port and event2 responds to it.  Where do your keyboard and mouse appear?&lt;br /&gt;
&lt;br /&gt;
=== Reading the User Button ===&lt;br /&gt;
('''Note''': This may not work on some versions of the OS. In these versions another program is controlling the gpio port that the User button is attached to.)&lt;br /&gt;
&lt;br /&gt;
The Beagle has a couple of push buttons. One reboots the whole board.  Use with care.  One is for you to use, it's to the right of the Reset button, between the two stacks of USB ports.&lt;br /&gt;
[[File:BeagleUserButton.png]]&lt;br /&gt;
&lt;br /&gt;
It's attached to gpio port 4.  You can read it via:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export    gpio133@  gpio137@  gpio141@      gpiochip160@  gpiochip96@&lt;br /&gt;
 gpio130@  gpio134@  gpio138@  gpio162@      gpiochip192@  unexport&lt;br /&gt;
 gpio131@  gpio135@  gpio139@  gpiochip0@    gpiochip32@&lt;br /&gt;
 gpio132@  gpio136@  gpio140@  gpiochip128@  gpiochip64@&lt;br /&gt;
&lt;br /&gt;
Notice there is no gpio4.  Here's how you can create it, set it to an input port and read its value:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 4 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 beagle$ '''cd gpio4'''&lt;br /&gt;
 beagle$ '''echo in &amp;gt; direction'''&lt;br /&gt;
 beagle$ '''cat value'''&lt;br /&gt;
&lt;br /&gt;
Try holding down the switch and doing &amp;lt;code&amp;gt;cat value&amp;lt;/code&amp;gt; again.  Does the value change?  There's a shell script called '''readgpio''' that repeatedly reads the switch.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''readgpio 4'''&lt;br /&gt;
&lt;br /&gt;
Try pushing the switch.  Does it work?  Hit ctrl-C to stop.  Look at readgpio.  How does it work?&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''which readgpio'''&lt;br /&gt;
 beagle$ '''cp /usr/bin/readgpio ~'''&lt;br /&gt;
 beagle$ '''gedit ~/readgpio'''&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
# [http://wh1t3s.com/2009/05/14/reading-beagleboard-gpio/ Here] is wh1ts article on flashing an LED.  It is referenced in the '''readgpio''' file that comes on the Beagle.&lt;br /&gt;
# [http://blog.makezine.com/archive/2009/02/blinking-leds-with-the-beagle-board.html?CMP=OTC-0D6B48984890 This] Make magazine article has a few more details.&lt;br /&gt;
# [http://www.avrfreaks.net/wiki/index.php/Documentation:Linux/GPIO#Getting_access_to_a_GPIO Here] in a gpio reference for Linux in general. It includes sample 'C' code for flashing at 1 Hz.&lt;br /&gt;
# [https://groups.google.com/forum/?hl=en#!msg/beagleboard/20rM-r8C2YY/hVZiN2ahI8YJ Here] is a posting in the Beagle Google group about gpio.&lt;br /&gt;
# [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/gpio.txt;h=36af58eba136bac198ea3b1f33f34236be9ce5df;hb=HEAD Here] is some information about gpio from the kernel point of view.&lt;br /&gt;
# [http://wiki.gumstix.org/index.php?title=GPIO_Event_Driver Here] is some info on a GPIO Event Driver&lt;br /&gt;
# [https://www.ridgerun.com/developer/wiki/index.php/How_to_use_GPIO_signals Here] is info on how to set '''edge''' to falling and poll() the pin.&lt;br /&gt;
# [http://www.kernel.org/doc/Documentation/gpio.txt Here] is the kernel Documentation on gpio.&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/EBC_Exercise_10_Flashing_an_LED</id>
		<title>EBC Exercise 10 Flashing an LED</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/EBC_Exercise_10_Flashing_an_LED"/>
				<updated>2012-09-18T08:18:38Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Typo correction.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:EmbeddedBeagleClass]]&lt;br /&gt;
[[Category:ECE497]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
The [http://en.wikipedia.org/wiki/Hello_world_program &amp;quot;Hello World&amp;quot;] program is the traditional first program for many classes.  Flashing an LED is the embedded equivalent.  Here we will explore a few ways to flash and LED on the Beagle and explore General Purpose I/O (gpio) along the way.  Thiese calls will be done from the command line of the Beagle, so there is no need for the host computer.&lt;br /&gt;
&lt;br /&gt;
== gpio via the Shell Command Line and sysfs ==&lt;br /&gt;
&lt;br /&gt;
('''Note''':  Draw the new diagrams with [http://engineersofthecorn.blogspot.com/2012/06/fritzing-part-for-beaglebone.html this].)&lt;br /&gt;
&lt;br /&gt;
The easiest way to do general purpose I/O (gpio) on the Beagle is through a terminal window and a shell prompt. In Linux most everything is treated as a file.  Even things that aren't files. In our class we'll use a virtual file system called '''sysfs'''.  sysfs exposes the drivers for the hardware so you get easily use them.&lt;br /&gt;
&lt;br /&gt;
Try this, open a terminal and type:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 block/  bus/  class/  dev/  devices/  firmware/  fs/  kernel/  module/  power/&lt;br /&gt;
&lt;br /&gt;
Here we see several directories that represent hardware we can control. Explore a bit and see what you find.&lt;br /&gt;
&lt;br /&gt;
Now try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 bccat/      hwmon/        mtd/             scsi_disk/     usb_device/&lt;br /&gt;
 bdi/        i2c-adapter/  net/             scsi_generic/  usbmon/&lt;br /&gt;
 block/      i2c-dev/      omap-previewer/  scsi_host/     vc/&lt;br /&gt;
 bluetooth/  input/        omap-resizer/    sound/         video4linux/&lt;br /&gt;
 bsg/        leds/         pvr/             spi_master/    vtconsole/&lt;br /&gt;
 display/    mdio_bus/     regulator/       spidev/&lt;br /&gt;
 firmware/   mem/          rfkill/          thermal/&lt;br /&gt;
 gpio/       misc/         rtc/             tty/&lt;br /&gt;
 graphics/   mmc_host/     scsi_device/     ubi/&lt;br /&gt;
&lt;br /&gt;
Explore some.  What do you find?  In '''graphics''' you will see the 3 frame buffers supported by the processor.  In '''sound''' you'll see the [http://www.alsa-project.org/main/index.php/Main_Page alsa] sound devices.&lt;br /&gt;
&lt;br /&gt;
== Flashing the user LEDs ==&lt;br /&gt;
&lt;br /&gt;
The Beagle xM has two user LEDS, '''user0''' and '''user1''', that you can control.  The Bone has 4. Try this:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/leds'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 beaglebeagleboard::pmu_stat@  beagleboard::usr0@  beagleboard::usr1@&lt;br /&gt;
&lt;br /&gt;
Here you see the directories for controlling each of the usr LEDs. By default, usr0 flashes a heartbeat pattern and usr1 flashes when the micro SD card is accessed.  Let's control usr0.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd beagleboard\:\:usr0'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 brightness  device@  max_brightness  power/  subsystem@  trigger  uevent&lt;br /&gt;
&lt;br /&gt;
See what's in '''brightness''', '''max_brightness''' and '''trigger''' by using the &amp;lt;code&amp;gt;cat&amp;lt;/code&amp;gt; command.  For example:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 none nand-disk mmc0 [heartbeat]&lt;br /&gt;
&lt;br /&gt;
This shows trigger can have 4 values.  The present value is '''heartbeat'''.  Check the LED, is the beating?  You can stop the heartbeat via:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo none &amp;gt; trigger'''&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 [none] nand-disk mmc0 heartbeat &lt;br /&gt;
&lt;br /&gt;
Did it stop beating?  You can now turn it on and off with:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 1 &amp;gt; brightness'''&lt;br /&gt;
 beagle$ '''echo 0 &amp;gt; brightness'''&lt;br /&gt;
&lt;br /&gt;
Is it responding correctly?&lt;br /&gt;
&lt;br /&gt;
The Bone has more trigger options.  Try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 [none] mmc0 timer heartbeat backlight gpio default-on &lt;br /&gt;
 beagle$ '''echo timer &amp;gt; trigger'''&lt;br /&gt;
 brightness  delay_on  max_brightness  subsystem  uevent&lt;br /&gt;
 delay_off   device    power           trigger&lt;br /&gt;
 beagle$ '''echo 100 &amp;gt; delay_on'''&lt;br /&gt;
 beagle$ '''echo 900 &amp;gt; delay_off'''&lt;br /&gt;
&lt;br /&gt;
What does this do?&lt;br /&gt;
&lt;br /&gt;
== Adding your own LED - bone ==&lt;br /&gt;
&lt;br /&gt;
It's not hard to use the gpio pins to control your own LED. All you need is an LED and a 220&amp;amp;Omega; resistor. Here's a picture of how it's wired. We are just doing the LED at the top of the breadboard for now.&lt;br /&gt;
&lt;br /&gt;
[[File:Bone gpio.JPG|300px]]&lt;br /&gt;
[[File:BoneGPIO.png|300px]]&lt;br /&gt;
&lt;br /&gt;
So how do you know where to connect it?  The BeagleBone [http://beagleboard.org/static/beaglebone/latest/Docs/Hardware/BONE_SRM.pdf System Reference Manual] has the details.  Figure 3 on page 18 of RevA5.01 shows:&lt;br /&gt;
&lt;br /&gt;
[[File:Beagle Bone.jpg|300px]]&lt;br /&gt;
&lt;br /&gt;
There at two expansion headers, P8 and P9.  Look at the bottom of the left header and you'll see it's labeled '''P9'''. Table 11 on page 59 shows the pinout for P9.&lt;br /&gt;
&lt;br /&gt;
[[File:Bone P9 pinout.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
On the first photo above you can see that pin 1 (Ground) is wired to the '''-''' bus and pin 3 (3.3V) is wired to the '''+''' bus. The 220&amp;amp;Omega; resistor is wired to the '''-''' bus and the other end is attached to the negative lead of the LED.  The positive lead is attached to pin 12 which, as shown in Table 11, is attached to '''gpio1_28'''.  The gpio pins are in banks of 32 each, so to find the gpio number to use on the Beagle, use 1*32+28='''60'''.  Here's how you turn it on&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 export  gpiochip0  gpiochip32  gpiochip64  gpiochip96  unexport&lt;br /&gt;
&lt;br /&gt;
Presently no gpio pins are visible.  You need to tell it which pin to export&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 60 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 gpio60  gpiochip0  gpiochip32  gpiochip64  gpiochip96&lt;br /&gt;
&lt;br /&gt;
Notice '''gpio60''' has appeared.  All we need to do is tell it which direction and then turn it on.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd gpio60'''&lt;br /&gt;
 beagle$ '''echo out &amp;gt; direction'''&lt;br /&gt;
 beagle$ '''echo 1 &amp;gt; value'''&lt;br /&gt;
&lt;br /&gt;
Your LED should be on!  When you are done you can unexport the pin and it will disappear.&lt;br /&gt;
 beagle$ cd ..&lt;br /&gt;
 beagle$ '''echo 60 &amp;gt; unexport'''&lt;br /&gt;
&lt;br /&gt;
== Reading a switch - bone ==&lt;br /&gt;
&lt;br /&gt;
Now that you have an LED working, wiring in a switch is easy.  The picture above shows a push button switch wired in at the bottom of the P9 header.  Attach the '''+''' bus to one pole on the switch with a wire.  The other end of the switch is attached to pin 42 which is '''gpio0_7'''. &lt;br /&gt;
&lt;br /&gt;
Based on what you saw above, show how to read the switch.&lt;br /&gt;
&lt;br /&gt;
Once you have the switch and LED working you can use the following scripts to play with them.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd ~/exercises/gpio'''&lt;br /&gt;
 beagle$ '''./togglegpio.sh 60 0.1'''&lt;br /&gt;
&lt;br /&gt;
The LED should be blinking on and off.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''./readgpio.sh 7'''&lt;br /&gt;
&lt;br /&gt;
Push the pushbutton and see what happens.&lt;br /&gt;
&lt;br /&gt;
How can this work without a pulldown resistor? It turns out the Bone has an internal pulldown (and up) resistor that can be software enabled.  Try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/kernel/debug/omap_mux'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 ain0               gpmc_ad2        lcd_data3      mii1_txd2&lt;br /&gt;
 ain1               gpmc_ad3        lcd_data4      mii1_txd3&lt;br /&gt;
 ain2               gpmc_ad4        lcd_data5      mii1_txen&lt;br /&gt;
 ain3               gpmc_ad5        lcd_data6      mmc0_clk&lt;br /&gt;
 ain4               gpmc_ad6        lcd_data7      mmc0_cmd&lt;br /&gt;
 ain5               gpmc_ad7        lcd_data8      mmc0_dat0&lt;br /&gt;
 ain6               gpmc_ad8        lcd_data9      mmc0_dat1&lt;br /&gt;
 ain7               gpmc_ad9        lcd_hsync      mmc0_dat2&lt;br /&gt;
 board              gpmc_advn_ale   lcd_pclk       mmc0_dat3&lt;br /&gt;
 ecap0_in_pwm0_out  gpmc_ben0_cle   lcd_vsync      rmii1_refclk&lt;br /&gt;
 emu0               gpmc_ben1       mcasp0_aclkr   spi0_cs0&lt;br /&gt;
 emu1               gpmc_clk        mcasp0_aclkx   spi0_cs1&lt;br /&gt;
 gpmc_a0            gpmc_csn0       mcasp0_ahclkr  spi0_d0&lt;br /&gt;
 gpmc_a1            gpmc_csn1       mcasp0_ahclkx  spi0_d1&lt;br /&gt;
 gpmc_a10           gpmc_csn2       mcasp0_axr0    spi0_sclk&lt;br /&gt;
 gpmc_a11           gpmc_csn3       mcasp0_axr1    uart0_ctsn&lt;br /&gt;
 gpmc_a2            gpmc_oen_ren    mcasp0_fsr     uart0_rtsn&lt;br /&gt;
 gpmc_a3            gpmc_wait0      mcasp0_fsx     uart0_rxd&lt;br /&gt;
 gpmc_a4            gpmc_wen        mdio_clk       uart0_txd&lt;br /&gt;
 gpmc_a5            gpmc_wpn        mdio_data      uart1_ctsn&lt;br /&gt;
 gpmc_a6            i2c0_scl        mii1_col       uart1_rtsn&lt;br /&gt;
 gpmc_a7            i2c0_sda        mii1_crs       uart1_rxd&lt;br /&gt;
 gpmc_a8            lcd_ac_bias_en  mii1_rxclk     uart1_txd&lt;br /&gt;
 gpmc_a9            lcd_data0       mii1_rxd0      usb0_drvvbus&lt;br /&gt;
 gpmc_ad0           lcd_data1       mii1_rxd1      usb1_drvvbus&lt;br /&gt;
 gpmc_ad1           lcd_data10      mii1_rxd2      vrefn&lt;br /&gt;
 gpmc_ad10          lcd_data11      mii1_rxd3      vrefp&lt;br /&gt;
 gpmc_ad11          lcd_data12      mii1_rxdv      xdma_event_intr0&lt;br /&gt;
 gpmc_ad12          lcd_data13      mii1_rxerr     xdma_event_intr1&lt;br /&gt;
 gpmc_ad13          lcd_data14      mii1_txclk&lt;br /&gt;
 gpmc_ad14          lcd_data15      mii1_txd0&lt;br /&gt;
 gpmc_ad15          lcd_data2       mii1_txd1&lt;br /&gt;
 beagle$ '''ls | wc'''&lt;br /&gt;
    125     125    1220&lt;br /&gt;
&lt;br /&gt;
Here you will find a list of how all the pin muxes are set. There are some 125 of them!&lt;br /&gt;
How do you find which one is gpio0_7?&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''grep gpio0_7 *'''&lt;br /&gt;
 ecap0_in_pwm0_out:name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0027), b NA, t NA&lt;br /&gt;
 ''ecap0_in_pwm0_out'':signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | ''gpio0_7''&lt;br /&gt;
&lt;br /&gt;
'''ecap0_in_pwm0_out''' is the file that contains gpio0_7.  Look up gpio0_7&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat ecap0_in_pwm0_out'''&lt;br /&gt;
 name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0027), b NA, t NA&lt;br /&gt;
 mode: ''OMAP_PIN_INPUT_PULLDOWN'' | OMAP_MUX_MODE7&lt;br /&gt;
 signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | gpio0_7&lt;br /&gt;
&lt;br /&gt;
It's set to be a PULLDOWN.  Sectiion 9.2.2.2, Page 877 of the AM335x Technical Reference manual discusses Pull Selection and tells which bits do what.  The '''0x0027''' is the code that says which MODE is used and how the pull up/down resistor is set. (There seems to be a mismatch between the manual and the bone.  The manual says bit 3 of 0x0027 enables the pull up/down.  Bit 3 isn’t set, but the pull down is working.)&lt;br /&gt;
&lt;br /&gt;
You can switch the gpio pin to pullup.  Try&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 0x0037 &amp;gt; ecap0_in_pwm0_out'''&lt;br /&gt;
 beagle$ '''cat ecap0_in_pwm0_out''' &lt;br /&gt;
 name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0037), b NA, t NA&lt;br /&gt;
 mode: OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE7&lt;br /&gt;
 signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | gpio0_7&lt;br /&gt;
&lt;br /&gt;
Does it act like a pullup resistor is attached?&lt;br /&gt;
&lt;br /&gt;
=== Challenge ===&lt;br /&gt;
&lt;br /&gt;
* Can you modify the scripts above to read the switch and turn the LED on and off?&lt;br /&gt;
* Rewire your switch to work with a pullup resistor.&lt;br /&gt;
&lt;br /&gt;
== Analog in - bone ==&lt;br /&gt;
&lt;br /&gt;
(This is based on [http://www.gigamegablog.com/2012/01/22/beaglebone-coding-101-using-the-serial-and-analog-pins/ this].)&lt;br /&gt;
&lt;br /&gt;
The bone has eight Analog Inputs.  Several are exposed on P9.  They are labeled '''AIN''' in table 11 above.  How many do you find?&lt;br /&gt;
&lt;br /&gt;
The AIN pins are sampled at 12 bits and 100k samples per second.  The input voltage is between 0 and 1.8V.  Fortunately, both voltages are available on P9.&lt;br /&gt;
&lt;br /&gt;
The photo above shows a small potentiometer wired to the bone.  One end goes to the analog ground (pin 34), the other analog 1.8V (pin 32). The wiper is attached to '''AIN5''' which is pin 36.&lt;br /&gt;
&lt;br /&gt;
You interact with the analog in much like the gpio, but it appears in a different location.  How do you find that location?  One approach is the '''find''' command.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''find / -name ain5'''&lt;br /&gt;
 /sys/devices/platform/omap/tsc/ain5&lt;br /&gt;
 /sys/kernel/debug/omap_mux/ain5&lt;br /&gt;
 '''^C'''&lt;br /&gt;
&lt;br /&gt;
I used '''Ctrl-C''' to interrupt since it already found what I wanted.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/devices/platform/tsc'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 ain1  ain3  ain5  ain7  driver    power      uevent&lt;br /&gt;
 ain2  ain4  ain6  ain8  modalias  subsystem&lt;br /&gt;
&lt;br /&gt;
There are the various analog inputs, but watch out.  This interface starts numbering at '''1''' and Table 11 starts at '''0''', so to read AIN5 you need to look at '''ain6'''!&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat ain6'''&lt;br /&gt;
 1185&lt;br /&gt;
&lt;br /&gt;
(Unfortunately the interface doesn't print a RETURN after the value.)&lt;br /&gt;
Change the pot and rerun the cat.  What's the min and max value you get?  Is it 12 bits?&lt;br /&gt;
&lt;br /&gt;
=== Challenge ===&lt;br /&gt;
Rewrite the scripts from before to read an AIN pin and continuously display it's value.&lt;br /&gt;
&lt;br /&gt;
== Reading a gpio pin with an Oscilloscope - xM ==&lt;br /&gt;
&lt;br /&gt;
You can easily access many of the gpio pins via the Main Expansion Header.  Page 107 of the [http://beagleboard.org/static/BBxMSRM_latest.pdf BeagleBoard-xM System Reference Manual] has this figure.&lt;br /&gt;
[[File:MainHeader.png | 750px]]&lt;br /&gt;
&lt;br /&gt;
Unfortunately the gpio pins don't appear here.  It turns out the processor has more internal I/O lines than it has physical pins.  Each physical pin can can be connected to up to 8 internal lines.  [[BeagleBoardPinMux]] does a nice job of explaining it all.  The big clue is here [[BeagleBoardPinMux#Beagle]] which references Table 22 on page 108 of the -xM [http://beagleboard.org/static/BBSRM_latest.pdf System Reference Manual].&lt;br /&gt;
&lt;br /&gt;
[[File:ExpansionSignals.png‎]]&lt;br /&gt;
&lt;br /&gt;
Note that gpio130 appears on pin 21 of the Expansion Header. Also note that pins 27 and 28 are ground.  Attach your scope probe to these.  Now, let's put a signal on the pin.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export      gpiochip128@  gpiochip192@  gpiochip64@  unexport&lt;br /&gt;
 gpiochip0@  gpiochip160@  gpiochip32@   gpiochip96@&lt;br /&gt;
&lt;br /&gt;
Notice there is no folder for gpio130.  Create it with:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 130 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export    gpiochip0@    gpiochip160@  gpiochip32@  gpiochip96@&lt;br /&gt;
 gpio130@  gpiochip128@  gpiochip192@  gpiochip64@  unexport&lt;br /&gt;
&lt;br /&gt;
Update your exercises folder and cd to gpio directory.&lt;br /&gt;
&lt;br /&gt;
  beagle$ '''cd'''&lt;br /&gt;
  beagle$ '''cd exercises/gpio'''&lt;br /&gt;
  beagle$ '''git pull'''&lt;br /&gt;
  beagle$ '''gedit togglegpio.sh'''&lt;br /&gt;
&lt;br /&gt;
Can you tell what the program is doing?  Try running it:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''togglegpio 130 0.05'''&lt;br /&gt;
&lt;br /&gt;
Note that if you are the root user (which is the default case for Angstrom), you will have to type the following command:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''./togglegpio 130 0.05'''&lt;br /&gt;
&lt;br /&gt;
The first argument tells which gpio port to toggle, the second tells how long to delay between toggling.  In this example 0.05 s is 50 ms, which should give a period around 100ms. Measure the signal on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
== Assignment: gpio from the shell ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;Measuring a gpio pin on an Oscilloscope &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Answer the following questions about gpio measurements.&lt;br /&gt;
&lt;br /&gt;
# What's the min and max voltage?  &lt;br /&gt;
# What period is it?  &lt;br /&gt;
# How close is it to 100ms?  &lt;br /&gt;
# Why do they differ?&lt;br /&gt;
# Run '''htop''' and see how much processor you are using.&lt;br /&gt;
# Try different values for the sleep time (2nd argument). What's the shortest period you can get? Make a table of the values you try and the corresponding period and processor usage.&lt;br /&gt;
# How stable is the period?  &lt;br /&gt;
# Try launching something like '''mplayer'''. How stable is the period?&lt;br /&gt;
# Try cleaning up togglegpio and removing unneeded lines.  Does it impact the period?&lt;br /&gt;
# togglegpio uses bash (first line in file).  Try using sh.  Is the period shorter?&lt;br /&gt;
# What's the shortest period you can get?&lt;br /&gt;
&lt;br /&gt;
=== Toggling the LEDs ===&lt;br /&gt;
&lt;br /&gt;
Modify togglegpio (call it toggleLED) to toggle the LEDs.  Can you get the LED to appear to dim by changing the duty cycle of the toggling?&lt;br /&gt;
&lt;br /&gt;
=== User Button to gpio 130 ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that reads the User Button and outputs it value on gpio pin 130.&lt;br /&gt;
&lt;br /&gt;
=== Count the User Button Presses ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that displays a count of the number of times the User Button has been pressed.&lt;br /&gt;
&lt;br /&gt;
=== Copy gpio 130 to gpio 131 ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that copies the value of gpio pin 130 to gpio pin 131.  How much CPU time does it take?  What's the delay from the time the input changes until the output changes?  How constant is the delay?&lt;br /&gt;
&lt;br /&gt;
== Additional Exercises ==&lt;br /&gt;
&lt;br /&gt;
=== Reading the Keyboard and Mouse ===&lt;br /&gt;
Try this:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/input'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 beagle$ '''evtest /dev/input/event2'''&lt;br /&gt;
 Hit ctrl-C to stop&lt;br /&gt;
&lt;br /&gt;
Now move your mouse around, or try you keyboard.  My mouse is plugged into the bottom left USB port and event2 responds to it.  Where do your keyboard and mouse appear?&lt;br /&gt;
&lt;br /&gt;
=== Reading the User Button ===&lt;br /&gt;
('''Note''': This may not work on some versions of the OS. In these versions another program is controlling the gpio port that the User button is attached to.)&lt;br /&gt;
&lt;br /&gt;
The Beagle has a couple of push buttons. One reboots the whole board.  Use with care.  One is for you to use, it's to the right of the Reset button, between the two stacks of USB ports.&lt;br /&gt;
[[File:BeagleUserButton.png]]&lt;br /&gt;
&lt;br /&gt;
It's attached to gpio port 4.  You can read it via:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export    gpio133@  gpio137@  gpio141@      gpiochip160@  gpiochip96@&lt;br /&gt;
 gpio130@  gpio134@  gpio138@  gpio162@      gpiochip192@  unexport&lt;br /&gt;
 gpio131@  gpio135@  gpio139@  gpiochip0@    gpiochip32@&lt;br /&gt;
 gpio132@  gpio136@  gpio140@  gpiochip128@  gpiochip64@&lt;br /&gt;
&lt;br /&gt;
Notice there is no gpio4.  Here's how you can create it, set it to an input port and read its value:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 4 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 beagle$ '''cd gpio4'''&lt;br /&gt;
 beagle$ '''echo in &amp;gt; direction'''&lt;br /&gt;
 beagle$ '''cat value'''&lt;br /&gt;
&lt;br /&gt;
Try holding down the switch and doing &amp;lt;code&amp;gt;cat value&amp;lt;/code&amp;gt; again.  Does the value change?  There's a shell script called '''readgpio''' that repeatedly reads the switch.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''readgpio 4'''&lt;br /&gt;
&lt;br /&gt;
Try pushing the switch.  Does it work?  Hit ctrl-C to stop.  Look at readgpio.  How does it work?&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''which readgpio'''&lt;br /&gt;
 beagle$ '''cp /usr/bin/readgpio ~'''&lt;br /&gt;
 beagle$ '''gedit ~/readgpio'''&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
# [http://wh1t3s.com/2009/05/14/reading-beagleboard-gpio/ Here] is wh1ts article on flashing an LED.  It is referenced in the '''readgpio''' file that comes on the Beagle.&lt;br /&gt;
# [http://blog.makezine.com/archive/2009/02/blinking-leds-with-the-beagle-board.html?CMP=OTC-0D6B48984890 This] Make magazine article has a few more details.&lt;br /&gt;
# [http://www.avrfreaks.net/wiki/index.php/Documentation:Linux/GPIO#Getting_access_to_a_GPIO Here] in a gpio reference for Linux in general. It includes sample 'C' code for flashing at 1 Hz.&lt;br /&gt;
# [https://groups.google.com/forum/?hl=en#!msg/beagleboard/20rM-r8C2YY/hVZiN2ahI8YJ Here] is a posting in the Beagle Google group about gpio.&lt;br /&gt;
# [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/gpio.txt;h=36af58eba136bac198ea3b1f33f34236be9ce5df;hb=HEAD Here] is some information about gpio from the kernel point of view.&lt;br /&gt;
# [http://wiki.gumstix.org/index.php?title=GPIO_Event_Driver Here] is some info on a GPIO Event Driver&lt;br /&gt;
# [https://www.ridgerun.com/developer/wiki/index.php/How_to_use_GPIO_signals Here] is info on how to set '''edge''' to falling and poll() the pin.&lt;br /&gt;
# [http://www.kernel.org/doc/Documentation/gpio.txt Here] is the kernel Documentation on gpio.&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/EBC_Exercise_11_gpio_Polling_and_Interrupts</id>
		<title>EBC Exercise 11 gpio Polling and Interrupts</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/EBC_Exercise_11_gpio_Polling_and_Interrupts"/>
				<updated>2012-09-18T04:28:46Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:EmbeddedBeagleClass]]&lt;br /&gt;
[[Category:ECE497]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
In the previous exercise ([[EBC Exercise 10 Flashing an LED]]) we saw how to interact with the general purpose I/O pins via the command shell and the sysfs files.  These are rather easy ways to work with gpio; however they tend to be slow and require a lot of the CPU.  In this exercise we explore using sysfs via C.  We also see how using interrupts can greatly reduce the CPU usage and increase our max output speed.&lt;br /&gt;
&lt;br /&gt;
== &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;gpio via C and sysfs &amp;lt;/span&amp;gt;==&lt;br /&gt;
&lt;br /&gt;
Since &amp;lt;code&amp;gt;/sys/class/gpio/gpio130/value&amp;lt;/code&amp;gt; is just a file, we can read and write it from a C program just as easily as from the shell.  [http://www.avrfreaks.net/wiki/index.php/Documentation:Linux/GPIO#Example_of_GPIO_access_from_within_a_C_program Here] is a nice example of how it's done. I've cleaned it up a bit and put a copy called '''togglegpio.c''' in '''exercises/gpio'''. If your git repository is set up just:&lt;br /&gt;
 beagle$ '''cd exercises'''&lt;br /&gt;
 beagle$ '''git pull'''&lt;br /&gt;
 beagle$ '''cd gpio'''&lt;br /&gt;
 beagle$ '''gedit togglegpio.c &amp;amp;'''&lt;br /&gt;
(Follow the instructions [[EBC_Exercise_01a_Getting_Exercise_Support_Materials | here]] if you aren't set up for git.)&lt;br /&gt;
&lt;br /&gt;
It's presently hardwired to use gpio130.  Later you will get to make it work with any port.&lt;br /&gt;
&lt;br /&gt;
# Compile and run it.  Does the correct waveform appear on the oscilloscope?  &lt;br /&gt;
# Use '''htop''' to measure the CPU usage.&lt;br /&gt;
# Try different periods.  Make a chart of the input period vs. the measured period vs. CPU usage.&lt;br /&gt;
# How stable is the waveform?  Look at several cycles.  Are they always the same length.  Explain.&lt;br /&gt;
&lt;br /&gt;
This program is really interrupt based.  When the '''usleep''' command is run, the process suspends until the correct time has elapsed.  Other processes are allowed to run.  When the time is up the CPU is interrupted and our process is allowed to continue.&lt;br /&gt;
&lt;br /&gt;
== gpio via Interrupts ==&lt;br /&gt;
&lt;br /&gt;
Next we want to write some code that will read one gpio pin and copy its value to another.  We could modify togglegpio.c to continually read one pin and write it to another, but that would wither be slow at responding to changes (a usleep is used between reads), or it would take all the CPU time (always reading in case a change was made).&lt;br /&gt;
&lt;br /&gt;
A better approach is to let the OS tell you when the input has changed.  In a traditional microprocessor one would set up the input pin to interrupt the processor when its input value has changed.  We'll do something similar here.&lt;br /&gt;
&lt;br /&gt;
The folks at [https://www.ridgerun.com/ RidgeRun] have a nice [https://www.ridgerun.com/developer/wiki/index.php/How_to_use_GPIO_signals example] of how this is done.&lt;br /&gt;
&lt;br /&gt;
Look over the example.  The first part should be familiar.  The new stuff starts [https://www.ridgerun.com/developer/wiki/index.php/How_to_use_GPIO_signals#GPIO_interrupts_from_user_space here]. It describes how to use the '''poll()''' command to wait until the gpio pin has changed. Your process will block (i.e. let other processes run) while poll() waits for an interupt to occur. &lt;br /&gt;
&lt;br /&gt;
I've put a modified copy of '''gpio-int-test.c''' in '''gpio'''. Get it.  Study it. Compile and run it.  You'll need to setup an input signal.  gpio4 is the User button.  Try it.  Does the program respond correctly?&lt;br /&gt;
&lt;br /&gt;
== Assignments ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt;Modify togglegpio.c &amp;lt;/span&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
# Modify togglegpio.c to take the gpio number. &lt;br /&gt;
# Clean things up a bit and use the structure of '''gpio-int-test.c'''. &lt;br /&gt;
# Presently one parameter specifies both the on and off time.  Modify the code so the on and off times are controlled separately.&lt;br /&gt;
# Add in interrupt handler (see gpio-int-test.c) to trap ctrl-C and close things properly.&lt;br /&gt;
# What's the highest frequency you can see on the 'scope?&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;span style=&amp;quot;color:green&amp;quot;&amp;gt; Modify gpio-int-test.c &amp;lt;/span&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
# Modify gpio-init-test.c to count the number of times the User button has been pressed.  Set '''edge''' to only count releases.&lt;br /&gt;
# Copy gpio-init-test.c to '''gpioThru.c''' and modify it to copy the value of one port to another.  You'll have to add code to open a second gpio port for writing (check '''gpio_set_dir''').&lt;br /&gt;
# gpio 131 is attached to pin 19 of the Main Extension Header on the Beagle.  Attach a function generator to this pin.  Be sure to set the HiLevel to 1.8V and the LoLevel to 0.  Does the output track the input?&lt;br /&gt;
# What's the highest frequency the output will track the input?  What's the CPU usage?&lt;br /&gt;
# What's the delay from when the input changes to when the output changes?&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/EBC_Exercise_10_Flashing_an_LED</id>
		<title>EBC Exercise 10 Flashing an LED</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/EBC_Exercise_10_Flashing_an_LED"/>
				<updated>2012-09-11T04:02:29Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Typo correction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:EmbeddedBeagleClass]]&lt;br /&gt;
[[Category:ECE497]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
The [http://en.wikipedia.org/wiki/Hello_world_program &amp;quot;Hello World&amp;quot;] program is the traditional first program for many classes.  Flashing an LED is the embedded equivalent.  Here we will explore a few ways to flash and LED on the Beagle and explore General Purpose I/O (gpio) along the way.  This will call be done from the command line of the Beagle, so there is no need for the host computer.&lt;br /&gt;
&lt;br /&gt;
== gpio via the Shell Command Line and sysfs ==&lt;br /&gt;
&lt;br /&gt;
('''Note''':  Draw the new diagrams with [http://engineersofthecorn.blogspot.com/2012/06/fritzing-part-for-beaglebone.html this].)&lt;br /&gt;
&lt;br /&gt;
The easiest way to do general purpose I/O (gpio) on the Beagle is through a terminal window and a shell prompt. In Linux most everything is treated as a file.  Even things that aren't files. In our class we'll use a virtual file system called '''sysfs'''.  sysfs exposes the drivers for the hardware so you get easily use them.&lt;br /&gt;
&lt;br /&gt;
Try this, open a terminal and type:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 block/  bus/  class/  dev/  devices/  firmware/  fs/  kernel/  module/  power/&lt;br /&gt;
&lt;br /&gt;
Here we see several directories that represent hardware we can control. Explore a bit and see what you find.&lt;br /&gt;
&lt;br /&gt;
Now try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 bccat/      hwmon/        mtd/             scsi_disk/     usb_device/&lt;br /&gt;
 bdi/        i2c-adapter/  net/             scsi_generic/  usbmon/&lt;br /&gt;
 block/      i2c-dev/      omap-previewer/  scsi_host/     vc/&lt;br /&gt;
 bluetooth/  input/        omap-resizer/    sound/         video4linux/&lt;br /&gt;
 bsg/        leds/         pvr/             spi_master/    vtconsole/&lt;br /&gt;
 display/    mdio_bus/     regulator/       spidev/&lt;br /&gt;
 firmware/   mem/          rfkill/          thermal/&lt;br /&gt;
 gpio/       misc/         rtc/             tty/&lt;br /&gt;
 graphics/   mmc_host/     scsi_device/     ubi/&lt;br /&gt;
&lt;br /&gt;
Explore some.  What do you find?  In '''graphics''' you will see the 3 frame buffers supported by the processor.  In '''sound''' you'll see the [http://www.alsa-project.org/main/index.php/Main_Page alsa] sound devices.&lt;br /&gt;
&lt;br /&gt;
== Flashing the user LEDs ==&lt;br /&gt;
&lt;br /&gt;
The Beagle xM has two user LEDS, '''user0''' and '''user1''', that you can control.  The Bone has 4. Try this:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/leds'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 beaglebeagleboard::pmu_stat@  beagleboard::usr0@  beagleboard::usr1@&lt;br /&gt;
&lt;br /&gt;
Here you see the directories for controlling each of the usr LEDs. By default, usr0 flashes a heartbeat pattern and usr1 flashes when the micro SD card is accessed.  Let's control usr0.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd beagleboard\:\:usr0'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 brightness  device@  max_brightness  power/  subsystem@  trigger  uevent&lt;br /&gt;
&lt;br /&gt;
See what's in '''brightness''', '''max_brightness''' and '''trigger''' by using the &amp;lt;code&amp;gt;cat&amp;lt;/code&amp;gt; command.  For example:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 none nand-disk mmc0 [heartbeat]&lt;br /&gt;
&lt;br /&gt;
This shows trigger can have 4 values.  The present value is '''heartbeat'''.  Check the LED, is the beating?  You can stop the heartbeat via:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo none &amp;gt; trigger'''&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 [none] nand-disk mmc0 heartbeat &lt;br /&gt;
&lt;br /&gt;
Did it stop beating?  You can now turn it on and off with:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 1 &amp;gt; brightness'''&lt;br /&gt;
 beagle$ '''echo 0 &amp;gt; brightness'''&lt;br /&gt;
&lt;br /&gt;
Is it responding correctly?&lt;br /&gt;
&lt;br /&gt;
The Bone has more trigger options.  Try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat trigger'''&lt;br /&gt;
 [none] mmc0 timer heartbeat backlight gpio default-on &lt;br /&gt;
 beagle$ '''echo timer &amp;gt; trigger'''&lt;br /&gt;
 brightness  delay_on  max_brightness  subsystem  uevent&lt;br /&gt;
 delay_off   device    power           trigger&lt;br /&gt;
 beagle$ '''echo 100 &amp;gt; delay_on'''&lt;br /&gt;
 beagle$ '''echo 900 &amp;gt; delay_off'''&lt;br /&gt;
&lt;br /&gt;
What does this do?&lt;br /&gt;
&lt;br /&gt;
== Adding your own LED - bone ==&lt;br /&gt;
&lt;br /&gt;
It's not hard to use the gpio pins to control your own LED. All you need is an LED and a 220&amp;amp;Omega; resistor. Here's a picture of how it's wired. We are just doing the LED at the top of the breadboard for now.&lt;br /&gt;
&lt;br /&gt;
[[File:Bone gpio.JPG|300px]]&lt;br /&gt;
[[File:BoneGPIO.png|300px]]&lt;br /&gt;
&lt;br /&gt;
So how do you know where to connect it?  The BeagleBone [http://beagleboard.org/static/beaglebone/latest/Docs/Hardware/BONE_SRM.pdf System Reference Manual] has the details.  Figure 3 on page 18 of RevA5.01 shows:&lt;br /&gt;
&lt;br /&gt;
[[File:Beagle Bone.jpg|300px]]&lt;br /&gt;
&lt;br /&gt;
There at two expansion headers, P8 and P9.  Look at the bottom of the left header and you'll see it's labeled '''P9'''. Table 11 on page 59 shows the pinout for P9.&lt;br /&gt;
&lt;br /&gt;
[[File:Bone P9 pinout.jpg|400px]]&lt;br /&gt;
&lt;br /&gt;
On the first photo above you can see that pin 1 (Ground) is wired to the '''-''' bus and pin 3 (3.3V) is wired to the '''+''' bus. The 220&amp;amp;Omega; resistor is wired to the '''-''' bus and the other end is attached to the negative lead of the LED.  The positive lead is attached to pin 12 which, as shown in Table 11, is attached to '''gpio1_28'''.  The gpio pins are in banks of 32 each, so to find the gpio number to use on the Beagle, use 1*32+28='''60'''.  Here's how you turn it on&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 export  gpiochip0  gpiochip32  gpiochip64  gpiochip96  unexport&lt;br /&gt;
&lt;br /&gt;
Presently no gpio pins are visible.  You need to tell it which pin to export&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 60 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 gpio60  gpiochip0  gpiochip32  gpiochip64  gpiochip96&lt;br /&gt;
&lt;br /&gt;
Notice '''gpio60''' has appeared.  All we need to do is tell it which direction and then turn it on.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd gpio60'''&lt;br /&gt;
 beagle$ '''echo out &amp;gt; direction'''&lt;br /&gt;
 beagle$ '''echo 1 &amp;gt; value'''&lt;br /&gt;
&lt;br /&gt;
Your LED should be on!  When you are done you can unexport the pin and it will disappear.&lt;br /&gt;
 beagle$ cd ..&lt;br /&gt;
 beagle$ '''echo 60 &amp;gt; unexport'''&lt;br /&gt;
&lt;br /&gt;
== Reading a switch - bone ==&lt;br /&gt;
&lt;br /&gt;
Now that you have an LED working, wiring in a switch is easy.  The picture above shows a push button switch wired in at the bottom of the P9 header.  Attach the '''+''' bus to one pole on the switch with a wire.  The other end of the switch is attached to pin 42 which is '''gpio0_7'''. &lt;br /&gt;
&lt;br /&gt;
Based on what you saw above, show how to read the switch.&lt;br /&gt;
&lt;br /&gt;
Once you have the switch and LED working you can use the following scripts to play with them.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd ~/exercises/gpio'''&lt;br /&gt;
 beagle$ '''./togglegpio.sh 60 0.1'''&lt;br /&gt;
&lt;br /&gt;
The LED should be blinking on and off.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''./readgpio.sh 7'''&lt;br /&gt;
&lt;br /&gt;
Push the pushbutton and see what happens.&lt;br /&gt;
&lt;br /&gt;
How can this work without a pulldown resistor? It turns out the Bone has an internal pulldown (and up) resistor that can be software enabled.  Try:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/kernel/debug/omap_mux'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 ain0               gpmc_ad2        lcd_data3      mii1_txd2&lt;br /&gt;
 ain1               gpmc_ad3        lcd_data4      mii1_txd3&lt;br /&gt;
 ain2               gpmc_ad4        lcd_data5      mii1_txen&lt;br /&gt;
 ain3               gpmc_ad5        lcd_data6      mmc0_clk&lt;br /&gt;
 ain4               gpmc_ad6        lcd_data7      mmc0_cmd&lt;br /&gt;
 ain5               gpmc_ad7        lcd_data8      mmc0_dat0&lt;br /&gt;
 ain6               gpmc_ad8        lcd_data9      mmc0_dat1&lt;br /&gt;
 ain7               gpmc_ad9        lcd_hsync      mmc0_dat2&lt;br /&gt;
 board              gpmc_advn_ale   lcd_pclk       mmc0_dat3&lt;br /&gt;
 ecap0_in_pwm0_out  gpmc_ben0_cle   lcd_vsync      rmii1_refclk&lt;br /&gt;
 emu0               gpmc_ben1       mcasp0_aclkr   spi0_cs0&lt;br /&gt;
 emu1               gpmc_clk        mcasp0_aclkx   spi0_cs1&lt;br /&gt;
 gpmc_a0            gpmc_csn0       mcasp0_ahclkr  spi0_d0&lt;br /&gt;
 gpmc_a1            gpmc_csn1       mcasp0_ahclkx  spi0_d1&lt;br /&gt;
 gpmc_a10           gpmc_csn2       mcasp0_axr0    spi0_sclk&lt;br /&gt;
 gpmc_a11           gpmc_csn3       mcasp0_axr1    uart0_ctsn&lt;br /&gt;
 gpmc_a2            gpmc_oen_ren    mcasp0_fsr     uart0_rtsn&lt;br /&gt;
 gpmc_a3            gpmc_wait0      mcasp0_fsx     uart0_rxd&lt;br /&gt;
 gpmc_a4            gpmc_wen        mdio_clk       uart0_txd&lt;br /&gt;
 gpmc_a5            gpmc_wpn        mdio_data      uart1_ctsn&lt;br /&gt;
 gpmc_a6            i2c0_scl        mii1_col       uart1_rtsn&lt;br /&gt;
 gpmc_a7            i2c0_sda        mii1_crs       uart1_rxd&lt;br /&gt;
 gpmc_a8            lcd_ac_bias_en  mii1_rxclk     uart1_txd&lt;br /&gt;
 gpmc_a9            lcd_data0       mii1_rxd0      usb0_drvvbus&lt;br /&gt;
 gpmc_ad0           lcd_data1       mii1_rxd1      usb1_drvvbus&lt;br /&gt;
 gpmc_ad1           lcd_data10      mii1_rxd2      vrefn&lt;br /&gt;
 gpmc_ad10          lcd_data11      mii1_rxd3      vrefp&lt;br /&gt;
 gpmc_ad11          lcd_data12      mii1_rxdv      xdma_event_intr0&lt;br /&gt;
 gpmc_ad12          lcd_data13      mii1_rxerr     xdma_event_intr1&lt;br /&gt;
 gpmc_ad13          lcd_data14      mii1_txclk&lt;br /&gt;
 gpmc_ad14          lcd_data15      mii1_txd0&lt;br /&gt;
 gpmc_ad15          lcd_data2       mii1_txd1&lt;br /&gt;
 beagle$ '''ls | wc'''&lt;br /&gt;
    125     125    1220&lt;br /&gt;
&lt;br /&gt;
Here you will find a list of how all the pin muxes are set. There are some 125 of them!&lt;br /&gt;
How do you find which one is gpio0_7?&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''grep gpio0_7 *'''&lt;br /&gt;
 ecap0_in_pwm0_out:name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0027), b NA, t NA&lt;br /&gt;
 ''ecap0_in_pwm0_out'':signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | ''gpio0_7''&lt;br /&gt;
&lt;br /&gt;
'''ecap0_in_pwm0_out''' is the file that contains gpio0_7.  Look up gpio0_7&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat ecap0_in_pwm0_out'''&lt;br /&gt;
 name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0027), b NA, t NA&lt;br /&gt;
 mode: ''OMAP_PIN_INPUT_PULLDOWN'' | OMAP_MUX_MODE7&lt;br /&gt;
 signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | gpio0_7&lt;br /&gt;
&lt;br /&gt;
It's set to be a PULLDOWN.  Sectiion 9.2.2.2, Page 877 of the AM335x Technical Reference manual discusses Pull Selection and tells which bits do what.  The '''0x0027''' is the code that says which MODE is used and how the pull up/down resistor is set. (There seems to be a mismatch between the manual and the bone.  The manual says bit 3 of 0x0027 enables the pull up/down.  Bit 3 isn’t set, but the pull down is working.)&lt;br /&gt;
&lt;br /&gt;
You can switch the gpio pin to pullup.  Try&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 0x0037 &amp;gt; ecap0_in_pwm0_out'''&lt;br /&gt;
 beagle$ '''cat ecap0_in_pwm0_out''' &lt;br /&gt;
 name: ecap0_in_pwm0_out.gpio0_7 (0x44e10964/0x964 = 0x0037), b NA, t NA&lt;br /&gt;
 mode: OMAP_PIN_INPUT_PULLUP | OMAP_MUX_MODE7&lt;br /&gt;
 signals: ecap0_in_pwm0_out | uart3_txd | spi1_cs1 | pr1_ecap0_ecap_capin_apwm_o | spi1_sclk | mmc0_sdwp | xdma_event_intr2 | gpio0_7&lt;br /&gt;
&lt;br /&gt;
Does it act like a pullup resistor is attached?&lt;br /&gt;
&lt;br /&gt;
=== Challenge ===&lt;br /&gt;
&lt;br /&gt;
* Can you modify the scripts above to read the switch and turn the LED on and off?&lt;br /&gt;
* Rewire your switch to work with a pullup resistor.&lt;br /&gt;
&lt;br /&gt;
== Analog in - bone ==&lt;br /&gt;
&lt;br /&gt;
(This is based on [http://www.gigamegablog.com/2012/01/22/beaglebone-coding-101-using-the-serial-and-analog-pins/ this].)&lt;br /&gt;
&lt;br /&gt;
The bone has eight Analog Inputs.  Several are exposed on P9.  They are labeled '''AIN''' in table 11 above.  How many do you find?&lt;br /&gt;
&lt;br /&gt;
The AIN pins are sampled at 12 bits and 100k samples per second.  The input voltage is between 0 and 1.8V.  Fortunately, both voltages are available on P9.&lt;br /&gt;
&lt;br /&gt;
The photo above shows a small potentiometer wired to the bone.  One end goes to the analog ground (pin 34), the other analog 1.8V (pin 32). The wiper is attached to '''AIN5''' which is pin 36.&lt;br /&gt;
&lt;br /&gt;
You interact with the analog in much like the gpio, but it appears in a different location.  How do you find that location?  One approach is the '''find''' command.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''find / -name ain5'''&lt;br /&gt;
 /sys/devices/platform/omap/tsc/ain5&lt;br /&gt;
 /sys/kernel/debug/omap_mux/ain5&lt;br /&gt;
 '''^C'''&lt;br /&gt;
&lt;br /&gt;
I used '''Ctrl-C''' to interrupt since it already found what I wanted.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/devices/platform/omap/tsc'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 ain1  ain3  ain5  ain7  driver    power      uevent&lt;br /&gt;
 ain2  ain4  ain6  ain8  modalias  subsystem&lt;br /&gt;
&lt;br /&gt;
There are the various analog inputs, but watch out.  This interface starts numbering at '''1''' and Table 11 starts at '''0''', so to read AIN5 you need to look at '''ain6'''!&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cat ain6'''&lt;br /&gt;
 1185&lt;br /&gt;
&lt;br /&gt;
(Unfortunately the interface doesn't print a RETURN after the value.)&lt;br /&gt;
Change the pot and rerun the cat.  What's the min and max value you get?  Is it 12 bits?&lt;br /&gt;
&lt;br /&gt;
=== Challenge ===&lt;br /&gt;
Rewrite the scripts from before to read an AIN pin and continuously display it's value.&lt;br /&gt;
&lt;br /&gt;
== Reading a gpio pin with an Oscilloscope - xM ==&lt;br /&gt;
&lt;br /&gt;
You can easily access many of the gpio pins via the Main Expansion Header.  Page 107 of the [http://beagleboard.org/static/BBxMSRM_latest.pdf BeagleBoard-xM System Reference Manual] has this figure.&lt;br /&gt;
[[File:MainHeader.png | 750px]]&lt;br /&gt;
&lt;br /&gt;
Unfortunately the gpio pins don't appear here.  It turns out the processor has more internal I/O lines than it has physical pins.  Each physical pin can can be connected to up to 8 internal lines.  [[BeagleBoardPinMux]] does a nice job of explaining it all.  The big clue is here [[BeagleBoardPinMux#Beagle]] which references Table 22 on page 108 of the -xM [http://beagleboard.org/static/BBSRM_latest.pdf System Reference Manual].&lt;br /&gt;
&lt;br /&gt;
[[File:ExpansionSignals.png‎]]&lt;br /&gt;
&lt;br /&gt;
Note that gpio130 appears on pin 21 of the Expansion Header. Also note that pins 27 and 28 are ground.  Attach your scope probe to these.  Now, let's put a signal on the pin.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export      gpiochip128@  gpiochip192@  gpiochip64@  unexport&lt;br /&gt;
 gpiochip0@  gpiochip160@  gpiochip32@   gpiochip96@&lt;br /&gt;
&lt;br /&gt;
Notice there is no folder for gpio130.  Create it with:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 130 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export    gpiochip0@    gpiochip160@  gpiochip32@  gpiochip96@&lt;br /&gt;
 gpio130@  gpiochip128@  gpiochip192@  gpiochip64@  unexport&lt;br /&gt;
&lt;br /&gt;
Update your exercises folder and cd to gpio directory.&lt;br /&gt;
&lt;br /&gt;
  beagle$ '''cd'''&lt;br /&gt;
  beagle$ '''cd exercises/gpio'''&lt;br /&gt;
  beagle$ '''git pull'''&lt;br /&gt;
  beagle$ '''gedit togglegpio.sh'''&lt;br /&gt;
&lt;br /&gt;
Can you tell what the program is doing?  Try running it:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''togglegpio 130 0.05'''&lt;br /&gt;
&lt;br /&gt;
Note that if you are the root user (which is the default case for Angstrom), you will have to type the following command:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''./togglegpio 130 0.05'''&lt;br /&gt;
&lt;br /&gt;
The first argument tells which gpio port to toggle, the second tells how long to delay between toggling.  In this example 0.05 s is 50 ms, which should give a period around 100ms. Measure the signal on an oscilloscope.&lt;br /&gt;
&lt;br /&gt;
== Assignment: gpio from the shell ==&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;Measuring a gpio pin on an Oscilloscope &amp;lt;/span&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Answer the following questions about gpio measurements.&lt;br /&gt;
&lt;br /&gt;
# What's the min and max voltage?  &lt;br /&gt;
# What period is it?  &lt;br /&gt;
# How close is it to 100ms?  &lt;br /&gt;
# Why do they differ?&lt;br /&gt;
# Run '''htop''' and see how much processor you are using.&lt;br /&gt;
# Try different values for the sleep time (2nd argument). What's the shortest period you can get? Make a table of the values you try and the corresponding period and processor usage.&lt;br /&gt;
# How stable is the period?  &lt;br /&gt;
# Try launching something like '''mplayer'''. How stable is the period?&lt;br /&gt;
# Try cleaning up togglegpio and removing unneeded lines.  Does it impact the period?&lt;br /&gt;
# togglegpio uses bash (first line in file).  Try using sh.  Is the period shorter?&lt;br /&gt;
# What's the shortest period you can get?&lt;br /&gt;
&lt;br /&gt;
=== Toggling the LEDs ===&lt;br /&gt;
&lt;br /&gt;
Modify togglegpio (call it toggleLED) to toggle the LEDs.  Can you get the LED to appear to dim by changing the duty cycle of the toggling?&lt;br /&gt;
&lt;br /&gt;
=== User Button to gpio 130 ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that reads the User Button and outputs it value on gpio pin 130.&lt;br /&gt;
&lt;br /&gt;
=== Count the User Button Presses ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that displays a count of the number of times the User Button has been pressed.&lt;br /&gt;
&lt;br /&gt;
=== Copy gpio 130 to gpio 131 ===&lt;br /&gt;
&lt;br /&gt;
Write a shell script that copies the value of gpio pin 130 to gpio pin 131.  How much CPU time does it take?  What's the delay from the time the input changes until the output changes?  How constant is the delay?&lt;br /&gt;
&lt;br /&gt;
== Additional Exercises ==&lt;br /&gt;
&lt;br /&gt;
=== Reading the Keyboard and Mouse ===&lt;br /&gt;
Try this:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/input'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 beagle$ '''evtest /dev/input/event2'''&lt;br /&gt;
 Hit ctrl-C to stop&lt;br /&gt;
&lt;br /&gt;
Now move your mouse around, or try you keyboard.  My mouse is plugged into the bottom left USB port and event2 responds to it.  Where do your keyboard and mouse appear?&lt;br /&gt;
&lt;br /&gt;
=== Reading the User Button ===&lt;br /&gt;
('''Note''': This may not work on some versions of the OS. In these versions another program is controlling the gpio port that the User button is attached to.)&lt;br /&gt;
&lt;br /&gt;
The Beagle has a couple of push buttons. One reboots the whole board.  Use with care.  One is for you to use, it's to the right of the Reset button, between the two stacks of USB ports.&lt;br /&gt;
[[File:BeagleUserButton.png]]&lt;br /&gt;
&lt;br /&gt;
It's attached to gpio port 4.  You can read it via:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''cd /sys/class/gpio'''&lt;br /&gt;
 beagle$ '''ls -F'''&lt;br /&gt;
 export    gpio133@  gpio137@  gpio141@      gpiochip160@  gpiochip96@&lt;br /&gt;
 gpio130@  gpio134@  gpio138@  gpio162@      gpiochip192@  unexport&lt;br /&gt;
 gpio131@  gpio135@  gpio139@  gpiochip0@    gpiochip32@&lt;br /&gt;
 gpio132@  gpio136@  gpio140@  gpiochip128@  gpiochip64@&lt;br /&gt;
&lt;br /&gt;
Notice there is no gpio4.  Here's how you can create it, set it to an input port and read its value:&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''echo 4 &amp;gt; export'''&lt;br /&gt;
 beagle$ '''ls'''&lt;br /&gt;
 beagle$ '''cd gpio4'''&lt;br /&gt;
 beagle$ '''echo in &amp;gt; direction'''&lt;br /&gt;
 beagle$ '''cat value'''&lt;br /&gt;
&lt;br /&gt;
Try holding down the switch and doing &amp;lt;code&amp;gt;cat value&amp;lt;/code&amp;gt; again.  Does the value change?  There's a shell script called '''readgpio''' that repeatedly reads the switch.&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''readgpio 4'''&lt;br /&gt;
&lt;br /&gt;
Try pushing the switch.  Does it work?  Hit ctrl-C to stop.  Look at readgpio.  How does it work?&lt;br /&gt;
&lt;br /&gt;
 beagle$ '''which readgpio'''&lt;br /&gt;
 beagle$ '''cp /usr/bin/readgpio ~'''&lt;br /&gt;
 beagle$ '''gedit ~/readgpio'''&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
# [http://wh1t3s.com/2009/05/14/reading-beagleboard-gpio/ Here] is wh1ts article on flashing an LED.  It is referenced in the '''readgpio''' file that comes on the Beagle.&lt;br /&gt;
# [http://blog.makezine.com/archive/2009/02/blinking-leds-with-the-beagle-board.html?CMP=OTC-0D6B48984890 This] Make magazine article has a few more details.&lt;br /&gt;
# [http://www.avrfreaks.net/wiki/index.php/Documentation:Linux/GPIO#Getting_access_to_a_GPIO Here] in a gpio reference for Linux in general. It includes sample 'C' code for flashing at 1 Hz.&lt;br /&gt;
# [https://groups.google.com/forum/?hl=en#!msg/beagleboard/20rM-r8C2YY/hVZiN2ahI8YJ Here] is a posting in the Beagle Google group about gpio.&lt;br /&gt;
# [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/gpio.txt;h=36af58eba136bac198ea3b1f33f34236be9ce5df;hb=HEAD Here] is some information about gpio from the kernel point of view.&lt;br /&gt;
# [http://wiki.gumstix.org/index.php?title=GPIO_Event_Driver Here] is some info on a GPIO Event Driver&lt;br /&gt;
# [https://www.ridgerun.com/developer/wiki/index.php/How_to_use_GPIO_signals Here] is info on how to set '''edge''' to falling and poll() the pin.&lt;br /&gt;
# [http://www.kernel.org/doc/Documentation/gpio.txt Here] is the kernel Documentation on gpio.&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_Contributions_and_Project_Status</id>
		<title>ECE497 Contributions and Project Status</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_Contributions_and_Project_Status"/>
				<updated>2012-09-08T18:08:25Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Added a link to my github.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Contributions]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
== Fall 2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
Please edit this page and add your project to this list. Copy my [[ECE497 Project Template]] to your own eLinux page and include the title of your project in the name of the page.  &lt;br /&gt;
&lt;br /&gt;
Please make the list alphabetical by family name.&lt;br /&gt;
&lt;br /&gt;
Take a look at what you and others have contributed.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- &lt;br /&gt;
! Name&lt;br /&gt;
! Contributions&lt;br /&gt;
! Project&lt;br /&gt;
! git repository&lt;br /&gt;
|-&lt;br /&gt;
| [[User:atniptw | Tom Atnip]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/atniptw/ atniptw]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:larmorgs | Greg Larmore]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/larmorgs/ larmorgs]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:jessebrannon | Jesse Brannon]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:Xinyu1991 | Xinyu Cheng]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/xinyu1991]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:draneaw | Alex Drane]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 draneaw Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/draneaw/My-Beagle-Project draneaw]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:duganje | Josh Dugan]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 duganje Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/duganje/ duganje]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Geislekj | Kevin Geisler]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/geislekj/ geislekj]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:chris.good | Christopher A Good]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:hansenrl | Ross Hansen]]&lt;br /&gt;
| [[Special:Contributions/hansenrl|contrib]]&lt;br /&gt;
| [[ECE497 hansenrl Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/hansenrl/ Hansenrl]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:jungeml | Michael Junge]]&lt;br /&gt;
| [[Special:Contributions/jungeml|contrib]]&lt;br /&gt;
| [[ECE497 jungeml Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/jungeml/ Jungeml]&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Lix | Xia Li]]&lt;br /&gt;
| [[Special:Contributions/Lix|contrib]]&lt;br /&gt;
| [[ECE497 Lix Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/1984xiali/ xiali]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:mmoravec | Matthew Moravec]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 mmoravec Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ngop | Peter Ngo]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 ngop Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/ngop/ ngop]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:shinnsm|Stephen Shinn]]&lt;br /&gt;
| [[Special:Contributions/shinnsm|contrib]]&lt;br /&gt;
| Project TBD&lt;br /&gt;
| [https://github.com/shinnsm shinnsm]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Yoder | Mark A. Yoder]]&lt;br /&gt;
| [[Special:Contributions/Yoder | contrib]]&lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/MarkAYoder MarkAYoder]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Popenhjc | James Popenhagen]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 popenhjc Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/popenhjc/ popenhjc]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Whiteer | Elias White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 whiteer Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/whiteer whiteer]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ruff | Ruffin White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/ruffsl/ ruffsl]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Richarsm | Sean Richardson]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 richarsm Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/seanrich Sean Richardson]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Millerap | Andrew Miller]]&lt;br /&gt;
|&lt;br /&gt;
| [[ECE 497 millerap Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/millerap millerap]&lt;br /&gt;
|-| &lt;br /&gt;
| [[User:Astroricks | Yue Zhang]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Yue Zhang Project | My Beagle Project]]&lt;br /&gt;
| [https://github.com/Astroricks/Beagle-Project Yue Zhang]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Winter 2011-2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Contributions ===&lt;br /&gt;
&lt;br /&gt;
# [[Special:Contributions/Yuming | Yuming Cao]]&lt;br /&gt;
# [[Special:Contributions/Yifei | Yifei Li]]&lt;br /&gt;
# [[Special:Contributions/Harrisgw | Greg Harrison]]&lt;br /&gt;
# [[Special:Contributions/mac | Jack Ma]]&lt;br /&gt;
# [[Special:Contributions/Gemini91 | Guanqun Wang]]&lt;br /&gt;
# [[Special:Contributions/Yanj | Mona Yan]]&lt;br /&gt;
# [[Special:Contributions/Yoder | Mark A. Yoder]]&lt;br /&gt;
# [[Special:Contributions/Yuhasmj | Michael Yuhas]]&lt;br /&gt;
# [[Special:Contributions/Ziyi Zhang | Ziyi Zhang]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | David Zitnik]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | Alex Drane]]&lt;br /&gt;
# [[Special:Contributions/jessebrannon | Jesse Brannon]]&lt;br /&gt;
# [[Special:Contributions/larmorgs | Greg Larmore]]&lt;br /&gt;
# [[Special:Contributions/jungeml | Michael Junge]]&lt;br /&gt;
# [[Special:Contributions/millerap | Andrew Miller]]&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Yoder | Mark A. Yoder]], [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
# [[user:Yanj|Mona Yan]] and [[user:Harrisgw| Greg Harrison]], [[PS EYE QT PROJECT | Playstation Eye Audio with Qt]]&lt;br /&gt;
# [[user:Caogecym | Yuming Cao]] and [[user:Ziyi Zhang | Ziyi Zhang]], [[Node.js Weather Station]]&lt;br /&gt;
# [[user:Yifei| Yifei Li]] and [[user:Gemini91| Guanqun Wang]], [[ Kinect Project | Play games using Kinect on Beagleboard]]&lt;br /&gt;
# [[user:Yuhasmj| Michael J. Yuhas]] and [[user:mac | Jack Ma]], [[ Multiple Partitions via U-boot | Multiple Partitions via U-boot ]]&lt;br /&gt;
# [[user:Zitnikdj| David Zitnik]], [[ ECE497 Project: Twitter Java Application | Twitter Java Application ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T12:12:56Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* About Me */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Technical interest areas:&lt;br /&gt;
::* Signal/Image Processing&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Mathematics in general&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin] profile&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T12:11:56Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Technical interest areas:&lt;br /&gt;
::* Signal/Image Processing&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Mathematics in general&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin] profile&lt;br /&gt;
:And when I have to do circuit [http://www.youtube.com/watch?v=31g0YE61PLQ analysis].&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T12:00:11Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Interests:&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Signal Processing&lt;br /&gt;
::* Mathematics&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin] profile&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:59:47Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Name: Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Interests:&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Signal Processing&lt;br /&gt;
::* Mathematics&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin] profile&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:59:06Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:Interests:&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Signal Processing&lt;br /&gt;
::* Mathematics&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin]&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:58:38Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Pursuing a B.Sc. in Electrical Engineering&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin]&lt;br /&gt;
:Interests:&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Signal Processing&lt;br /&gt;
::* Mathematics&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_Contributions_and_Project_Status</id>
		<title>ECE497 Contributions and Project Status</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_Contributions_and_Project_Status"/>
				<updated>2012-08-31T11:57:56Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Project Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Contributions]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
== Fall 2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
Please edit this page and add your project to this list. Copy my [[ECE497 Project Template]] to your own eLinux page and include the title of your project in the name of the page.  &lt;br /&gt;
&lt;br /&gt;
Please make the list alphabetical by family name.&lt;br /&gt;
&lt;br /&gt;
Take a look at what you and others have contributed.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- &lt;br /&gt;
! Name&lt;br /&gt;
! Contributions&lt;br /&gt;
! Project&lt;br /&gt;
! git repository&lt;br /&gt;
|-&lt;br /&gt;
| [[User:atniptw | Tom Atnip]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:larmorgs | Greg Larmore]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:jessebrannon | Jesse Brannon]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:duganje | Josh Dugan]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 duganje Project | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:hansenrl | Ross Hansen]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 hansenrl Project | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:mmoravec | Matthew Moravec]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 mmoravec Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ngop | Peter Ngo]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 ngop Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:shinnsm|Stephen Shinn]]&lt;br /&gt;
| [[Special:Contributions/shinnsm|contrib]]&lt;br /&gt;
| Project TBD&lt;br /&gt;
| [https://github.com/shinnsm shinnsm]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ruff | Ruffin White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 ruff Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Yoder | Mark A. Yoder]]&lt;br /&gt;
| [[Special:Contributions/Yoder | contrib]]&lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/MarkAYoder MarkAYoder]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Popenhjc | James Popenhagen]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 popenhjc Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Whiteer | Elias White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 whiteer Project | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Winter 2011-2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Contributions ===&lt;br /&gt;
&lt;br /&gt;
# [[Special:Contributions/Yuming | Yuming Cao]]&lt;br /&gt;
# [[Special:Contributions/Yifei | Yifei Li]]&lt;br /&gt;
# [[Special:Contributions/Harrisgw | Greg Harrison]]&lt;br /&gt;
# [[Special:Contributions/mac | Jack Ma]]&lt;br /&gt;
# [[Special:Contributions/Gemini91 | Guanqun Wang]]&lt;br /&gt;
# [[Special:Contributions/Yanj | Mona Yan]]&lt;br /&gt;
# [[Special:Contributions/Yoder | Mark A. Yoder]]&lt;br /&gt;
# [[Special:Contributions/Yuhasmj | Michael Yuhas]]&lt;br /&gt;
# [[Special:Contributions/Ziyi Zhang | Ziyi Zhang]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | David Zitnik]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | Alex Drane]]&lt;br /&gt;
# [[Special:Contributions/jessebrannon | Jesse Brannon]]&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Yoder | Mark A. Yoder]], [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
# [[user:Yanj|Mona Yan]] and [[user:Harrisgw| Greg Harrison]], [[PS EYE QT PROJECT | Playstation Eye Audio with Qt]]&lt;br /&gt;
# [[user:Caogecym | Yuming Cao]] and [[user:Ziyi Zhang | Ziyi Zhang]], [[Node.js Weather Station]]&lt;br /&gt;
# [[user:Yifei| Yifei Li]] and [[user:Gemini91| Guanqun Wang]], [[ Kinect Project | Play games using Kinect on Beagleboard]]&lt;br /&gt;
# [[user:Yuhasmj| Michael J. Yuhas]] and [[user:mac | Jack Ma]], [[ Multiple Partitions via U-boot | Multiple Partitions via U-boot ]]&lt;br /&gt;
# [[user:Zitnikdj| David Zitnik]], [[ ECE497 Project: Twitter Java Application | Twitter Java Application ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:56:09Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Electrical Engineering Student&lt;br /&gt;
:My [http://www.linkedin.com/profile/view?id=139481444&amp;amp;trk=tab_pro Linkedin]&lt;br /&gt;
:Interests:&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Signal Processing&lt;br /&gt;
::* Mathematics&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:53:10Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
:Electrical Engineering Student&lt;br /&gt;
:Interests:&lt;br /&gt;
::* Robotics&lt;br /&gt;
::* Signal Processing&lt;br /&gt;
::* Mathematics&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:49:29Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
=== Elias White ===&lt;br /&gt;
 Electrical Engineering Student&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:48:59Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== About Me ==&lt;br /&gt;
;Elias White&lt;br /&gt;
: Electrical Engineering Student&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:45:24Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;Elias White&lt;br /&gt;
: Electrical Engineering Student&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
Pending.&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:44:41Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;Elias White&lt;br /&gt;
: Electrical Engineering Student&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
== Projects ==&lt;br /&gt;
== Mini-Projects ==&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;Elias White&lt;br /&gt;
: *Electrical Engineering Student&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:38:53Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to my page!  So far I haven't done any editing,  but that will soon change.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_Contributions_and_Project_Status</id>
		<title>ECE497 Contributions and Project Status</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_Contributions_and_Project_Status"/>
				<updated>2012-08-31T11:31:56Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: /* Project Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497 |Contributions]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
== Fall 2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
Please edit this page and add your project to this list. Copy my [[ECE497 Project Template]] to your own eLinux page and include the title of your project in the name of the page.  &lt;br /&gt;
&lt;br /&gt;
Please make the list alphabetical by family name.&lt;br /&gt;
&lt;br /&gt;
Take a look at what you and others have contributed.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|- &lt;br /&gt;
! Name&lt;br /&gt;
! Contributions&lt;br /&gt;
! Project&lt;br /&gt;
! git repository&lt;br /&gt;
|-&lt;br /&gt;
| [[User:atniptw | Tom Atnip]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:larmorgs | Greg Larmore]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:jessebrannon | Jesse Brannon]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:duganje | Josh Dugan]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 duganje Project | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:hansenrl | Ross Hansen]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 hansenrl Project | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| [[User:mmoravec | Matthew Moravec]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 mmoravec Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ngop | Peter Ngo]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 ngop Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:shinnsm|Stephen Shinn]]&lt;br /&gt;
| [[Special:Contributions/shinnsm|contrib]]&lt;br /&gt;
| Project TBD&lt;br /&gt;
| [https://github.com/shinnsm shinnsm]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ruff | Ruffin White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 ruff Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Yoder | Mark A. Yoder]]&lt;br /&gt;
| [[Special:Contributions/Yoder | contrib]]&lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| [https://github.com/MarkAYoder MarkAYoder]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Popenhjc | James Popenhagen]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 popenhjc Project | My Beagle Project]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Whiteer | Elias White]]&lt;br /&gt;
| &lt;br /&gt;
| [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Winter 2011-2012 ==&lt;br /&gt;
&lt;br /&gt;
=== Contributions ===&lt;br /&gt;
&lt;br /&gt;
# [[Special:Contributions/Yuming | Yuming Cao]]&lt;br /&gt;
# [[Special:Contributions/Yifei | Yifei Li]]&lt;br /&gt;
# [[Special:Contributions/Harrisgw | Greg Harrison]]&lt;br /&gt;
# [[Special:Contributions/mac | Jack Ma]]&lt;br /&gt;
# [[Special:Contributions/Gemini91 | Guanqun Wang]]&lt;br /&gt;
# [[Special:Contributions/Yanj | Mona Yan]]&lt;br /&gt;
# [[Special:Contributions/Yoder | Mark A. Yoder]]&lt;br /&gt;
# [[Special:Contributions/Yuhasmj | Michael Yuhas]]&lt;br /&gt;
# [[Special:Contributions/Ziyi Zhang | Ziyi Zhang]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | David Zitnik]]&lt;br /&gt;
# [[Special:Contributions/Zitnikdj | Alex Drane]]&lt;br /&gt;
# [[Special:Contributions/jessebrannon | Jesse Brannon]]&lt;br /&gt;
&lt;br /&gt;
=== Project Status ===&lt;br /&gt;
&lt;br /&gt;
# [[User:Yoder | Mark A. Yoder]], [[ECE497 Project Template | My Beagle Project]]&lt;br /&gt;
# [[user:Yanj|Mona Yan]] and [[user:Harrisgw| Greg Harrison]], [[PS EYE QT PROJECT | Playstation Eye Audio with Qt]]&lt;br /&gt;
# [[user:Caogecym | Yuming Cao]] and [[user:Ziyi Zhang | Ziyi Zhang]], [[Node.js Weather Station]]&lt;br /&gt;
# [[user:Yifei| Yifei Li]] and [[user:Gemini91| Guanqun Wang]], [[ Kinect Project | Play games using Kinect on Beagleboard]]&lt;br /&gt;
# [[user:Yuhasmj| Michael J. Yuhas]] and [[user:mac | Jack Ma]], [[ Multiple Partitions via U-boot | Multiple Partitions via U-boot ]]&lt;br /&gt;
# [[user:Zitnikdj| David Zitnik]], [[ ECE497 Project: Twitter Java Application | Twitter Java Application ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T11:16:38Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to my page!  So far I haven't done any editing,  but that will soon change.&lt;br /&gt;
&amp;lt;/br&amp;gt;&lt;br /&gt;
[[Category:ECE497]]&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T10:36:19Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to my page!  So far I haven't done any editing,  but that will soon change.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/User:Whiteer</id>
		<title>User:Whiteer</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/User:Whiteer"/>
				<updated>2012-08-31T10:32:41Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Space folder&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to my page!  So far I haven't done any editing here but that will soon change.&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	<entry>
		<id>http://elinux.org/ECE497_Editing_a_Wiki</id>
		<title>ECE497 Editing a Wiki</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/ECE497_Editing_a_Wiki"/>
				<updated>2012-08-31T10:31:27Z</updated>
		
		<summary type="html">&lt;p&gt;Whiteer: Added my name&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:ECE497]]&lt;br /&gt;
{{YoderHead}}&lt;br /&gt;
&lt;br /&gt;
Here is a wiki you can practice editing.  Before you can edit it you will have to create an login.  Pick something that will make it easy for me to identify you as part of my class.  Then just add your name and date on the end of the table.&lt;br /&gt;
&lt;br /&gt;
You can get help here: [[Help:Contents]].&lt;br /&gt;
&lt;br /&gt;
If you need help with syntax check out the [[Editing Quickstart Guide|eLinux guide]] or the [http://en.wikipedia.org/wiki/Wikipedia:Cheatsheet Wikipedia Cheatsheet].&lt;br /&gt;
&lt;br /&gt;
== Fall 2012 ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Yoder | Mark A. Yoder]]&lt;br /&gt;
| 18-July-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:atniptw | Tom Atnip]]&lt;br /&gt;
| 20-July-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:bssachin45 | B S Sachin]]&lt;br /&gt;
| 25-July-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:ruff | Ruffin White]]&lt;br /&gt;
| 16-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Popenhjc | James Popenhagen]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:mmoravec | Matthew Moravec]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:ngop | Peter Ngo]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:duganje | Josh Dugan]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[user:hansenrl | Ross Hansen]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[User:shinnsm|Stephen Shinn]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[User:draneaw|Alex Drane]]&lt;br /&gt;
| 30-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[User:larmorgs|Greg Larmore]]&lt;br /&gt;
| 31-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[User:jessebrannon|Jesse Brannon]]&lt;br /&gt;
| 31-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[User:lix|Xia Li]]&lt;br /&gt;
| 31-August-2012&lt;br /&gt;
|-&lt;br /&gt;
| [[User:whiteer|Elias White]]&lt;br /&gt;
| 31-August-2012&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Winter 2011-2012 ==&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Yoder | Mark A. Yoder]]&lt;br /&gt;
| 21-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Yuming | Yuming Cao]]&lt;br /&gt;
| 21-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Yuhasmj | Michael Yuhas]]&lt;br /&gt;
| 21-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Yifei | Yifei Li]]&lt;br /&gt;
| 22-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Ziyi Zhang | Ziyi Zhang]]&lt;br /&gt;
| 24-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
|[[user: mac | Jack Ma]]&lt;br /&gt;
| 28-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Zitnikdj | David Zitnik]]&lt;br /&gt;
| 25-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Harrisgw | Greg Harrison]]&lt;br /&gt;
| 26-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Yanj | Mona J Yan]]&lt;br /&gt;
| 27-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:Gemini91 | Guanqun Wang]]&lt;br /&gt;
| 28-Nov-2011&lt;br /&gt;
|-&lt;br /&gt;
| [[user:vsn1985 | Narayanan VS]]&lt;br /&gt;
| 28-Nov-2011&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{YoderFoot}}&lt;/div&gt;</summary>
		<author><name>Whiteer</name></author>	</entry>

	</feed>