Today’s media handling embedded processors have come a long way from the limited performance of 8- or 16-bit embedded processors or the limited functionality of a dedicated DSP chip. This 2.5-hour, hands-on workshop presents ideas on how to use the BeagleBone Black ([http://www.BeagleBoard.org www.BeagleBoard.org]) for teaching embedded media processing using Open Source resources. The BeagleBone is 1) more powerful and has more I/O than a [http://www.raspberrypi.org/ Raspberry Pi], 2) is as easy to use as an [http://www.arduino.cc/ Arduino] and 3) has a thriving [http://beagleboard.org/Community/Forums Open Source Software community].

−

The goal of this hands-on tutorial is to present ideas on how to use Texas Instrument’s DM 3730-based BeagleBoard xM ([www.BeagleBoard.org www.BeagleBoard.org]) for teaching embedded processing using Open Source resources. The DM 3730 is a dual core processor with an ARM Cortex-a8 core and a TI ‘c64x DSP core. The BeagleBoard is Open Source hardware that has sold over 30,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community.

+

The workshop activities will include 1) several demonstrations of what the Beagle can do, 2) discussions of what topics to include in an embedded Linux class and 3) several hands-on exercises to get participants familiar with using the Beagle using [http://beagleboard.org/Support/BoneScript BoneScript] and Linux commands.

−

The BeagleBoard has many uses in the classroom. This workshop will show some of those uses and present some of the challenges in teaching with Open Source.

+

Participants will receive a BeagleBone Black.

−

The workshop activities will include:

+

=== Pre Workshop ===

−

* several hands-on exercises to get participants familiar with using the Beagle, and how it differs from a traditional 8- or 16-bit microcomputer.

+

=== Labs ===

−

* several demonstrations of what the Beagle can do, such as streaming video and programming its DSP and discussions of what topics to include in an embedded/DSP class including dealing with open source comminutes.

+

−

* This workshop is targeted to those who are teaching embedded processors or DSP hardware. Some Linux background would be helpful, but not required. Those with little or no Linux experience will be paired with those with more experience.

'''Ticketed event: $25.00 advanced registration and $35.00 on site registration'''

+

+

BeagleBone is a low cost, open hardware computer first introduced in November 2011 by BeagleBoard.org, a community of developers sponsored by Texas Instruments. BeagleBone hosts a powerful 32-bit, super-scalar ARM Cortex A8 processor operating at 720 MHz. Yet it is small enough to fit in an Altoids mint tin box. The "Bone'' may be used in a wide variety of projects from middle school science fair projects to senior design projects to first prototypes of very complex systems. Novice users may access the power of the Bone through the user-friendly Bonescript environment. Seasoned users may take full advantage of the Bone's power using the underlying Linux-based operating system, a host of feature extension boards (Capes) and a wide variety of open source libraries. This hands on workshop provides an introduction to this powerful computer and has been designed for a wide variety of users including the first time novice through the seasoned embedded system design professional.

+

+

Workshop participants will receive a BeagleBone board and also a BeagleBone book courtesy of BeagleBoard.org and Morgan and Claypool Publishers. This workshop is subsidized by Texas Instruments (TI).

Beagleboard is a low-cost open-source embedded system development platform. It is based on Texas Instruments DM3730 processor, which includes an on-chip ARM Cortex-A8 processor core, a Texas Instruments C6x DSP core, and a host of peripherals. Beagleboard is a single board computer, which provides adequate performance to run Linux software, yet has a power consumption lower than 2W. A large number of embedded applications have been developed on Beagleboard ([http://www.beagleboard.org www.beagleboard.org]) Module A provides a gentle introduction to the subject of Embedded Linux, Linux Systems Programming and Linux Kernel Programming. The intention of Module B is to provide a hands-on exposure to running Embedded Linux operating system on the Beagleboard and develop system software on the Beagleboard.

=== Pre Workshop ===

=== Pre Workshop ===

Line 50:

Line 142:

| I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

| I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

I've taught a 'C6713 based DSP class years ago.

I've taught a 'C6713 based DSP class years ago.

−

| I teach 32-bit embedded with the Beagle [[ECE497 - 32-bit Embedded Linux, Rose-Hulman]]. DSP is appearing everywhere now. The BeagleBoard is a great environment to teach DSP.

Linux, which is an “open source” operating system and enjoys considerable popularity on general-purpose computers, is becoming popular in the embedded world also. Different versions and variants of Linux are now available on embedded platforms. In this workshop, the intention is to provide a hands-on introduction to concepts of Linux Systems/Kernel Programming and Embedded Linux

+

+

=== Pre Workshop ===

+

+

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the '''edit''' tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

+

+

--Mark

+

+

{|

+

! style="width:20%" | Name

+

! style="width:20%" | School/Company

+

! style="width:30%" | Linux/DSP Background

+

! style="width:30%" | Interests

+

|-

+

| Mark A. Yoder

+

| Rose-Hulman Institute of Technology,

+

Terre Haute, Indiana, USA

+

| I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

'''Module A''' provides an overview of basic concepts of Linux, Linux Systems Programming, Linux Kernel Programming, and Embedded Systems. Module A will also include an introduction to Beagleboard, an open-source, low-cost, low-power embedded system development platform. '''Module A''' will be conducted jointly by a team of experts from industry and academia. In '''Module B''', aspects of Embedded Linux on Beagleboard will be explored in greater depth. Module B will be conducted by Prof. Mark A. Yoder of Rose-Hulman Institute of Technology, USA.

+

+

=== Pre Workshop ===

+

+

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the '''edit''' tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

+

+

--Mark

+

+

{|

+

! style="width:20%" | Name

+

! style="width:20%" | School/Company

+

! style="width:30%" | Linux/DSP Background

+

! style="width:30%" | Interests

+

|-

+

| Mark A. Yoder

+

| Rose-Hulman Institute of Technology,

+

Terre Haute, Indiana, USA

+

| I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

The goal of this hands-on tutorial is to present ideas on how to use Texas Instrument’s DM 3730-based BeagleBoard xM ([www.BeagleBoard.org www.BeagleBoard.org]) for teaching embedded processing using Open Source resources. The DM 3730 is a dual core processor with an ARM Cortex-a8 core and a TI ‘c64x DSP core. The BeagleBoard is Open Source hardware that has sold over 30,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community.

+

+

The BeagleBoard has many uses in the classroom. This workshop will show some of those uses and present some of the challenges in teaching with Open Source.

+

+

The workshop activities will include:

+

+

* several hands-on exercises to get participants familiar with using the Beagle, and how it differs from a traditional 8- or 16-bit microcomputer.

+

* several demonstrations of what the Beagle can do, such as streaming video and programming its DSP and discussions of what topics to include in an embedded/DSP class including dealing with open source comminutes.

+

* This workshop is targeted to those who are teaching embedded processors or DSP hardware. Some Linux background would be helpful, but not required. Those with little or no Linux experience will be paired with those with more experience.

+

+

=== Post Workshop ===

+

+

Even though the workshop has been cancelled, you can still do the exercises. Here ([[Getting a Workshop SD Image]]) are instructions on how to put the tutorial image on your SD card.

+

+

Here ([[EBC Embedded Beagle Class Topics]]) is a list of topics I cover in my class. If you have questions, please email me.

== 2011 IEEE ICASSP Workshop ==

== 2011 IEEE ICASSP Workshop ==

Line 139:

Line 369:

=== Post Workshop ===

=== Post Workshop ===

−

==== Getting a copy of the workshop SD card ====

+

Here ([[Getting_a_Workshop_SD_Image]]) are instructions on how to put the tutorial image on your SD card.

−

+

−

You can download a copy of the SD card used in the workshop [http://www.rose-hulman.edu/~yoder/Beagle/ here]. You see several files listed here. You want to download '''ICASSP2011.img.tar.bz2''' and '''ICASSP2011.img.tar.bz2.md5'''. The first is some 1.4G, so it will take a while. The second is a check sum file for the first.

+

−

+

−

You also need to get a microSD card that holds at least 4G.

+

−

+

−

Once you have the two files and the card, what you do with them depends on what OS you are running.

+

−

+

−

===== Writing an SD card via Linux =====

+

−

+

−

If you are running Linux type:

+

−

<pre>

+

−

$ md5sum ICASSP2011.img.tar.bz2

+

−

$ cat ICASSP2011.img.tar.bz2.md5

+

−

</pre>

+

−

The two command should show the same thing

+

−

<pre>

+

−

79edebd2fb7d2d7d989dd6b1a397dd4e ICASSP2011.img.tar.bz2

+

−

</pre>

+

−

If your results match you have successfully downloaded the image and can move on. If they don't match, try downloading again. If that doesn't work, contact me.

+

−

+

−

Next uncompress the image. I find the easiest way is to use the GUI based routine:

+

−

<pre>

+

−

$ gnome-open ICASSP2011.img.tar.bz2

+

−

</pre>

+

−

After a few minutes you will see

+

−

+

−

[[File:Screenshot-ICASSP2011.img.tar.bz2_.png]]

+

−

+

−

Just click '''Extract''' and wait a few more minutes.

+

−

+

−

(If gnome-open doesn't work try: <code>$ tar -xvjf ICASSP2011.img.tar.bz2</code>. This will uncompress and untar the file.)

+

−

+

−

Insert your microSD card in a reader/write and find the path to it by running '''System:Administration:Disk Utility'''. You will see

+

−

+

−

[[File:Screenshot-Disk_Utility.png| 400x293px]]

+

−

+

−

The path is in the upper right.

+

−

+

−

Then enter:

+

−

<pre>

+

−

$ dd if=ICASSP2011.img of=/dev/sd? bs=8M

+

−

$ sync

+

−

</pre>

+

−

Where <code>/dev/sd?</code> is the path to your SD card. This may take 10 minutes. Mine took about 7.5.

+

−

+

−

You should now have a functioning SD card image. Plug it into your BeagleBoard and boot it up.

+

−

+

−

===== Writing an SD card via Windows =====

+

−

+

−

The following instructions come from [http://code.google.com/p/beagleboard/wiki/BeagleBoardDiagnosticsNext here].

+

−

+

−

To initialize your card under Windows, you can do the following:

+

−

+

−

# Download and install [https://wiki.ubuntu.com/Win32DiskImager Ubuntu's Win32DiskImager] (also known as the [https://launchpad.net/win32-image-writer/ win32-image-writer]).

Today’s media handling embedded processors have come a long way from the limited performance of 8- or 16-bit embedded processors or the limited functionality of a dedicated DSP chip. This 3-hour, hands-on workshop presents ideas on how to use TI’s OMAP 3530-based BeagleBoard ([www.BeagleBoard.org www.BeagleBoard.org]) for teaching embedded media processing using Open Source resources. The OMAP3530 processor contains both an ARM Cortex-A9 processor and a ‘C6400 DSP. The BeagleBoard is Open Source hardware that has sold over 20,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community. The 3-hour workshop activities will include 1) several demonstrations of what the Beagle can do, including streaming video and synthesizing speech, 2) Discussions of what topics to include in an embedded Linux class and 3) Several hands-on exercises to get participants familiar with using the Beagle. Participants will receive a Beagleboard.

Abstract:

Today’s media handling embedded processors have come a long way from the limited performance of 8- or 16-bit embedded processors or the limited functionality of a dedicated DSP chip. This 2.5-hour, hands-on workshop presents ideas on how to use the BeagleBone Black (www.BeagleBoard.org) for teaching embedded media processing using Open Source resources. The BeagleBone is 1) more powerful and has more I/O than a Raspberry Pi, 2) is as easy to use as an Arduino and 3) has a thriving Open Source Software community.

The workshop activities will include 1) several demonstrations of what the Beagle can do, 2) discussions of what topics to include in an embedded Linux class and 3) several hands-on exercises to get participants familiar with using the Beagle using BoneScript and Linux commands.

Abstract:

Ticketed event: $25.00 advanced registration and $35.00 on site registration

BeagleBone is a low cost, open hardware computer first introduced in November 2011 by BeagleBoard.org, a community of developers sponsored by Texas Instruments. BeagleBone hosts a powerful 32-bit, super-scalar ARM Cortex A8 processor operating at 720 MHz. Yet it is small enough to fit in an Altoids mint tin box. The "Bone may be used in a wide variety of projects from middle school science fair projects to senior design projects to first prototypes of very complex systems. Novice users may access the power of the Bone through the user-friendly Bonescript environment. Seasoned users may take full advantage of the Bone's power using the underlying Linux-based operating system, a host of feature extension boards (Capes) and a wide variety of open source libraries. This hands on workshop provides an introduction to this powerful computer and has been designed for a wide variety of users including the first time novice through the seasoned embedded system design professional.

Workshop participants will receive a BeagleBone board and also a BeagleBone book courtesy of BeagleBoard.org and Morgan and Claypool Publishers. This workshop is subsidized by Texas Instruments (TI).

Abstract:

Beagleboard is a low-cost open-source embedded system development platform. It is based on Texas Instruments DM3730 processor, which includes an on-chip ARM Cortex-A8 processor core, a Texas Instruments C6x DSP core, and a host of peripherals. Beagleboard is a single board computer, which provides adequate performance to run Linux software, yet has a power consumption lower than 2W. A large number of embedded applications have been developed on Beagleboard (www.beagleboard.org) Module A provides a gentle introduction to the subject of Embedded Linux, Linux Systems Programming and Linux Kernel Programming. The intention of Module B is to provide a hands-on exposure to running Embedded Linux operating system on the Beagleboard and develop system software on the Beagleboard.

Pre Workshop

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

--Mark

Name

School/Company

Linux/DSP Background

Interests

Mark A. Yoder

Rose-Hulman Institute of Technology,

Terre Haute, Indiana, USA

I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

Abstract:

Linux, which is an “open source” operating system and enjoys considerable popularity on general-purpose computers, is becoming popular in the embedded world also. Different versions and variants of Linux are now available on embedded platforms. In this workshop, the intention is to provide a hands-on introduction to concepts of Linux Systems/Kernel Programming and Embedded Linux

Pre Workshop

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

--Mark

Name

School/Company

Linux/DSP Background

Interests

Mark A. Yoder

Rose-Hulman Institute of Technology,

Terre Haute, Indiana, USA

I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

Abstract:

Module A provides an overview of basic concepts of Linux, Linux Systems Programming, Linux Kernel Programming, and Embedded Systems. Module A will also include an introduction to Beagleboard, an open-source, low-cost, low-power embedded system development platform. Module A will be conducted jointly by a team of experts from industry and academia. In Module B, aspects of Embedded Linux on Beagleboard will be explored in greater depth. Module B will be conducted by Prof. Mark A. Yoder of Rose-Hulman Institute of Technology, USA.

Pre Workshop

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

--Mark

Name

School/Company

Linux/DSP Background

Interests

Mark A. Yoder

Rose-Hulman Institute of Technology,

Terre Haute, Indiana, USA

I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

Abstract:

The goal of this hands-on tutorial is to present ideas on how to use Texas Instrument’s DM 3730-based BeagleBoard xM ([www.BeagleBoard.org www.BeagleBoard.org]) for teaching embedded processing using Open Source resources. The DM 3730 is a dual core processor with an ARM Cortex-a8 core and a TI ‘c64x DSP core. The BeagleBoard is Open Source hardware that has sold over 30,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community.

The BeagleBoard has many uses in the classroom. This workshop will show some of those uses and present some of the challenges in teaching with Open Source.

The workshop activities will include:

several hands-on exercises to get participants familiar with using the Beagle, and how it differs from a traditional 8- or 16-bit microcomputer.

several demonstrations of what the Beagle can do, such as streaming video and programming its DSP and discussions of what topics to include in an embedded/DSP class including dealing with open source comminutes.

This workshop is targeted to those who are teaching embedded processors or DSP hardware. Some Linux background would be helpful, but not required. Those with little or no Linux experience will be paired with those with more experience.

Post Workshop

Even though the workshop has been cancelled, you can still do the exercises. Here (Getting a Workshop SD Image) are instructions on how to put the tutorial image on your SD card.

2011 IEEE ICASSP Workshop

Abstract:

This hands-on tutorial presents ideas on how to use TI’s OMAP 3530-based BeagleBoard (www.BeagleBoard.org) for teaching embedded media processing using Open Source resources. The BeagleBoard is Open Source hardware that has sold over 20,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community.
After the introduction, this workshop will complement the Sunday afternoon tutorial “From DSP Chips to Embedded Processors for Teaching Digital Signal Processing”. The Sunday workshop examples focus on programming the ‘C64 DSP on the OMAP3530. This workshop will focus on using Open Source software for media processing (such as GStreamer, OpenCV, etc.) and using the OMAP display subsystem for handling video.
The workshop activities will include:

Several hands-on exercises to get participants familiar with using the Beagle, (same as tutorial)

Several demonstrations of what the Beagle can do using Open Source software, including using the display subsystem, recognizing speech, computer vision

Discussions of what topics to include in an embedded Linux class.

No BeagleBoards will given out.

Pre Workshop

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

--Mark

Name

School/Company

Linux/DSP Background

Interests

Mark A. Yoder

Rose-Hulman Institute of Technology,

Terre Haute, Indiana, USA

I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

2011 IEEE ICASSP Tutorial

Abstract:

This hands-on tutorial presents ideas on how to use TI’s OMAP 3530-based BeagleBoard (www.BeagleBoard.org) for teaching embedded media processing using Open Source resources. The BeagleBoard is Open Source hardware that has sold over 16,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community.
Today’s media handling embedded processors have come a long way from the limited performance of 8- or 16-bit embedded processors or the limited functionality of a dedicated DSP chip. Our students need to see that the days of the single DSP chip are almost over and they need to be prepared for working with DSPs embedded with other processors.
The OMAP3530 processor contains both an ARM Cortex-A9 processor and a ‘C6400 DSP and it and chips like it are being used in products today.
The workshop activities include:

hands-on exercises to get participants familiar with using the Beagle,

demonstrations of what the Beagle can do, including streaming video and synthesizing speech and

discussions of what topics to include in an embedded Linux class.

Participants will receive a BeagleBoard and course materials.

Pre Tutorial

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

--Mark

Name

School/Company

Linux/DSP Background

Interests

Mark A. Yoder

Rose-Hulman Institute of Technology,

Terre Haute, Indiana, USA

I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

Abstract

Today’s media handling embedded processors have come a long way from the limited performance of 8- or 16-bit embedded processors or the limited functionality of a dedicated DSP chip. This 3-hour, hands-on workshop presents ideas on how to use TI’s OMAP 3530-based BeagleBoard ([www.BeagleBoard.org www.BeagleBoard.org]) for teaching embedded media processing using Open Source resources. The OMAP3530 processor contains both an ARM Cortex-A9 processor and a ‘C6400 DSP. The BeagleBoard is Open Source hardware that has sold over 20,000 units since its introduction less than 2 years ago and has a thriving Open Source Software community. The 3-hour workshop activities will include 1) several demonstrations of what the Beagle can do, including streaming video and synthesizing speech, 2) Discussions of what topics to include in an embedded Linux class and 3) Several hands-on exercises to get participants familiar with using the Beagle. Participants will receive a Beagleboard.

Post Workshop

Here are some things you might want to do now that the workshop is over.

Here are instructions on how to create the SD card that was used in the workshop.

Pre Workshop

If you are an overachiever (not required) go here (ECE497 Lab13 Using the DSP via c6run) to learn how to install the ARM and DSP development tools on your Linux system (Ubuntu 10.4 LTS is required). If you don't have Ubuntu installed, go here to learn how to install it in a virtual machine under windows.

These installs are not required for the workshop; however editing the the table below is.

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list. You will have to create an eLinux account before you can edit the page.

--Mark

Name

School/Company

Linux/DSP Background

Interests

Mark A. Yoder

Rose-Hulman Institute of Technology,

Terre Haute, Indiana, USA

I've been using various flavors of Unix/Linux since the late '70s, but there is always more to learn.

I've taught a 'C6713 based DSP class years ago.

I teach 32-bit embedded with the Beagle. DSP is appearing everywhere now. The BeagleBoard is a great environment to teach DSP.

Cathy Wicks

Texas Instruments, University Program Manager

I am a HUGE fan of Beagleboard and very interested to develop a community of teachers using it.

Our Program www.ti.com/university helps academics use TI Hardware, Software and Chips in their projects and curriculum.

Steve Chadwick

Embry-Riddle Aeronautical University, Prescott, AZ

Very new to DSP and hoping develop sufficient depth to teach it next academic year.

Interests: Pretty much everything in science.

Mark Wickert

University of Colorado, Colorado Springs, CO, USA

I have played on and off with Linux for about 10 years, never done any real-time DSP under this OS however.

I regularly teach DSP and related courses. I am using the C6713 today, but ready to move forward. I recently started playing with ARM processors (not the BeagleBoard until now).

Shane Cotter

Union College, Schenectady, NY

I have taught DSP courses. I have used Unix/Linux in the past but not for real-time DSP.

The Beagleboard seems like a great platform and I'm interested in learning about it and its potential uses in courses.

Jake Gunther

Utah State University

I have taught DSP and communication systems for over ten years.

I want to move from a simulation-based teaching approach to a real-time approach.

2010 ICASSP Workshop

Title:

32-bit Embedded Linux-based Signal Processing – Hands on Workshop

Presentor:

Mark A. Yoder

Location:

ICASSP 2010, Dallas, Texas

Date:

Monday, March 15 2010, 13:30 - 17:00

The purpose of this page is to give you practice editing a wiki and to start building a community of BeagleBoard Educators. Click on the edit tab above and add your name to the list.