Openmokast: The open broadcasting software stack for mobile devices
-
Upload
jean-michel-bouffard -
Category
Technology
-
view
1.764 -
download
2
description
Transcript of Openmokast: The open broadcasting software stack for mobile devices
![Page 1: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/1.jpg)
Openmokast: The open broadcastingsoftware stackfor mobile devicesPresented at osbootcamp YYZ1 (Mobile embedded development conference Waterloo, Canada)
by JeanMichel Bouffard
<jean[email protected]>
![Page 2: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/2.jpg)
2
Summary
✔ Broadcasting to handheld problem✔ The Openmoko platform✔ Implementing open mobile broadcasting in the
Openmokast project✔ Conclusion
![Page 3: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/3.jpg)
3
Broadcasting to handheld problem
✔ Typical mobile phones only support applications that use the network operator controlled infrastructures:
✔ CDMA2000 > 1X, EVDO✔ GSM > GPRS, EDGE, 3G
✔ For this reason, innovation in mobility is difficult✔ Broadcasting networks and applications have
traditionally been ignored by network operators and mobile devices manufacturers
ATSC-M/H
![Page 4: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/4.jpg)
4
Broadcasting to handheld problem
✔ The solution to mobile innovation is to create open phone project based on open source software
www.android.com www.trolltech.comwww.openmoko.org
![Page 5: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/5.jpg)
5
Broadcasting to handheld problem
✔ Each project implements a complete software stack with a middleware for mobile services
www.android.comwww.openmoko.org
www.trolltech.com
![Page 6: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/6.jpg)
6
Broadcasting to handheld problem
✔ No stack supported broadcasting!✔ The Openmokast project was launched to support the
creation of independent broadcastenabled handsets by studying the specific requirements for mobile multimedia broadcasting (MMB) applications in the context of the previously mentioned open platforms and by integrating corresponding software building blocks into them
![Page 7: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/7.jpg)
7
The Openmoko platform Why?
✔ The Openmoko project was selected for preliminary development for many reasons
✔ Completely open software stack based on Linux✔ Only hardware components with open API are part of the
devices✔ The complete specs and the CAD files for of the devices were
released under a CC license✔ The hardware engineering process is openly discussed in the
project's mailing lists and wiki pages✔ The community is largely involved in the software development
and good communication was established over different online collaboration tools
![Page 8: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/8.jpg)
8
The Openmoko platform What?
✔ The Openmoko project was initiated by FIC and Openmoko, Inc. in novembre 2006
✔ The project covers two main areas✔ Hardware devices design and engineering✔ Software development
✔ The mission of the project is to “free your phone” by allowing users to
✔ Add and modify the software to their needs✔ Add new hardware components✔ Have full access to the phone capabilities
![Page 9: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/9.jpg)
9
The Openmoko platform Hardware
✔ Openmoko released two different devices so far✔ A preliminary developer preview, the Neo 1973✔ The current stable device, the Neo FreeRunner
Neo FreeRunner
codename GTA02 (released July 2008)
Neo 1973
codename GTA01 (released July 2007)
![Page 10: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/10.jpg)
10
The Openmoko platform Hardware specifications
✔ High resolution touch screen 2.84” (43mm x 58mm) 480x640 pixels
✔ 128MB SDRAM memory✔ 256 MB integrated flash memory (expandable with
microSD or microSDHC card)✔ microSD slot supporting up to 8GB SDHC cards✔ Internal GPS module✔ Bluetooth✔ 802.11 b/g WiFi✔ 400Mhz ARM processor✔ 2 * 3D accelerometers✔ 2 LEDs illuminating the two buttons on the rim of the
case (one bicolor [blue|orange] behind the power button, 1 unicolor [red] behind the aux button)
✔ Triband GSM and GPRS✔ USB Host function with 500mA power, allowing to power
USB devices for short periods
![Page 11: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/11.jpg)
11
The Openmoko platform Software architecture
✔ The typical software stackfor embedded devices canbe represented in Layersas depicted here
✔ The middleware layerprovides:
✔ The standard services offeredto the applications by the operating system
✔ The communication link between the applications✔ The middleware assures:
✔ Compatibility of the applications that uses the platform✔ Interoperability between the applications
![Page 12: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/12.jpg)
12
The Openmoko platform Software architecture
![Page 13: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/13.jpg)
13
The Openmoko platform Software architecture
✔ Middleware services for Openmoko✔ High level
✔ Usage, Event, Preferences, Context, Telephony, Networking, PIM
✔ Low level✔ Device Control, GSM
Defined and implemented under the FSO Framework at FreeSmartPhone.org
![Page 14: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/14.jpg)
14
The Openmoko platform Distributions
✔ The official Openmoko distribution is OM2008.12✔ illume window manager✔ opkg package management system based on the Itsy Package
Management System for embedded devices
![Page 15: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/15.jpg)
15
The Openmoko platform Distributions
✔ Distributions can be classified in three groups
✔ OM Inc. driven✔ OM Community driven✔ NonOM driven
✔ OM community has generated a large contribution
✔ Other less significant distributions were also successfully ported for OM devices
![Page 16: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/16.jpg)
16
The Openmoko platform Applications
✔ Development for OM is really active in the community✔ Main sources to find OM applications:
✔ Openmoko wiki's master application list for the Openmoko smartphones
✔ http://wiki.openmoko.org/wiki/Applications✔ 114 applications listed in 13 categories
✔ opkg A software directory for Openmoko phones✔ http://www.opkg.org/✔ 79 applications listed in 10 categories
✔ Because OM2008.x is a full featured Linux based system including a full X server, almost any Linux application could be rebuilt and packaged for the distribution
![Page 17: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/17.jpg)
17
The Openmoko platform Applications examples
✔ Numptyphysics✔ Drawing puzzle game✔ Use a physics engine
specifically written for games
✔ TangoGPS✔ Fast and lightweight mapping
application✔ Uses the FreeRunner hardware
✔ GPS for realtime positioning✔ Wifi connection for maps updates
✔ Uses maps data from the Openstreetmap project
![Page 18: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/18.jpg)
18
The Openmoko platform Is it for you?
✔ The Openmoko project is still a “work in progress”✔ Intended audience
✔ Linux users✔ Software developers✔ And ultimately, general consumers (the project is not there yet)
✔ Usability✔ GSM voice calls functional but voice quality could be improved✔ SMS messaging functional✔ Wifi networking functional✔ GPS functional✔ Multimedia capabilities such as audio/video playout unstable✔ Buggy Sleep/resume capabilities, hence battery life is limited
![Page 19: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/19.jpg)
19
The Openmoko platform Possibilities
✔ Platform of choice for:✔ FOSS embedded development
✔ Supports virtually any availablesoftware technology from the“Linux world”
✔ Advanced hardware capabilities✔ Embedded system integration
✔ Available hardware specificationsenables easy modifications
✔ OM is not a phone, it's a portable Linux computerthat just happen to have phoning capabilities
Neo FreeRunner+
Debian+
high end Accton 802.11b/g wifi card
=Portable network security
testing platform
![Page 20: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/20.jpg)
20
Implementing open mobile broadcasting in the Openmokast project
✔ Openmoko was selected as the first development platform for the project
✔ The missing parts:✔ Compatible (SDIO, USB or ???) broadcasting receiver✔ Linux drivers for the receiver✔ Broadcasting stack to control the receivers and access the
data✔ Applications to decode the multimedia streams✔ Nice integration inside the Neo FreeRunner
![Page 21: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/21.jpg)
21
Implementing open mobile broadcasting in the Openmokast project
✔ Compatible broadcasting receiver✔ MTECH UDRA3L TDMB/DAB (Digital Multimedia/Audio
Boardcasting) USB Receiver for PC & Laptop✔ Capable of receiving high quality audio and video mobile
broadcasting services✔ Fully compliant to ETSI EN 300 401 (Eureka147)✔ RF frequency range:
✔ Band III: 174 to 240MHz✔ China band III: 168.160 to 221.568MHz✔ L band: 1452 to 1492MHz (UDRA3L)
✔ Transmission mode: all modes with auto detection✔ Channel decoding: single channel decoding✔ Decoding capacity:
✔ Audio service: up to 384Kbps✔ Video service: up to 1.5Mbps
✔ RF input connector: 50 ohms RF SMA connector
![Page 22: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/22.jpg)
22
Implementing open mobile broadcasting in the Openmokast project
✔ Linux drivers✔ Analysis of the communication between the USB receiver and
its default Windows software was achieved using a USB sniffer application
✔ The communication protocol was reimplemented on Linux using:
✔ libusb0.1 user space USB driver✔ “libusb_augment” extension
![Page 23: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/23.jpg)
23
Implementing open mobile broadcasting in the Openmokast project
✔ Broadcasting software stack✔ Based on a software previously developed at CRC✔ C/C++✔ User interface uses GUI library GTK+✔ Control interface:
✔ Text console✔ Telnet console✔ DBus interface org.openmokast.Receiver
✔ Data interface:✔ Standard UDP/IP or HTTP streams
✔ Decoder applications✔ Any technology that can use either of the control/data interfaces
![Page 24: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/24.jpg)
24
Implementing open mobile broadcasting in the Openmokast project
![Page 25: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/25.jpg)
25
Implementing open mobile broadcasting in the Openmokast project
✔ Openmokast software stack in action
![Page 26: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/26.jpg)
26
Implementing open mobile broadcasting in the Openmokast project
✔ The integration into the Openmokast device required the design of a case extension based on the released CAD from Openmoko, Inc.
![Page 27: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/27.jpg)
27
Implementing open mobile broadcasting in the Openmokast project
✔ Extension prototypes were manufactured with a 3D printer by Cimetrix (http://cimetrixsolutions.com/) at an acceptable cost
![Page 28: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/28.jpg)
28
Implementing open mobile broadcasting in the Openmokast project
✔ Final Openmokast prototype
![Page 29: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/29.jpg)
29
Conclusion
✔ More information at:✔ Openmokast Resources for Open Mobile Broadcast Devices
http://openmokast.org✔ Openmoko Open. Mobile. Free.
http://wiki.openmoko.org✔ opkg A software directory for Openmoko phones
http://www.opkg.org/✔
![Page 30: Openmokast: The open broadcasting software stack for mobile devices](https://reader035.fdocuments.in/reader035/viewer/2022070304/54bc46484a79590a298b4589/html5/thumbnails/30.jpg)
30
THANK YOU