ECE497 Calendar and Exercises

From eLinux.org
Revision as of 10:28, 2 December 2011 by Yoder (talk | contribs) (Week 5: Added old week 2)
Jump to: navigation, search


Here's what you'll need to do for the class. Unless stated otherwise these are individual exercises, not team.

I'm updating this from last year, so be sure to check the year to be sure it's been refreshed.

The Date the Exercise appears is the date it is due.

Week 1

Day Date Reading Topic (happens on date given) Exercise (due on date given) Links
1-1 28-Nov-2011 Introduction, Demos
  1. Create a user name on eLinux.org
  2. Add your name to the ECE497 Editing a Wiki page.
  3. Edit your User page on eLinux and add [[Category:ECE497]] to it. This will make it appear on the Category page. Check out User:Mayhewsw for ideas of what else to put on your User page.
  4. Add your user name to ECE497 Contributions.
ECE497 Editing a Wiki, ECE497 Contributions
1-2 29 General Purpose IO, LEDs and push buttons. Set up a Beagle, demo in class. EBC Exercise 00 Installing Angstrom on SD
" Download the BeagleBoard-xM System Reference Manual. Be sure it's for the xM. BeagleBoard-xM System Reference Manual
" Download the DM3730 Technical Reference Manual. Be sure you have the right one, it's some 3,600+ pages long. DM3730 Technical Reference Manual
1-3 1-Dec-2011 Interrupts and gpio Set up host computer. Install Linux in a virtual machine on your laptop, do a native install or request access to the "Cloud". I suggest Ubuntu 10.4 LTS. Some of the TI software may require it. EBC Exercise 00 Setting Up Hardware and Software
1-4 2 Pulse Width Modulation Read a push button and flash an LED. Write a short memo that answers the 11 questions in this section. Only do those under the green heading. EBC Exercise 02 Flashing an LED
" Add your project ideas ECE497 Project Ideas

Week 2

Day Date Reading Topic Exercise Links
2-1 5-Dec I2C gpio via polling and interrupts. Write a short memo that answers the questions in this section. Only do those under the green headings. EBC Exercise 03 gpio Polling and Interrupts

EBC Exercise 01 Using bitbake for Kernel and U-boot

2-2 6 The GNU Project Debugger (gdb) PWM EBC Exercise 04 Pulse Width Modulation
2-3 8 make I2C EBC Exercise 05 I2C
2-4 9 Advanced Linux Sound Architecture (ALSA) gdb EBC Exercise 06 gdb Debugging

Week 3

Day Date Reading Topic Exercise Links
3-1 12 Using the DSP (c6run) make EBC Exercise 07a make, EBC Exercise 07b make with variables
3-2 13 Video Processing
3-3 15 ALSA EBC Exercise 08 Using ALSA for Audio Processing
3-4 16 c6run EBC Exercise 09 Using the DSP for Audio Processing

Week 3 Old

Day Date Reading Topic Exercise Links
3-1 21 5.3-5.6 Command Line Processing, __setup Macro,

Google Summer of Code (GSoC) 28-Mar to 8-Apr

" 6.1-6.3 System Initialization Make x11vnc start on bootup.
3-2 22 6.4-6.7 Initial RAM Disk, Using initramfs, Shutdown
3-3 24 7.1-7.3 Bootloaders, Das U-Boot Modify the prompt in U-boot to include you initials. ECE497 Lab06 Configuring U-boot
3-4 25 No Class
3-5 25-27, Mar-2011 Indiana LinuxFest is a community F/OSS conference, which is showcasing the best the community has to offer in the way of Free and Open Source Software, Open Hardware, and Free Culture. We are also highlighting the best and brightest from all of these communities from the hobbyist to professional level.

I'll be presenting at this on Saturday afternoon.

Indiana LinuxFest

Week 4

Day Date Reading Topic Exercise Links
4-1 19
4-2 20 Video through EBC Exercise 10 The Display SubSystem (DSS) Writing to the Framebuffer
4-3 5-Jan-2012
4-4 6

Week 4 Old

Day Date Reading Topic Exercise Links
4-1 28-Mar Report for LinuxFest, Check on Progress
4-2 29 8.1-8.4 Device Driver Basics, Driver Methods Follow the example in 8.1-8.2 to write a kernel module. ECE497 Lab08 Device Drivers
4-3 31 11 BusyBox Reconfigure BusyBox ECE497 Lab07 Configuring BusyBox
4-4 1-Apr-2011 No Class

Week 5

Old Week 1

Day Date Reading Topic Exercise Links
1-2 8 2.1-2.3.5 Booting, Memory Map, Cross-Development
1-3 10-Mar 3.2.13, 4.1-4.3.2 Processor Basics, TI ARM, The Kernel Bring a printed copy of the Beagle version of Listing 2-1 on page 15. This is a copy you have generated, not a copy of mine.
1-4 11 Lab time Compile and run Listing 2-4 on your host computer. ECE497 Listings for Embedded Linux Primer
" Find the Beagle version of Figure 2-5 on page 25. Be sure to find a numeric value for the starting address of the POP SDRAM. Note where you found this information. DM3730 Technical Reference Manual

BeagleBoard-xM System Reference Manual

Old Week 2

Day Date Reading Topic Exercise Links
2-1 14-Mar Reproduce every listing each day's reading assignment. See my Listing page as an example. Note any interesting differences between your listing and the book and my listings. Keep a printed copy in a notebook. Bring to class and I'll check them during lab time. ECE497 Listings for Embedded Linux Primer
2-3 17 git Lab04 git ECE497 Lab03 Git
2-4 18 4.33-4.5, 5.1-5.2 Adding to the Kernel makefile, Kernel Initialization Configuring the Kernel Lab ECE497 Lab04 Configuring the Kernel
" Here's a challenge for today's lab. Modify the correct Kconfig file so you have the option shown in the link. What changes would you have to make the the makefile for your new code to compile? ECE497 Lab05 Kconfig Edits‎


Day Date Reading Topic Exercise Links
5-1 4-Apr 8.1-8.4 More Device Drivers Follow the example in 8.3-8.4 to write a kernel module that does more. Use dynamic major number allocation. ECE497 Lab08 Device Drivers
5-2 5 No Class
5-3 7 Guest Speaker. . Alan Hastings (TI Fellow, Analog and Power Systems IC Designer with Layout and Processing expertise)

Digital in Analog Designs When incorporating digital into analog and mixed-signal designs, the standard methods of design, validation, and testing simply don’t work well. The circuits are often partially or fully asynchronous and test coverage is often much less than we would like. These problems will be presented with some insight into how digital designers could solve these problems in their designs.

5-4 7 Open Lab. Work out lingering problems.

Week 6

Day Date Reading Topic Exercise Links
6-1 11 13, 15 Debugging Tools: gdb, cbrowser/cscope, tracing, profiling Play with gdb ECE497 Lab09 Development Tools
6-2 12 OMAP_Workshop, p109-156 Installation and gMake DaVinci Workshop - Lab 05, gMake ECE497 Lab10 gMake
6-3 14 OMAP_Workshop, p159-170 Lab 10, Using the OSS Driver DaVinci Workshop - Lab 06, Intro to Device Drivers ECE497 Lab11 Using the Open Sound System (OSS)
6-4 15 No Class

Week 7

Day Date Reading Topic Exercise Links
7-1 25 OMAP_Workshop, p200-218 The Display SubSystem (DSS) Inspect code to read video from a web cam, write video to the display. Write code to read from the web cam and write to the display. ECE497 Lab12 The Display SubSystem (DSS)
7-2 26 Lab12 ECE497 Lab12 The Display SubSystem (DSS)
7-3 28 Using the DSP Install c6run and compile and run the examples. ECE497 Lab13 Using the DSP via c6run
7-4 29 No Class

Week 8

Day Date Reading Topic Exercise Links
8-1 2-May-2011 GStreamer GStreamer
8-2 3 OMAP_Workshop, p219-248 (optional) Multithread Status Report ECE497 Status Report
8-3 5 Work Day, come to class
8-4 6 No Class

Week 9

Day Date Reading Topic Exercise Links
9-1 9 Project Time
9-2 10 No Class
9-3 12 ALSA
8-4 13 Project Time

Week 10

Day Date Reading Topic Exercise Links
10-1 16 No Class
10-2 17 Project Presentations Demos all period
10-3 19 No Class
10-4 20 No Class