1. Fun with mobile devices
Welcome
Codebits 2008
Marcus Bauer - bearstech.com
2. What is the talk about?
Presentation of a mobile platform:
the Openmoko Freerunner
● What is it?
● What can you do with it?
● What software stacks exist?
● How do you develop for it?
● Ideas for hacking - be creative & innovative
3. Thought experiment
Let's go back to 1980
IBM PC - the begin of personal computing:
4. Thought experiment
● 4,77 Mhz
● 16KB - 256KB RAM memory
● 360KB floppy disk
● optional 10 MB harddisk
● no networking
● big box on your desktop
● 80x24 character screen (no graphics)
● 25 kilograms, 150 Watt
6. Thought experiment
● 128 MB RAM
● 450 MHz CPU
● up to 8 GB flash storage
● fully networked: not just on the desk but
everywhere
● 120 grams
=> it fits in your pocket!
7. Thought experiment
● don't compare to a desktop computer,
you will miss the opportunities
● think like somebody from 1980 suddenly
offered this gadget
● free your mind from quad core CPUs, 1TB
harddisks and Gbit Ethernet
To repeat the Mantra: It's cool - it fits in my
pocket and can go everywhere
8. Thought experiment
More hardware features:
● networked everywhere by GPRS,
prices are dropping
● power needs: 1 Watt (solar panel)
● location based services: built-in GPS
● universal connectivity: USB
data acquisition
● accelerometers: fun
● high resolution 285dpi VGA screen 640x480
11. Software Stack
Hackabable1, a distribution by Bearstech
integrates Open Source for easy development:
● Debian
-> 15.000+ packages
● GNOME mobile implementation
-> industry heavy weights
● full LAMP stack
-> easy integration with the web
12. Software Stack
Debian
● available for ARM
● apt-get install
● build and package management tools
13. Software Stack
GNOME mobile supported by
● Moblin (Intel)
● Limo Foundation (many major manfs & ops)
● Ubuntu
=> good base for development, future proof
=> mature, well documented
14. Software Stack
LAMP
● Linux, Apache, MySQL, PHP
● python, ruby...
● sqlite, a lightweight alternative
● even postgres possible if need for
transactions
=> mobile device development is no longer
only for specialized embedded developers
15. Software Stack
A word about embedded development
● GTK apps work everywhere, just recompile
for ARM or i386: the netbook and mobile
worlds are growing together
● full toolchain on the device, start in 5
minutes: aptget source b hello
● for speed up compiling use distcc
17. Software Stack
A word about open source and
the power of communites
● wikipedia
● openstreetmap.org - collaborative mapping
● starting you own projects: gain experience
19. Create, Hack & Innovate
● tourism: lbs guides & information systems
● lbs based social networking
● location games - “scotland yard”
● disaster recovery - “Myanmar|Birma”
● NGO 3rd world databases - think vaccination
20. Create, Hack & Innovate
Needed skills:
● either web or embedded
● CSS, Javascript, PHP, etc...
● C, C++, Python...
Several devices are available
plus support for the contest
GTD in 30 hours: possible hacks, shortcuts...