During JavaOne 2013, I was turned on to the Raspberry Pi. If you haven’t heard, the Raspberry Pi is a credit card sized single board computer originally designed to teach basic
computer science. It was developed in the United Kingdom by the Raspberry Pi Foundation. It has become a huge hit among “techie” hobbyist as well as by those with real computing needs from a small, cheap (< $40 US) but powerful platform. It has been used in hundreds of interesting applications. See the Raspberry Pi Web site for more information. According to the Foundation’s Web site, they have sold more than 1.75 million of these powerful little computers (see here).
For computing/software enthusiasts, this is an ultimate geek toy. Of course, my fascination in the platform stems from the fact that a full Java stack is now available for the platform. In fact, I own two Pi – each running Apache Tomcat 7 and hosting a small little web application. Not bad for less than $100 US – all parts included!
I found this cheap device easy to get, easy to connect with extras (temperature sensors, LED lights, etc.), and a great way to learn all sorts of computing software/hardware technologies. For example, I must admit that my Linux skills have grown a little rusty over the years, but the Raspberry Pi gave me the incentive and means to get those skills back up to par. I also learned a ton about hardware interfacing by connecting the Pi to a number of sensors with the Pi’s GPIO pins. With the GPIO pins, you can program your Pi to do all sorts of interesting things like create your own cheap home weather station.
Free Raspberry Pi Tutorial
Spurred by the possibilities of this platform, I created a Raspberry Pi training class to help people learn how to use the Pi and how to configure it for use in all sorts of exciting products/applications. Starting in January 2014, Intertech has decided to offer the class materials (Complete Raspberry Pi) to everyone – for free!!! Happy New Year courtesy of Intertech, Inc. This class is a set of ten (10) hands-on labs that you can use to learn about the Raspberry Pi, learn a bit of Linux, how to program (in Java), and how to connect it up to all sorts of sensors (light, temperature, humidity, etc.).
What you learn
Here is a list of the ten tutorial labs:
- Raspberry Pi Setup/Startup (How to connect the Raspberry Pi to all its cables, power up the Raspberry Pi, installing the Linux operating system from the SD card, login to the Pi)
- Linux Tutorial (Exploring the Debian-derived Raspbian Linux OS, learn some of the basic and important Linux commands, learn how to start and stop LXDE, learn how to safely shut down your Pi)
- Java Programming on the Pi (Code HelloWorld in Java, compile HelloWorld with the Java compiler, execute HelloWorld on the Pi’s Java virtual machine, explore some other Java tools/documentation on the Pi)
- Pi GUI and Java GUI Programming (Explore a simple Java Swing application, explore LXDE)
- Pi Networking and Java Network Programming (Explore simple Java networking applications, connect your Pi to the World Wide Web, use Java to pull data from a Web site, explore network issues)
- Pi Audio (Play audio on the Pi, explore a Java application for playing audio, set the volume of the audio-jack on the Pi)
- Controlling LEDs (Build a simulated stop light with LEDs on an electronic breadboard, connect the electronics to the Pi via GPIO, explore a library that provides PI GPIO control, explore a program to send control the LEDs via the GPIO, compile and execute the Java stoplight program)
- Listening for GPIO Input (Connect a momentary switch to the breadboard, explore a program to get input from a momentary switch connected by GPIO to the Pi, compile and execute the Java switch-controlled stoplight program)
- Light Sensor Reading (Connect a photo cell sensor to the breadboard, explore a program to get input from a photo cell sensor connected by GPIO to the Pi, compile and execute the Java program to read the light level coming from the photo cell sensor)
- Collecting Temperature/Humidity Sensor Reading (Connect a temperature/humidity sensor to the breadboard, explore a program to get input from the temperature/humidity sensor connected by GPIO to the Pi, execute the C program to read the temperature and humidity from the sensor, come back to this blog starting in January to start getting each of the labs)
What You Need
Your shopping list of materials needed for the Pi class is below – sorry Intertech cannot provide the hardware. The first few labs (labs 1-5) only require the Pi, SD card, monitor (and HDMI cable), mouse, keyboard and network cable (with network connection). The remaining labs require the cobbler, protoboard, sensors and electronics gear.
- Raspberry Pi, Model B – you can obtain a Raspberry Pi from one of the organizations listed on the Raspberry Pi website (http://www.raspberrypi.org/) or Adafruit (http://www.adafruit.com/category/105)
- Monitor with HDMI cable
- Network cable (and network connection)
- 4GB (or bigger) SD Card – available from a number of stores or Adafruit
- Breadboard (a.k.a. protoboard) – available from a local electronics store like Radio Shack in the US (http://www.radioshack.com/product/index.jsp?productId=2734155) or from Adafruit (http://www.adafruit.com/products/64)
- Pi Cobbler and cable (to attach a Pi to a breadboard) – available from Adafruit (http://www.adafruit.com/products/914)
- Collection of LEDs (get a red, green and yellow one) – available from a local electronics store like Radio Shack in the US (http://www.radioshack.com/product/index.jsp?productId=2062551) or Adafruit
- DHT22 temperature/humidity sensor – available from Adafruit (http://www.adafruit.com/products/385)
- 1uf Capacitor – this comes with the DHT22 temperature sensor at Adafruit but can also be found at an electronics store
- Photocell sensors – available from a local electronics store like Radio Shack in the US (http://www.radioshack.com/product/index.jsp?productId=2062590) or Adafruit
- Momentary switch – available from a local electronics store like Radio Shack in the US (http://www.radioshack.com/product/index.jsp?productId=2062496) or AdaFruit
- 220 ohm resistor – available from a local electronics store like Radio Shack in the US (http://www.radioshack.com/product/index.jsp?productId=2062317) or Adafruit
- Collection of connecting wires – available from a local electronics store like Radio Shack in the US (http://www.radioshack.com/product/index.jsp?productId=2103801) or Adafruit. You can also just use shielded wire from an old ribbon or CATV cable
Happy holidays. I wish you the best in 2014. Come back to this blog starting in January to start getting each of the labs and “GET YOUR PI ON”.