Difference between revisions of "EBC Exercise 01 Start Here"

From eLinux.org
Jump to: navigation, search
m (From the Instrument Room)
m (Kernel Development)
(14 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
There are four major things that need to be done to have the BeagleBoard ready to run for class:
 
There are four major things that need to be done to have the BeagleBoard ready to run for class:
 
# Get your Beagle Hardware together
 
# Get your Beagle Hardware together
# Write the SD card for you Beagle
+
# Update the OS on your Beagle
 
# Set up a host computer, running Linux for code development
 
# Set up a host computer, running Linux for code development
 
# Clone the course git repository on both the Beagle and the host
 
# Clone the course git repository on both the Beagle and the host
  
If you have a BeagleBone and want to start playing, go to [[EBC Exercise 02 Out-of-the-Box, Bone]]. The Bone comes with all the hardware you need and an SD card that's ready to run.
+
== The Hardware ==
  
== Installing a Beagle OS ==
+
Here's the hardware you will need and where you get it.
  
After you've had a chance to explore the Bone, or you are running a Beagle xM, check [[#The Hardware | The Hardware]] below. Once you have all your hardware together you need to get an up to date image for you SD cards. Go to [[EBC Exercise 03 Installing a Beagle OS]] to learn how to flash your SD card with a fresh OS. With a fresh OS installed, you are now ready for [[EBC Exercise 04 Out-of-the-Box, xM]] on the xM.  It'a little different than the bone.
+
=== You may have, or will have to buy ===
  
== The class git repository ==
+
We are using the [http://beagleboard.org/Getting%20Started BeagleBone Black] this year.  Since it's only $45 I'll have you buy your your own. There's a few other things you will need to get before the first day of class.
 +
* BeagleBone Black.  See [http://beagleboard.org/ http://beagleboard.org/] for suggestions of where to buy the Black. I suggest ordering sooner rather than later since it may take a couple of weeks. 
 +
* USB keyboard and mouse
 +
* HDMI display
 +
* At least three 4G micro SD cards. I suggest you have 3 or 4 cards since it's easy to mess up one and it takes some 10 minutes to reload it.
 +
* micro SD card reader/writer
 +
* Powered USB hub, at least 4 ports.  The Black has only one USB so this will allow you to plug in the keyboard, mouse, web cam, etc.
  
Once you have an up to date OS running on your Beagle, go to [[EBC Exercise 05 Getting Exercise Support Materials]] to learn how to clone the class git repository. Once cloned it's a single command to get the latest materials on your Beagle (or host computer for that matter).
+
==== Books ====
 +
* [http://www.amazon.com/Embedded-Linux-Primer-Practical-Real-World/dp/0137017839 Embedded Linux Primer] The bookstore will have this.
 +
* [http://www.morganclaypool.com/doi/abs/10.2200/S00500ED1V01Y201304DCS041 Bad to the Bone] Don't buy this yet, I think I can get you a free copy.
 +
 
 +
=== What you buy from the Instrument Room ===
 +
* Proto Plate with full sized breadboard
 +
* various input devices, sensors, displays, etc.
 +
 
 +
=== What you borrow from the Instrument Room ===
 +
* 5V power supply
 +
* [http://us.playstation.com/ps3/accessories/playstation-eye-camera-ps3.html Playstation EYE] web cam
 +
* [http://www.monoprice.com/products/product.asp?c_id=104&cp_id=10419&cs_id=1041913&p_id=7703&seq=1&format=2 micro HDMI to HDMI adapter]
 +
* [https://www.sparkfun.com/products/9717 FTDI USB to Serial Adapter] Must be 3.3V version
 +
* [http://www.adafruit.com/products/902 Bicolor LED Square Pixel Matrix with I2C Backpack]
 +
* Two (2) [http://www.ti.com/product/tmp101 TMP101] temperature sensors
 +
* [http://www.ti.com/product/tmp006 TMP006] Infrared Thermopile Sensor
 +
* [http://www.ti.com/product/pca9306 PCA9306 Dual Bi-Directional I2C-Bus and SMBus Voltage Level-Translator]
 +
* [http://www.ti.com/product/l293 L293 Quadruple Half-H Drivers]
 +
 
 +
== Updating the Beagle OS ==
 +
 
 +
Once you have all your hardware together go ahead and [http://beagleboard.org/Getting%20Started explore the Bone]. It should work right out of the box. After you have explored a while, update the image on the Bone so you are running the most current image. Go to [[EBC Exercise 03 Installing a Beagle OS]] to learn how to flash your SD card with a fresh OS.
  
 
== The Linux host computer ==
 
== The Linux host computer ==
  
The above will get you ready for about the first 4 weeks of class. Around week 5 we'll start looking at the kernel and will need to cross compile. Once we start moving into Kernel development we will need a host computer. Since we are doing Linux development, it's generally agree the host should be running Linux.  I suggest you run [http://www.ubuntu.com Ubuntu 12.04 (LTS)]. The Rose Linux Users Group [http://lug.rose-hulman.edu/wiki/Main_Page LUG] has instructions on where to get a local copy so you don't have to download some 700M.
+
The above will get you ready for about the first 4 weeks of class. Around week 5 we'll start looking at the kernel and will need to cross compile. Once we start moving into Kernel development we will need a host computer. Since we are doing Linux development, it's generally agree the host should be running Linux.  I suggest you run [http://www.ubuntu.com Ubuntu 12.04 (LTS)]. The CSSE department has a [ftp://ftp.csse.rose-hulman.edu/ubuntu-releases/12.04.2 local copy] so you don't have to download some 700M. You want the '''desktop-amd64.iso''' if you have a 64-bit machine, or the '''desktop-i386.iso''' if you are running 32-bits.
  
 
There are three options as to how to run Linux.
 
There are three options as to how to run Linux.
Line 33: Line 60:
 
I've been testing out the "Cloud" approach and it looks like it will work too.  If you want to try the cloud, let me known and I'll ask CSSE to set up a machine for you.
 
I've been testing out the "Cloud" approach and it looks like it will work too.  If you want to try the cloud, let me known and I'll ask CSSE to set up a machine for you.
  
== Kernel Development ==
+
=== Kernel Development ===
  
Once you have Linux running somewhere, you need to install the kernel development tools.  Go to [[EBC Exercise 08 Installing Development Tools]] to see all the steps you need. Once set up, go back to [[EBC Exercise 05 Getting Exercise Support Materials]] to clone the class repository on your host.
+
Once you have Linux running somewhere, you need to install the kernel development tools.  Go to [[EBC Exercise 08 Installing Development Tools]] to see all the steps you need.
  
 
Now that you have all these pieces in place you are ready to work with a very power embedded processor.
 
Now that you have all these pieces in place you are ready to work with a very power embedded processor.
  
== The Hardware ==
+
== The class git repository ==
 
+
Here's the hardware you will need and where you get it.
+
 
+
=== From the Instrument Room ===
+
  
* BeagleBoard xM
+
Once you have an up to date OS running on your Beagle, go to [[EBC Exercise 05 Getting Exercise Support Materials]] to learn how to clone the class git repository. Once cloned it's a single command to get the latest materials on your Beagle (or host computer for that matter).
* BeagleBone
+
* 5V power supply
+
* HDMI to DVI cable
+
* serial to USB cable
+
 
+
=== From your own resources ===
+
* USB keyboard and mouse
+
* DVI-D display
+
* micro SD card. 4G should be enough.  I suggest you have 3 or 4 cards since it's easy to mess up one and it takes some 10 minutes to reload it.
+
* micro SD card reader/writer
+
* USB to Ethernet adapter.  The Beagle xM has Ethernet on it, but every time you boot it you get a random MAC address.  If you are running on the Rose network you need a fixed MAC address.
+
  
 
{{YoderHead}}
 
{{YoderHead}}

Revision as of 16:18, 16 July 2013

thumb‎ Embedded Linux Class by Mark A. Yoder


Overview

There are four major things that need to be done to have the BeagleBoard ready to run for class:

  1. Get your Beagle Hardware together
  2. Update the OS on your Beagle
  3. Set up a host computer, running Linux for code development
  4. Clone the course git repository on both the Beagle and the host

The Hardware

Here's the hardware you will need and where you get it.

You may have, or will have to buy

We are using the BeagleBone Black this year. Since it's only $45 I'll have you buy your your own. There's a few other things you will need to get before the first day of class.

  • BeagleBone Black. See http://beagleboard.org/ for suggestions of where to buy the Black. I suggest ordering sooner rather than later since it may take a couple of weeks.
  • USB keyboard and mouse
  • HDMI display
  • At least three 4G micro SD cards. I suggest you have 3 or 4 cards since it's easy to mess up one and it takes some 10 minutes to reload it.
  • micro SD card reader/writer
  • Powered USB hub, at least 4 ports. The Black has only one USB so this will allow you to plug in the keyboard, mouse, web cam, etc.

Books

What you buy from the Instrument Room

  • Proto Plate with full sized breadboard
  • various input devices, sensors, displays, etc.

What you borrow from the Instrument Room

Updating the Beagle OS

Once you have all your hardware together go ahead and explore the Bone. It should work right out of the box. After you have explored a while, update the image on the Bone so you are running the most current image. Go to EBC Exercise 03 Installing a Beagle OS to learn how to flash your SD card with a fresh OS.

The Linux host computer

The above will get you ready for about the first 4 weeks of class. Around week 5 we'll start looking at the kernel and will need to cross compile. Once we start moving into Kernel development we will need a host computer. Since we are doing Linux development, it's generally agree the host should be running Linux. I suggest you run Ubuntu 12.04 (LTS). The CSSE department has a local copy so you don't have to download some 700M. You want the desktop-amd64.iso if you have a 64-bit machine, or the desktop-i386.iso if you are running 32-bits.

There are three options as to how to run Linux.

  1. Native install ([1])
  2. Install in a virtual machine. I've been running Virtual Box recently and it seems to work find. You can also try VMware Player.
  3. Run in the cloud

The Ubuntu site gives good instructions for a native install. I've had good success with running both VMware and Virtual Box, though my installation instructions are a bit dated. (Feel free to update them if they need it.)

I've been testing out the "Cloud" approach and it looks like it will work too. If you want to try the cloud, let me known and I'll ask CSSE to set up a machine for you.

Kernel Development

Once you have Linux running somewhere, you need to install the kernel development tools. Go to EBC Exercise 08 Installing Development Tools to see all the steps you need.

Now that you have all these pieces in place you are ready to work with a very power embedded processor.

The class git repository

Once you have an up to date OS running on your Beagle, go to EBC Exercise 05 Getting Exercise Support Materials to learn how to clone the class git repository. Once cloned it's a single command to get the latest materials on your Beagle (or host computer for that matter).

thumb‎ Embedded Linux Class by Mark A. Yoder