webOS is going to be OpenSource Software

HP the company which bought Palm some time ago just announced, that they are going to release webOS as open source software! The Linux kernel side of webOS was open souce since the beginning, with a few exceptions like the PowerVR 3D driver and the touchscreen driver.
We’ll see how far HP will go and what parts they’ll really open up (their announcement didn’t mention the modem protocol for example).

webOS is probably the best and most intuitive software running on smartphones today. And was said to be “the iPhone killer”. Unfortunately the first device it was sold on (Palm Pre) wasn’t exactly the best hardware as it had serveral flaws like a bad keyboard slider. Thus webOS wasn’t adopted by masses of developers and suffered from a lack of applications, which in turn made it uninteresting to end users.

I got a Palm Pre in the early days and I also got a HP|Palm Pre2 developer device some months ago, which I still enjoy to use. All in all I enjoyed developing for those devices, too, but it was pretty depressing to reverse engineer parts of the modem protocol, to be able to have it communicate with the FreeSmartphone.org (FSO) middleware and run a really free and open source operating system like SHR.

So with this news from HP what we could probably get in 2012 is:

Let’s hope the best for the mobile FOSS community in 2012!

HP|Palm Pre – msmcomm

Table of Contents

As you may already know[1], I got a free HP|Palm Pre2 developer device some time ago.

The first project I started with this really nice piece of hardware is Bootr[2] – a multiboot solution for all HP|Palm Pre devices, which let’s you select an OS (SHR, WebOS, Android, …) at startup.

Msmcomm

I pledged that I’ll work on the SMS part of msmcomm[3] next, which is a free and open source utility to communicate with the Palm’s Qualcomm/MSM modem.

Now I’m happy to announce that I’ve finished quite some work on msmcomm’s SMS part and I’ve upstreamed all bytes of it. This starts at the (almost) lowest level of reverse engineering the structures used in the protocol to communicate with the modem and building useful data structures out of it. Then gathering suitable data to stuff into those structures and send them to – and receive them from – the modem.

FSO

To make my work usable to distributions like SHR[4], QtMoko[5] and Aurora[6], I integrated my work with a higher level layer – the FreeSmartphone.org middleware[7]. You can now use the usual FSO DBus commands as stated in FSO’s docs[8] to send SMS’ and listen for new, incoming SMS’.

As FSO is an abstraction layer between the low msmcomm/modem level and the higher userspace/distribution level, all my work can now be used by the abovementioned distributions automagically without any change needed – isn’t this awesome?!

Status

What’s working

  • sending/receiving SMS
  • works for SMS containing special chars like “äöüß”
  • works for multi part SMS (e.g. SMS > 160 chars)
  • acknowledging (single) incoming SMS
  • works using the FSO and the Msmcomm DBus APIs

What’s left

  • acknowledging multi part SMS
  • SMS status report
  • squeezing out bugs

Note: This only represents the SMS part of msmcomm. There is whole lot more working in the context of calls, 3g internet, sim, phonebook, …

Links

[1] HP|Palm developer device – blog.slyon.de
[2] Bootr – github.com
[3] Msmcomm – git.freesmartphone.org
[4] SHR project – shr-project.org
[5] QtMoko project – qtmoko.org
[6] Aurora project – wiki.freesmartphone.org
[7] FreeSmartphone.org – freesmartphone.org
[8] FSO API documentation – docs.freesmartphone.org

Creative Commons Lizenzvertrag

Free platforms Go On, despite former giant’s NoGo

This is an official PR announcement from the FOSS community.
Different translations are available here: wiki.freesmartphone.org
/CZ /DE /ES /PL

Tuesday, February 15th, 2011 – Despite the recent departure of a former mobile handset manufacturer giant, several developing teams and their users are actually… happily hacking on. With the longterm goal of a fully Free Software platform for embedded systems, the teams of FSO, SHR, QtMoko, Replicant and AndroidOnFreerunner invite others to join and participate in projects which are not driven left and right by the  unpredictable follies of corporate management.

«We have been making a steady progress throughout the years. The major requirement has been a solid, Linux supported hardware, and for that we have been using Openmoko, Palm Pre, N900 and HTC phones – and ambitioned forthcoming projects like Goldelico’s GTA04. All these devices are providing a great development platform for those who seek truly open and independent system for their learning, coding and even professional or commercial use.» — says Dr. Michael Lauer from FSO.

There’s a temporary advantage when big players like FIC (Openmoko), Nokia+Intel (MeeGo) and Google (Android) invest in Free Software Projects. Though if the project contains parts of proprietary code, it depends on the investor. At some point the investor might abandon the project and the community. Then the project is doomed because the community can not fix any bugs in the proprietary code or adapt it to newer/other APIs.

«We believe in another model – proven to be both sustainable and satisfactory – where everybody can contribute their knowledge and learn at the same time, without proprietary code blobs and no closed doors boardroom meetings. This allows us to use existing hardware even when the maker decided to abandon it all together or is not willing to update it anymore. Anybody is able to commit, read, comment on or download the source code.»

The teams invite both users and developers to look at their project pages, the current results, motivations and needs, as well as to join the mailing lists, wikis, forums, IRC rooms or what  not, to chat, listen and eventually contribute in order to create the free and open embedded platform for their devices.

The communities of FSO, SHR, QtMoko, Replicant and Android on Freerunner

Read more

Steam is comming to Linux, now for real!

Yay, seems like the Steam Client, the Steam Engine, the Steam Games and the 666casino games are comming to Linux, now for real.

There is no official announcement by Valve, yet.
But there are Linux binaries and a Linux launcher script on the valve servers publically available.

The Mac version, which is related to the Linux version (with regard to porting it to OpenGL, Webkit, etc…) and officially announced, is in a closed Beta at the moment.

So we may see the Linux version after the Mac version is in it’s final state.
Phoronix suspects a Linux version release in June.

Check out these articles at Phoronix:

Proof In Steam’s Mac Client Of Linux Support
Yet More Signs Of Valve’s Steam On Linux
There Is No Doubt, Steam Is Coming To Linux!

Virtual Keyboard

vkbd
I just found this little EFL-testapp:

It’s an app written by Gustavo Sverzut Barbieri. It’s an Iphone like virtual keyboard. You can find the sourcecode on googlecode..

I had to apply a little change to the code, to get it running on the Freerunner.
I changed lines 206-210 to this:

if ecore.evas.engine_type_supported_get("software_16_x11"):
    ee = ecore.evas.SoftwareX11_16(w=WIDTH, h=HEIGHT)
else: print "warning: x11-16 is not supported, fallback to x11" ee = ecore.evas.SoftwareX11(w=WIDTH, h=HEIGHT)

Maybe someone likes to modify this code and build a real virtural keyboard for SHR out of it?
I hope i could motivate someone, as this would be a really nice keyboard.

Creative Commons Lizenzvertrag

fsoraw and neon

Today I decided to try out the picture-viewing-app “neon” [1] [2] on my Freerunner. This app is really amazing! It is pretty fast and provides very cool features like auto rotating images by dimensions, auto rotating window using accelerometers and of course zooming, manual rotating images, slide-show, the basic stuff. And if you use the b_and_w theme it looks pretty elegant.

All in all i can say: I love this app! And therefore i created a ticket in the SHR-Trac to add neon to the SHR-Feed [3].

After a while of using neon I found a few things that couldn’t satisfy my expectations:

  • 1st the white background of the b_and_w theme, which is visible if a picture doesn’t fill the screen. But a short look in the neon-SVN and one edje_cc later I had created a edje-file for b_and_w theme, which has a black background [4].

    neon-b_and_w

  • 2nd issue was that the display of the Freerunner blanked while looking at pictures. This is where “fsoraw” [5] [6] comes on. Fsoraw (FSO Resource Allocation Wrapper) is a wrapper utility to launch applications preallocating system resources from FSO. That means you can activate e.g. the “Display”-resource, just by editing the .desktop file of an app. This way I edited my /usr/share/applications/neon.desktop to allocate the “CPU” and “Display” resources, to avoid suspending and display blanking. Furthermore, I customised the neon parameters to activate the picture and window auto rotating stuff, to use the b_and_w theme and to start in my “Bilder” (=pictures) folder. The Exec line of the .desktop file now looks like this:
    Exec=fsoraw -r CPU,Display -- neon -f -r 0 -R 1 -t b_and_w /media/mmcblk0p3/Bilder

Have fun with neon and use fsoraw (e.g. for mokomaze, too):

Exec=fsoraw -r CPU,Display mokomaze

[1] neon project page
[2] neon in om-wiki
[3] shr #596
[4] download this edje-file
[5] fsoraw project page
[6] fsoraw in om-wiki

Creative Commons Lizenzvertrag

FSO Milestone 5.5 is out!

A few minutes ago mickey released the long-awaited milestone 5.5 of the FreeSmartphone.Org (FSO) smartphone middleware.

Check out the git-commit here: http://git.freesmartphone.org
Big thanks to the whole FSO team for this great piece of software!

Now let’s look forward to the new FSO 2.0 API-Implementation – called cornucopia, which is rewritten in Vala. Vala is a compiled language, which leads to an performance boost in comparison with the FSO 1.0 implementation, which is written in Python.

mehrere Bilder verkleinern

Da ich vor kurzem mal wieder ein Bilder-verkleinerungs-Script brauchte und keines hatte und mich dann mal wieder ein wenig mit imagemagick beschäftigt habe:
Hier ein kleines Bash-Script, mit dem man alle Bilder (hier alle .jpg-Dateien) in einem Verzeichnis auf eine bestimmte größe (hier [auto]x600) komprimieren kann.

#!/bin/bash
# Ordner 'small' erstellen
mkdir small

# Alle .jpg Dateien auslesen
for file in *.jpg
do
    # Bilder verkleinern und unter gleichem Namen in 'small' ablegen
    convert ${file} -resize x600 small/${file}
done

Android Impressions

Just flashed Android to my Freerunner…

I didn’t think it’s that easy!

It’s just like flashing a normal Om2008.12 or SHR image. You don’t have to use a special bootloader (if you use koolus 1,9MB kernel). But remember to prepare a uSD-card before starting Android.
All necessary files and a step by step guide can be found here: http://forum.koolu.org

Android really isn’t usable at the moment. SHR or Om2008 gives you much more functionality. But i had to test it =).

Some pictures…

Creative Commons Lizenzvertrag