• Intel
  • Microsoft
  • Google
  • Sun Microsystems
  • BT
  • IBM
  • Yahoo! Inc.
  • Zimbra
  • Atlassian Software Systems
  • Disney
  • EnterpriseDB
  • Etelos
  • Ingres
  • JasperSoft
  • Kablink
  • Linagora
  • MindTouch
  • Mozilla Corporation
  • Novell, Inc.
  • Open Invention Network
  • OpSource
  • RightScale
  • Silicon Mechanics
  • Tenth Planet
  • Ticketmaster
  • Voiceroute
  • White Oak Technologies, Inc.
  • XAware
  • ZDNet

Sponsorship Opportunities

For information on exhibition and sponsorship opportunities at the conference, contact Sharon Cordesse at scordesse@oreilly.com.

Media Partner Opportunities

Download the Media & Promotional Partner Brochure (PDF) for more information on trade opportunities with O'Reilly conferences, or contact mediapartners@oreilly.com.

Press and Media

For media-related inquiries, contact Maureen Jennings at maureen@oreilly.com.

OSCON Newsletter

To stay abreast of conference news and to receive email notification when registration opens, please sign up for the OSCON newsletter (login required).

Contact Us

View a complete list of OSCON 2008 Contacts

Controlling Electronics with Ruby

Location: F151 Level: Intermediate
Average rating: *****
(5.00, 2 ratings)

The Ruby community is full of people pushing the limits of technology. Projects like RAGI and Adhearsion enable Rubyists to control their phones; JRuby and Rubinius are exploring new ways of executing Ruby code; and of course Rails started a revolution in web development. I’m going to talk about another class of envelope pushers: the hardware hacking Rubyists.

Hardware hacking (or, more specifically, microcontroller hacking) has long been stuck in the land of C, Assembly, or target-specific languages like JAL. No more! Enterprising hackers have seen the need and addressed it, resulting in a number of ways to control your microcontroller with Ruby.

In this talk, I’ll explore a number of libraries, applications, and techniques for controlling electronic devices from Ruby. Many (most?) of the topics will come along with actual, physical hardware demonstrations. I’ll start with the basics, demonstrating Jim Weirich’s x10-cm17a library for controlling X10 home automation gear.

Next, we’ll take a look at Aaron Patterson’s BetaBrite library for controlling BetaBrite reader boards. We’ll explore some of the techniques Aaron uses to communicate with the board, highlighting the SerialPort library (which will be mentioned later…)

From there, we’ll move on to the Arduino development board. I’ll show off Greg Borenstein’s Ruby Arduino Development project, which provides a Ruby DSL that ultimately generates code to execute directly on the Arduino’s microcontroller. I’ll also talk a little bit about the Simple Message System, which is a combination firmware and protocol that can be used to control Arduino devices from a host computer, instead of with code executing directly on the microcontroller.

I’ll wrap the talk up by demonstrating how you can tie everything together, with a little help from some ZigBee wireless radio modules.

Photo of Ben Bleything

Ben Bleything

Bit Poetry, LLC

Ben Bleything is a Rubyist and amateur hardware hacker from Portland, Oregon. Ben Bleything is a Rubyist and hardware hacker, having come to Ruby by way of PHP and Perl. He has been slinging Ruby since 2005, when the sweet seductive voice of Rails called his name. Since then he has broken into the wild world of pure Ruby, for which he gets paid real money. Ben resides in beautiful Portland, Oregon.

OSCON 2008