Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!--Wmat (talk)
Please email User:Wmat if you experience any issues with the Request Account form.

ECE497 - 32-bit Embedded Linux, Rose-Hulman

Revision as of 17:30, 28 May 2010 by Tim Bird (Talk | contribs)

Jump to: navigation, search


This Wiki is about a college-level embedded processor class being taught using the BeagleBoard. It's being taught by Professor Mark A. Yoder in the Electrical and Computer Engineering Department at Rose-Hulman Institute of Technology. Rose is a small, private, undergraduate engineering school that focuses on undergraduate education.

A major part of the class is learning how to work with and leverage off of the open source community. The course requires a major project which will either significantly contribute and an existing open source project, or launch a new one. Here's the official description of the course.

Course Description

ECE 597 32-bit Embedded Linux 4R-0L-4C S Pre: Consent of instructor

Brief introduction to Linux on a 32-bit embedded processor. Detailed study of what happens from power up the fully running X-Windows. Adapting Linux to a given application including: boot time reduction, power management and root filesystem support. Streaming media on an embedded processor. Using a DSP co-processor to improve performance. Design project. Previous Linux experience not required, but helpful. C programming, operating system and hardware experience required.


This is a new course, so the calendar doesn't go very far in the future. It will be updated as we go. You can see it here: ECE597 Calendar


We'll be using the text Embedded Linux Primer, by Christopher Hallinan, published by Pearson Prentice Hall. The link is for the 1st edition; however we are using a prepublication version of the 2nd edition. It will be available in the bookstore around the first day of class.

The text is not Beagle specific, rather it pulls examples from many embedded processors. It has many listings which detail the outputs from various processors. One of your tasks will be to reproduce the listing for the BeagleBoard.

We'll be posting our listing here: Listings for Embedded Linux Primer


Grades in the class aren't based on the traditional homework and exams, rather, they are based on a major Beagle-based project and your portfolio. The project will be done with teams of about 3 people. We have people in the class with strong embedded backgrounds and others with strong Linux background. The goal is to have teams include complementary skills.

Your portfolio is a collection of what you, as an individual, have contributed to the community and the team.


There are many things you will have to do to get your computer set up, etc. Exercises gives the step-by-step details along with due dates.

Class PowerPoint

The PowerPoint for the class is here.


Since we are working with the open source community, you need to know where the action is. Here are some useful links to what's happening in the Beagle community.

Project Ideas

Here are some links where you'll find ideas for your project. Project Ideas

Setting up your hardware and software

The Hardware

You need to need to come by my office to pick up a BeagleBoard. I have on Beagle per team, plus a couple of extras. If you got a rec C3 board earlier you need to come swap it for a rev C4. You also need to buy the Beagle Kit from Mark Crosby in room C124. It's $40. You'll also need a USB mouse, keyboard and powered hub, plus an SD card and reader. 2G should be big enough. I suggest at least one card per person (not team). This will let you try new things without deleting the old.

The Software

We're using mostly open source software. Go to here Software Setup to see see how to get everything installed.

--Prof. Yoder 15:23, 4 March 2010 (UTC)