Difference between revisions of "ECE497 Calendar and Exercises"

From eLinux.org
Jump to: navigation, search
(Week 5: Added install DSP software)
m
(242 intermediate revisions by 7 users not shown)
Line 1: Line 1:
[[Category:ECE597]]
+
[[Category:ECE497Fall2012 |Calendar]]
 
[[Category:BeagleBoard]]
 
[[Category:BeagleBoard]]
 +
{{YoderHead}}
  
 
Here's what you'll need to do for the class.  Unless stated otherwise these are individual exercises, not team.
 
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. If the background is white, it hasn't been updated.
 +
 +
'''All assignments are due the start of the following week.  Initially that is a Thursday!'''
  
 
== Week 1 ==
 
== Week 1 ==
  
{|
+
{| style="color:blue; background-color:#ffffcc;" cellpadding="10" cellspacing="0" border="1"
! Due Date !! style="width:50%" | Exercise !! Links
+
! Day !! Date !! Reading !! Topic !! Exercise !! Assignment Links
 +
|-
 +
| 1-1
 +
| 30-Aug-2012
 +
|
 +
| Introductions, Demos
 +
| Fire up your Beagle and see it work. Do everything in Exercise 09. Due Friday.
 +
'''[[EBC Exercise 01 Start Here]]''' gives an overview of what we'll be doing over the next few days.  Start setting up your Linux development computer now.  You can do either a native install, or a virtual machine. [[EBC Exercise 06 Notes on VirtualBox | Here]] and [[EBC Exercise 07 Notes on Installing Ubuntu in VMware Player | here]] are some notes in virtual machine installs.  They are out of date.  Feel free to update them.
 +
 
 +
I suggest Ubuntu 12.04 LTS.  Some of the TI software may require it. I may not be able to help with other versions of distributions.
 +
 
 +
| [[ECE497 - 32-bit Embedded Linux, Rose-Hulman]]
 +
[[EBC_Exercise_01_Start_Here#The_Linux_host_computer | EBC Exercise 01 Start Here]]
 +
 
 +
[[EBC Exercise 02 Out-of-the-Box, Bone]]
 +
 
 +
[[EBC Exercise 09 Working With Open Source]]
 +
|-
 +
| 1-2
 +
| 31
 +
|
 +
| General Purpose IO, LEDs and push buttons.
 +
| Set up a Beagle, demo in class. Get reference manuals and clone git repository.
 +
| [[EBC Exercise 03 Installing a Beagle OS]]
 +
 
 +
[[EBC Exercise 05 Getting Exercise Support Materials]]
 +
 
 +
[[EBC Exercise 10 Flashing an LED]]
 
|-
 
|-
| 8-Mar-2010
+
| 1-3
| Install Linux in a virtual machine on your laptop
+
| 3-Sept-2012
| [[Installing Ubuntu in VMware Player]]
+
|
 +
| Interrupts and gpio
 +
|  
 +
| [[EBC Exercise 08 Installing Development Tools]]
 +
 
 +
[[EBC Exercise 11 gpio Polling and Interrupts]]
 
|-
 
|-
| 9-Mar
+
| 1-4
| Edit a wiki
+
| 4
| [[Editing a Wiki]]
+
|
 +
| i2c, git
 +
|  
 +
| [[EBC Exercise 16 git]]
 
|-
 
|-
 +
|
 
| "
 
| "
| Load Ångström demo image on Beagle.
+
|
| [[Getting your Beagle running (precompiled)]]
+
|
 +
| Add your project ideas
 +
| [[ECE497 Project Ideas]]
 +
|}
 +
 
 +
== Week 2 ==
 +
 
 +
{| style="color:blue; background-color:#eeffff;" cellpadding="10" cellspacing="0" border="1"
 +
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 +
|-
 +
| 2-1
 +
| 6-Sept
 +
|
 +
| Pulse Width Modulation
 +
|
 +
| [[EBC Exercise 12 I2C]]
 +
 
 +
[[EBC Exercise 13 Pulse Width Modulation]]
 +
|-
 +
| 2-2
 +
| 7
 +
|
 +
| Lab Time, Mini Project 01
 +
| Measure gpio and pwm with oscilloscope.
 +
| [[EBC Mini Project 01]]
 
|-
 
|-
| "
+
| 2-3
| Bring a printed copy of the Beagle version of Listing 2-1 on page 2-6.  This is a copy you have generated, not a copy of mine.
+
| 10
 +
|
 +
| gdb, Lab Time
 +
|
 +
| [[EBC Exercise 14 gdb Debugging]]
 +
|-
 +
| 2-4
 +
| 11
 +
|
 +
| Lab Time
 +
|
 +
|
 +
|}
 +
 
 +
== Week 3 ==
 +
 
 +
{| style="color:blue; background-color:#ffaaff;" cellpadding="10" cellspacing="0" border="1"
 +
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 +
|-
 +
| 3-1
 +
| 13
 +
|
 +
| make, Mini Project 02
 +
| Flash ETC 2012 image on SD card for xM
 +
| [[EBC Exercise 15 make]]
 +
 
 +
[[EBC Mini Project 02]]
 +
 
 +
[[EBC Exercise 03 Installing a Beagle OS]]
 +
|-
 +
| 3-2
 +
| 14
 +
|
 +
| Advanced Linux Sound Architecture (ALSA)
 +
|
 +
| [[EBC Exercise 17 Using ALSA for Audio Processing]]
 +
|-
 +
| 3-3
 +
| 17
 +
|
 +
| Using the DSP (c6run)
 +
|
 +
| [[EBC Exercise 18 Using the DSP for Audio Processing]]
 +
|-
 +
| 3-4
 +
| 18
 +
|
 +
| Lab Time, Mini Project 1 demo time
 +
|
 +
|
 +
|}
 +
 
 +
== Week 4 ==
 +
 
 +
{|style="color:blue; background-color:#ddffff;" cellpadding="10" cellspacing="0" border="1"
 +
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 +
|-
 +
| 4-1
 +
| 20
 +
|
 +
| Video Processing
 +
|
 +
| [[EBC Exercise 19 DSS2 and sysfs]]
 +
 
 +
[[EBC Exercise 20 The Display SubSystem (DSS)]]
 +
|-
 +
| 4-2
 +
| 21
 +
|
 +
| Lab Time
 +
|
 +
|
 
|-
 
|-
| "
+
| 4-3
| Find the OMAP version of Figure 2-1 on page 2-4.
+
| 24
| [http://focus.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=spruf98d OMAP35x Technical Reference Manual]
+
|
 +
| Threads
 +
|  
 +
| [[EBC Exercise 21 Running Audio and Video]]
 
|-
 
|-
| 11-Mar
+
| 4-4
| Compile and run Listing 2-4 on your host computer.
+
| 25
| [[Listings for Embedded Linux Primer]]
+
|
 +
| Lab Time
 +
|
 +
|
 +
|}
 +
 
 +
== Week 5 ==
 +
 
 +
{| style="color:blue; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
 +
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 
|-
 
|-
| "
+
| 5-1
| Build Ångström on your laptop (console-image)
+
| 27-Sept-2012
| [[Installing The Ångström Distribution]] Steps 1-6
+
|
 +
| Graphical Interfaces and node.js
 +
|
 +
|  
 
|-
 
|-
| "
+
| 5-2
| Find the Beagle version of Figure 2-5 on page 2-17. Be sure to find a numeric value for the starting address of the POP SDRAM and the POP NAND.  Note where you found this information.
+
| 28
| [http://focus.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=spruf98d OMAP35x Technical Reference Manual]
+
|
[http://beagleboard.org/static/BBSRM_latest.pdf BeagleBoard System Reference Manual]
+
| Lab Time
 +
|  
 +
|
 
|-
 
|-
| "
+
| 5-3
| Add your project ideas
+
| 1-Oct-2012
| [[ECE597 Project Ideas]]
+
| 2.1-2.3.5, 3.2.13
 +
| Booting, Memory Map, Cross-Development, Processor Basics, TI ARM
 +
|  
 +
|  
 
|-
 
|-
| "
+
| 5-4
| Edit your User page on eLinux and add '''<nowiki>[[Category:ECE597]]</nowiki>''' to it. This will make it appear of the Category page. Check out [[User:Tomwm]] for ideas of what else to put on your User page.  Hint:  Follow the '''LUG''' link.
+
| 2
 +
| 4.1-4.3.3
 +
| The Kernel
 
|  
 
|  
 +
| [[EBC Exercise 22 Cross-Compiling]]
 +
|}
 +
 +
== Week 6 ==
 +
 +
{| style="color:blue; background-color:#ffddff;" cellpadding="10" cellspacing="0" border="1"
 +
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 +
|-
 +
| 6-1
 +
| 4
 +
| 4.4-4.5, 5.1-5.2
 +
| Adding to the Kernel makefile, Kernel Initialization
 +
| 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.
 +
| [[EBC Exercise 23 Configuring the Kernel]]
 
|-
 
|-
 
| "
 
| "
| Create your portfolio by going to the link and clicking on your name. Use your portfolio as a running record of what you have done for the class.  See my portfolio as an example.  Think of this as your resume for this class.  What else should be on it?
+
| "
| [https://myrhit.rose-hulman.edu/class/ece597/Private%20Wiki/Course%20Portfolios.aspx Portfolio]
+
| 5.3-5.6
|-
+
| Command Line Processing, __setup Macro
| 12-Mar
 
 
| Configuring the Kernel Lab
 
| Configuring the Kernel Lab
| [[ECE597 Configuring the Kernel]]
+
| [[EBC Exercise 24 Kconfig Edits]]
|-  
+
|-
| "
+
| 6-2
| Create Listing 4-3 page 4-15 for the Beagle. Format for 1 page, print, bring to class.
+
| 5
 +
|
 +
| Lab Time
 +
|
 +
|
 +
|-
 +
| 6-3
 +
| 8
 +
| 6.1-6.3
 +
| System Initialization
 +
| Project Status Report, update your project status page.
 +
| [[EBC Exercise 21a Boot Sequence]]
 +
[[ECE497 Contributions and Project Status]]
 +
|-
 +
| 6-4
 +
| 9
 +
| 6.4-6.7
 +
| Initial RAM Disk, Using initramfs
 
|  
 
|  
 +
 
|}
 
|}
  
== Week 2 ==
+
== Week 7 ==
  
{|
+
{| style="color:blue; background-color:#ffffff;" cellpadding="10" cellspacing="0" border="1"
! Due Date !! style="width:50%" | Exercise !! Links
+
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 
|-
 
|-
| 18-Mar
+
| 7-1
| Build Ångström on your laptop (whole Beagle demo)
+
| 15
| [[ECE597 Installing The Ångström Distribution]] Step 7
+
| 7.1-7.3
 +
| Bootloaders, Das U-Boot
 +
|  
 +
| [[EBC Exercise 25 Configuring U-boot]]
 +
|-
 +
| 7-2
 +
| 16
 +
|
 +
| Demo and Work Day
 +
|
 +
|
 
|-
 
|-
| 19-Mar-2010
+
| 7-3
| Reproduce every listing in the current reading assignment. See my Listing page as an example.  Create your own version and link to in in your portfolio.  Don't just copy from my version.  Note any interesting differences between your listing and the book and my listings.
+
| 18
| [[ECE597 Listings for Embedded Linux Primer]]
+
| 8.1-8.4
 +
| Device Driver Basics, Driver Methods
 +
|
 +
| [[EBC Exercise 08 Installing Development Tools]]
 +
[[EBC Exercise 26 Device Drivers]]
 
|-
 
|-
| "
+
| 7-4
| 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?
+
| 19
| [[ECE597 Kconfig Edits‎]]
+
| 11.1-11.4
 +
| BusyBox
 +
| In B105
 +
| [[EBC Exercise 27 BusyBox]]
 +
 
 
|}
 
|}
  
== Week 3 ==
+
== Week 8 ==
  
{|
+
{| style="color:blue; background-color:#ddffff;" cellpadding="10" cellspacing="0" border="1"
! Due Date !! style="width:50%" | Exercise !! Links
+
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 
|-
 
|-
| 22-Mar-2010
+
| 8-1
| Reproduce every listing in the current reading assignment. See my Listing page as an example. Create your own version and link to in in your portfolio. Don't just copy from my version. Note any interesting differences between your listing and the book and my listings.
+
| 22
| [[ECE597 Listings for Embedded Linux Primer]]
+
| [http://gstreamer.freedesktop.org/ GStreamer]
 +
| GStreamer ([http://wiki.oz9aec.net/index.php/Gstreamer_cheat_sheet Cheat Sheet],
 +
[http://www.oz9aec.net/index.php/gstreamer/345-a-weekend-with-gstreamer Weekend with GStreamer])
 +
| Status Report
 +
| [[EBC Exercise 29 GStreamer]] (optional)
 +
|-
 +
| 8-2
 +
| 23
 +
|
 +
|
 +
| Project Time
 +
|
 +
|-
 +
| 8-3
 +
| 25
 +
|
 +
| Remote debugging with gdb, cbrowser/cscope and strace
 +
| Project Time
 +
| [[EBC Exercise 28 Remote gdb and more]] (optional)
 +
|-
 +
| 8-4
 +
| 26
 +
|
 +
| Project Time
 +
|
 +
| [[ECE497 Contributions and Project Status]]
 
|}
 
|}
  
== Week 4 ==
+
== Week 9 ==
  
{|
+
{| style="color:blue; background-color:#ffffff;" cellpadding="10" cellspacing="0" border="1"
! Due Date !! style="width:50%" | Exercise !! Links
+
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 +
|-
 +
| 9-1
 +
| 29
 +
|
 +
| Project Time all week
 +
|
 +
|
 +
|-
 +
| 9-2
 +
| 30
 +
|
 +
|
 +
|
 +
|
 
|-
 
|-
| 29-Mar-2010
+
| 9-3
| Modify the prompt in U-boot to include you initials.
+
| 1-Nov-2012
| [[ECE597 Configuring U-boot]]
+
|
 
+
|  
 +
|  
 +
|
 
|-
 
|-
| 1-Apr-2010
+
| 9-4
| Follow the example in 8.1-8.2 to write a kernel module.
+
| 2
| [[ECE597 Listings for Embedded Linux Primer Chapter 8]]
+
|
 
+
|
 +
|
 +
|
 
|}
 
|}
  
== Week 5 ==
+
== Week 10 ==
  
{|
+
{| style="color:blue; background-color:#ffffff;" cellpadding="10" cellspacing="0" border="1"
! Due Date !! style="width:50%" | Exercise !! Links
+
! Day !! Date !! Reading !! Topic !! Exercise !! Links
 
|-
 
|-
| 12-Apr-2010
+
| 10-1
| Demo what you've done so far
+
| 5
 +
|
 +
|
 +
| Project Time all week
 
|  
 
|  
 
|-
 
|-
| 13-Apr-2010
+
| 10-2
| Reconfigure BusyBox
+
| 6
| [[ECE597 Configuring BusyBox]]
+
|
 +
|
 +
|  
 +
|  
 
|-
 
|-
 +
| 10-3
 +
| 8
 +
|
 +
|
 +
| Meet in B105
 +
|
 +
|-
 +
| 10-4
 +
| 9
 +
|
 +
|
 +
| Demo Time
 
|
 
|
| Install DSP Software
 
| [[ECE597 Installing DSP Development Tools]]
 
 
|}
 
|}
 +
 +
{{YoderFoot}}

Revision as of 08:50, 18 May 2013

thumb‎ Embedded Linux Class by Mark A. Yoder


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. If the background is white, it hasn't been updated.

All assignments are due the start of the following week. Initially that is a Thursday!

Week 1

Day Date Reading Topic Exercise Assignment Links
1-1 30-Aug-2012 Introductions, Demos Fire up your Beagle and see it work. Do everything in Exercise 09. Due Friday.

EBC Exercise 01 Start Here gives an overview of what we'll be doing over the next few days. Start setting up your Linux development computer now. You can do either a native install, or a virtual machine. Here and here are some notes in virtual machine installs. They are out of date. Feel free to update them.

I suggest Ubuntu 12.04 LTS. Some of the TI software may require it. I may not be able to help with other versions of distributions.

ECE497 - 32-bit Embedded Linux, Rose-Hulman

EBC Exercise 01 Start Here

EBC Exercise 02 Out-of-the-Box, Bone

EBC Exercise 09 Working With Open Source

1-2 31 General Purpose IO, LEDs and push buttons. Set up a Beagle, demo in class. Get reference manuals and clone git repository. EBC Exercise 03 Installing a Beagle OS

EBC Exercise 05 Getting Exercise Support Materials

EBC Exercise 10 Flashing an LED

1-3 3-Sept-2012 Interrupts and gpio EBC Exercise 08 Installing Development Tools

EBC Exercise 11 gpio Polling and Interrupts

1-4 4 i2c, git EBC Exercise 16 git
" Add your project ideas ECE497 Project Ideas

Week 2

Day Date Reading Topic Exercise Links
2-1 6-Sept Pulse Width Modulation EBC Exercise 12 I2C

EBC Exercise 13 Pulse Width Modulation

2-2 7 Lab Time, Mini Project 01 Measure gpio and pwm with oscilloscope. EBC Mini Project 01
2-3 10 gdb, Lab Time EBC Exercise 14 gdb Debugging
2-4 11 Lab Time

Week 3

Day Date Reading Topic Exercise Links
3-1 13 make, Mini Project 02 Flash ETC 2012 image on SD card for xM EBC Exercise 15 make

EBC Mini Project 02

EBC Exercise 03 Installing a Beagle OS

3-2 14 Advanced Linux Sound Architecture (ALSA) EBC Exercise 17 Using ALSA for Audio Processing
3-3 17 Using the DSP (c6run) EBC Exercise 18 Using the DSP for Audio Processing
3-4 18 Lab Time, Mini Project 1 demo time

Week 4

Day Date Reading Topic Exercise Links
4-1 20 Video Processing EBC Exercise 19 DSS2 and sysfs

EBC Exercise 20 The Display SubSystem (DSS)

4-2 21 Lab Time
4-3 24 Threads EBC Exercise 21 Running Audio and Video
4-4 25 Lab Time

Week 5

Day Date Reading Topic Exercise Links
5-1 27-Sept-2012 Graphical Interfaces and node.js
5-2 28 Lab Time
5-3 1-Oct-2012 2.1-2.3.5, 3.2.13 Booting, Memory Map, Cross-Development, Processor Basics, TI ARM
5-4 2 4.1-4.3.3 The Kernel EBC Exercise 22 Cross-Compiling

Week 6

Day Date Reading Topic Exercise Links
6-1 4 4.4-4.5, 5.1-5.2 Adding to the Kernel makefile, Kernel Initialization 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. EBC Exercise 23 Configuring the Kernel
" " 5.3-5.6 Command Line Processing, __setup Macro Configuring the Kernel Lab EBC Exercise 24 Kconfig Edits
6-2 5 Lab Time
6-3 8 6.1-6.3 System Initialization Project Status Report, update your project status page. EBC Exercise 21a Boot Sequence

ECE497 Contributions and Project Status

6-4 9 6.4-6.7 Initial RAM Disk, Using initramfs

Week 7

Day Date Reading Topic Exercise Links
7-1 15 7.1-7.3 Bootloaders, Das U-Boot EBC Exercise 25 Configuring U-boot
7-2 16 Demo and Work Day
7-3 18 8.1-8.4 Device Driver Basics, Driver Methods EBC Exercise 08 Installing Development Tools

EBC Exercise 26 Device Drivers

7-4 19 11.1-11.4 BusyBox In B105 EBC Exercise 27 BusyBox

Week 8

Day Date Reading Topic Exercise Links
8-1 22 GStreamer GStreamer (Cheat Sheet,

Weekend with GStreamer)

Status Report EBC Exercise 29 GStreamer (optional)
8-2 23 Project Time
8-3 25 Remote debugging with gdb, cbrowser/cscope and strace Project Time EBC Exercise 28 Remote gdb and more (optional)
8-4 26 Project Time ECE497 Contributions and Project Status

Week 9

Day Date Reading Topic Exercise Links
9-1 29 Project Time all week
9-2 30
9-3 1-Nov-2012
9-4 2

Week 10

Day Date Reading Topic Exercise Links
10-1 5 Project Time all week
10-2 6
10-3 8 Meet in B105
10-4 9 Demo Time




thumb‎ Embedded Linux Class by Mark A. Yoder