oswald: lessons from and for the open hardware movement

23
Background Lessons Learned Future prospects Linux Plumbers Conference 2011 OSWALD: Lessons from and for the Open Hardware Movement Tim Harder OSU Open Source Lab September 9, 2011 Tim Harder Linux Plumbers Conference 2011

Upload: osu-open-source-lab

Post on 14-Jun-2015

1.003 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Linux Plumbers Conference 2011OSWALD: Lessons from and for the Open Hardware Movement

Tim Harder

OSU Open Source Lab

September 9, 2011

Tim Harder Linux Plumbers Conference 2011

Page 2: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

Inception of the OSWALD and the project’s timeline

I Concepts/ideas leading to the projectI OSU Platforms for LearningI TekBots program for ECE students

I Paired with BeaversourceI Combines coding and social networking — Elgg + TracI Easy introduction to open source communities

I TimelineI Project started in June 2008I Release first prototypes in December 2008I First deployment in April 2009I Large-scale deployment in October 2009I Project stalls mainly due to hardware issues in 2010

Tim Harder Linux Plumbers Conference 2011

Page 3: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

Design considerations

I PriceI FlexibilityI ManufacturabilityI Openness

BeagleBoard used as a model platform

Tim Harder Linux Plumbers Conference 2011

Page 4: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

OSWALD hardware

I ARM processorI 128 MB RAMI 256 MB NANDI 3.5” 320x240 display

I DVI out (up to1024x768)

I Resistive touchscreenI TouchpadI 3-axis accelerometer

I 5-way rocker switchI SpeakerI Microphone

I Built-in battery

(a) CORE.0 board (b) OSWALD

Tim Harder Linux Plumbers Conference 2011

Page 5: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

OSWALD software

I X-Loader and U-Boot bootloadersI Linux kernel: OMAP tree + OSWALD

patchesI Custom distribution: RadixI Other platforms: Gentoo, Ångström,

Poky, MeeGo, and AndroidI Code repositories:

code.oregonstate.edu/gitI Wiki: beaversource.oregonstate.

edu/projects/cspfl

Tim Harder Linux Plumbers Conference 2011

Page 6: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

Composition of Radix

I Built using OpenEmbeddedI Lightweight and flexibleI Matchbox desktopI GCC, Java (via jamvm), Python, PerlI SDK availableI Emulation possible via qemu branch

Default Radix desktop

Tim Harder Linux Plumbers Conference 2011

Page 7: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

Applications available on Radix

Figure: Applications

(a) epdfview (b) gpicview

(c) pcmanfm (d) xournal

I Focus on lightweightapplications

I Examples:I PDF viewer: epdfviewI Image viewer: gpicviewI File manager: pcmanfmI Drawing/writing: xournal

I Patched to work better withinOSWALD environment

I Plenty of other software:mplayer, octave, etc

Tim Harder Linux Plumbers Conference 2011

Page 8: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

Gaming

Figure: Various games and emulators running on the OSWALD

(a) Opentyrian (b) Freedoom (c) Numpty Physics

(d) Snes9x (e) Dosbox (f) ScummVM

Tim Harder Linux Plumbers Conference 2011

Page 9: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

A hands-on approach to computer science

I Freshmen students acquire devices on entry into the CSprogram

I Devices are integrated into courses throughout the curriculumto enhance labs and lectures

I Help emulate real world development and programmingenvironments for students

Tim Harder Linux Plumbers Conference 2011

Page 10: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project historyHardwareSoftwareEducational usage

A hands-on approach to computer science

I Mainly used in introductoryclasses for a few terms

I Programming basics in Java,data structures, and a few otherclasses

I OSU Robotics club: used in the2010 Mars rover design

Tim Harder Linux Plumbers Conference 2011

Page 11: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

In-house development

I Great for small projects and limited deploymentsI Allows for better control over the platform — experts close at

handI Hard to fix problems on complex platforms quicklyI Disastrous when core development team moves on

Tim Harder Linux Plumbers Conference 2011

Page 12: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Shoestring budget planning

I Bad hardware batches can quickly kill small projectsI Hard to communicate with 3rd party manufacturersI Difficult to plan through hardware revisions

Tim Harder Linux Plumbers Conference 2011

Page 13: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Finding external support

I Nearly impossible to find a vendor neutral solutionI Companies enjoy promising future devicesI Generally slow, similar to the grant process

Sponsors

Tim Harder Linux Plumbers Conference 2011

Page 14: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Small development team

I Allowed for more experimental andreactive system building

I Communication network was quickand easy to navigate

I Hard to spend development timeworking on training new developers

I Difficult to spend time on importantside projects — GUI development andtheming, keyboard improvement, etc

I Building a communityRadix virtual keyboard

Tim Harder Linux Plumbers Conference 2011

Page 15: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

GUI hassles

Figure: Display problems

(a) GTK dialog

(b) File menu

I Small resolutions not supported well in manycurrent GUI toolkits (desktop-centric appsare mainly to blame)

I Generally requires extensive theming andtoolkit rework

I Most companies/projects create their ownthemes or toolkits for mobile interfaces

Tim Harder Linux Plumbers Conference 2011

Page 16: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Prepare a solid software foundation, i.e. get someone elseto do the work

I In the best case, use a well-tested platform with plenty of 3rdparty support and documentation

I Outsource majority of development and documentation effortsto a community or larger project

I Focus efforts on creating educational content and relatedcontent modules

Tim Harder Linux Plumbers Conference 2011

Page 17: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Poor classroom experiences are costly

I Teachers are very risk averseI Mistakes and rushed deployments are extremely expensiveI Hard to regain entry and confidence in the classroom

environmentI Students are turned off by poor experiences

Tim Harder Linux Plumbers Conference 2011

Page 18: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Required infrastructure for successful deployments

I Have necessary support in place and trained before largedeployments

I More lead-in time for professors and TAs for Q&A sessionsand training before classroom usage

I Documentation and related support information a mustI Additional resources: debugging environments, basic IDE

support, SDKs, and VMs

Tim Harder Linux Plumbers Conference 2011

Page 19: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

HardwareSoftwareEducational

Extremely high barrier to entry for newcomers

I Average incoming student has minimal exposure to workingwith Linux let alone in embedded development environments

I Deploy devices from the top downI Test runs with advanced/older students and trickle down as

the project matures

Tim Harder Linux Plumbers Conference 2011

Page 20: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project statusOSWALD 2.0

OSWALD’s future

I Current status: extremely small amount of working devicesleft in stock

I Project suspended while searching for funds and futureplatform

I Looking and interested in any ideas or suggestions towardspossible devices

Tim Harder Linux Plumbers Conference 2011

Page 21: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project statusOSWALD 2.0

Searching for the perfect platform

I Information sharing, interoperability, user-centered design, andcollaboration around open source education

I Well-supported 3rd party device with a relatively openplatform

I Dream goal: Help create a platform used by multipleuniversities to develop open curriculum around open sourceand embedded development

Tim Harder Linux Plumbers Conference 2011

Page 22: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Project statusOSWALD 2.0

Requirements for an open, educational platform

I Hardware: Rugged case, decent battery life, andwell-supported chipset family

I Software: OS flexibility (no jailbreaking required)I Environment: Support standard programming environments

(Java and C/C++ for current classes)I Connectivity: Wifi and USB host mode requiredI Desired features: Easily modifiable case and rich set of I/O

devices

Tim Harder Linux Plumbers Conference 2011

Page 23: OSWALD: Lessons from and for the Open Hardware Movement

BackgroundLessons LearnedFuture prospects

Acknowledgements

DevelopersBen Goska, Kevin Kemper, Corbin Simpson,

and all other unmentioned contributors

Project managersCarlos Jensen, Don Heer, and others

Sponsors

Tim Harder Linux Plumbers Conference 2011