Planet maemo: category "feed:01c9bb92c8cdc7e3a5fc627f123acc22"

Gustavo Barbieri

Running Illume everywhere!

2008-10-16 23:31 UTC  by  Gustavo Barbieri
0
0
The Gang

Rasterman’s Gang: Nokia N810, Sharp Zaurus, OpenMoko Freerunner and Palm Treo-650

After Rasterman announced he had “The Gang” running Illume we decided to help him and run it in yet-another platform, the Freescale iMX31:

Some days ago raster already posted video of his virtual keyboard doing correction/prediction and operating on various resolutions, for those that liked my iPhone-like virtual keyboard demo for n800, this one looks better and is for real, check out his videos: 01, 02, 03 and 04

Categories: C
Gustavo Barbieri

x11 benchmark on embedded systems

2008-10-13 22:30 UTC  by  Gustavo Barbieri
0
0

Unlike most would say, x11 does quite well. See our benchmarks comparing X11, FB, DirectFB on a Fresscale imx31. There you can see how x11-16 bitch-slaps everything… that’s even better on n8×0 and that’s why Canola runs fast ;-)

Categories: C
Gustavo Barbieri

Guarana and Enjoy 0.1.0 released!

2008-10-08 03:11 UTC  by  Gustavo Barbieri
0
0

ProFUSION is proud to announce the first public release of our Guarana framework and its demo Enjoy.

Guarana is a set of free software libraries to aid embedded application development. It comes with with a remote control access library, module loader, model-view-controller machinery, basic data structures and a fast growing widget set.

Enjoy is a demo music player targeted at embedded touchscreen devices. It uses Guarana’s MVC and widgets and Emotion to play media.

Here’s a video running on the target demo platform, a Freescale imx31 3-stack board. (it will run on N8×0, but will not play music because Emotion’s gstreamer backend uses decodebin, we need to patch it to use DSP decoders/sinks)

More information about Guarana features and an Enjoy screenshot see the original press release.

For those that don’t know, Guarana is a Brazilian plant and also the name of an excellent soft drink. It’s also the base of some energetic drinks. That’s why the demo is called Enjoy… okay, okay, it’s also because it starts with “e” as well ;-)

Categories: C
Gustavo Barbieri

LightMediaScanner 0.2.0 released

2008-10-05 16:01 UTC  by  Gustavo Barbieri
0
0

We’re proud to release a new version of LightMediaScanner, the fastest media scanner for your embedded device ;-)

This version now adds the direct relationship of audios and artists table, this will allow album-less audios to have an artist as well as have collections audios to display their artists. Yes, Canola will behave better now.

Also new are the often requested single-process scan and progress reporting.

Progress is reported using callbacks. Since it is impossible to know beforehand how many files will be in the directories before walking them, there is no “total” item reporting or percentage, this is up to you if you think it is worth to pay such penalty. Check also does not report so it’s uniform, but number of items to check is easier to discover, just check the database. These callbacks will also report the state of such file, so you can notify user if some files were skipped because they took too much to finish (more than slave_timeout).

Single process scan is now available, but it’s mostly there to aid debugging. While it will speed up scan on single-CPU machines (ie: Nokia N810), it is less safe and if it breaks/hangs (ie: due MMC being removed during parse, or bad FAT filesystem) it will bring down your whole software, so be aware of that before using.

Last but not least, our GIT moved from http://staff.get-e.org/ to http://gitweb.profusion.mobi/ (Gitweb) with repositories being cloned from git clone git://git.profusion.mobi/$PROJECT

Please report any bugs to our project at garage.maemo.org!

Categories: C
Gustavo Barbieri

Next week Ulisses, Luis Felipe and I will be at “Semana da Mobilidade” (Mobility Week), to be held at USP São Carlos, Brazil.

This is a great thing because we’ll be able to talk about Maemo and Python to undergrad students and try to show there is life (and paid jobs/work) beyond Windows and Java, .Net and Delphi. We already did a talk similar to that for UNICAMP students (although it was an informal talk) and attendees liked it.

I’ll present both a talk and a training. I plan to show how GNU/Linux development happens on desktop, how it needs to be changed for manual cross-compiling and how Maemo (mostly scratchbox) helps with that, then cover other changes, like Hildon-ization and hints on how to change user interface to make it usable for high-dpi but small screens, then say how Python can cut to the chase and avoid most of these troubles. This is a talk, so nothing will be in-depth. As for the training, I plan to go step-by-step scratchbox on the first day, cross compiling and port on the second and Python development on the third (4hours/day). Any ideas or suggestions?

Ulisses will discuss more generally life outside Windows-Java environment, trying to get students willing to work with GNU/Linux and open source in general. I’m not sure about other countries, but here in Brazil lots of students completely reject learning these Free/Open Source technologies because they think there is no opportunity to get paid to do such thing, so they focus on proprietary world, mostly on Windows and Java or .Net.

Luis will run the “Python for s60″ training, a hands-on training, covering the basics, how to send and run scripts on the phone, then go through some API to demo capabilities, then some real development.

Last but not least, this mark the start of a great partnership between INdT and ProFUSION.

Gustavo Barbieri

Translucent widgets on X11, EFL version.

2008-09-23 20:35 UTC  by  Gustavo Barbieri
0
0

Today I read on Trolltech Labs Blogs a great post from Samuel Rødal about how to get translucent widgets on X11 with Qt’s newest snapshot. Then I thought that if people find it cool to have such thing, why not say how to do the same in EFL?

EFL here is just Evas, Ecore and Edje. Evas does support rendering to semi-transparent buffers, including ARGB windows. Ecore and it’s sub-libraries Ecore-X and Ecore-Evas know how to create ARGB windows since a long time, just use ecore_evas_alpha_set(ee, 1) if you have composite manager or ecore_evas_shaped_set(ee, 1) if you don’t (it will be the best you can achieve on low end hardwares). Edje is just used to provide fancy button-like object without trouble, if you like Qt, then try QEdje.

My code is available at http://barbieri-playground.googlecode.com/svn/efl-tests/transp-bg/ and it requires a recent version of Ecore, not because of alpha/translucent support, but because I just added the helper ecore_evas_new(). If you have an older version, try to replace it with ecore_evas_software_x11_new(NULL, 0, 0, 0, 320, 240). Why I did used that function? First because I wanted to blog about it, second because it will make the same effect work elsewhere, like Windows and DirectFB ;-)

Gustavo Barbieri

E17 running on Freescale i.MX31

2008-09-23 00:37 UTC  by  Gustavo Barbieri
0
0

We just published at ProFUSION news (shameless plug!) that we finished the port and packaging of Enlightenment DR17 on Freescale’s i.MX31 development board. Packages were sent to LTIB mail list and are pending inclusion into official repository.

Hardware is very similar to Nokia N810, but with a smaller screen. Software runs smooth, but it’s not usable out-of-the-box, with dialogs being too big and general hit areas too small (border buttons, etc), that’s why we plan to port Illume soon, as well as Python-EFL so maybe someone can try to run Canola on it ;-)

Gustavo Barbieri

One of the most boring work while doing Edje is having to measure all the parts and write them on your EDC files. It’s also very error prone. So why not make it automatic?

This idea is not new and at INdT we did that, for Gimp, where designers handle developers PSD (Photoshop) files and they open these in Gimp, outputting as edc using this script by Renato Chencarek.

Now at ProFUSION we’re finishing the UI of Enjoy, a music player to demo the power of Guarana framework (to be released soon!). I did the design using Inkscape, so I was wondering that I could join Renato and write an Inkscape-to-EDC converter, and here it is! Both files are now in E SVN under edje/utils.

If you like screenshots, here they are. You can also have a glimpse of Enjoy look (hey, I’m a developer, not a designer, so don’t shoot me! however suggestions are appreciated):

inkscape2edc: inkscape with original file

inkscape2edc: inkscape with original file

inkscape2edc: edje_editor with resulting file

inkscape2edc: edje_editor with resulting file

I hope this can help other EFL developers out there. I know some Maemo, OpenMoko and even aMSN guys are using it now.

Update#1: You need both inkscape and/or gimp to use the scripts.

Update#2: Scripts are written in Python, so you need it too.

Gustavo Barbieri

Evas DirectFB released

2008-09-15 00:47 UTC  by  Gustavo Barbieri
0
0

This week ProFUSION released Evas DirectFB engine, adding it back to SVN. While engine is functional, it’s not as fast as it could be and Denis Oliver Kropp is looking at this, that seems to be related to pre-allocated surfaces not being accelerated by DirectFB. You can work around this by using Evas software engine, that is very fast, just define DFB_USE_EVAS_IMAGE_DRAW.

Announcements:

Next steps are to provide EWL and ETK engines, just need some time to work on them.

Categories: C
Gustavo Barbieri

Python-EFL 0.3.0 released

2008-08-18 18:17 UTC  by  Gustavo Barbieri
0
0

Python-EFL packages were uploaded to PyPI, making it possible to install with setuptool’s easy_install.

This release is actually what is in CVS SVN for some time now and is up to date with current EFL code base.

It would be amazing if we could find official Ubuntu packagers for EFL and Python-EFL (see launchpad #259098), we already have one guy working with Fedora, it’s already provided as an overlay for Gentoo, OpenEmbedded has it too, Debian has it in experimental (bit old, but it’s there) and we have some out-of-tree packages for this great distro. Of course Maemo packages are there thanks to Etrunko. If you are willing to package, please contact the developers, we can provide useful hints on which packages are higher priority so you don’t package marginal stuff.

I’ve also updated the Python-EFL API documentation (automatically generated with epydoc).

Categories: Free Software
Gustavo Barbieri

Events I’ll attend later this year

2008-07-18 23:57 UTC  by  Gustavo Barbieri
0
0

Although I’m very busy these days getting ProFUSION up and running, I managed to be accepted by two excellent events:

  • Maemo Summit and OSiM world September 16-20th, Berlin (Germany). I’ll do a lightning talk about rich graphical user interfaces with efl and try to setup a bof about rich/alternative graphical user interfaces for maemo. Kindly sponsored by Nokia, thanks!
  • Embedded Linux Conference Europe 2008 November 6-7th, Ede (The Netherlands). I’ll present about rich graphical user interfaces using efl and guarana (more to come about guarana later!). Still looking for a sponsor :-(

The ELCE presentation will continue from last year talk, with more demos and also covering real world use cases. It will also be the first presentation to cover Guarana, an open source framework on top of EFL developed by ProFUSION to aid development. I’m sure you’ll like it. [Guarana is to be released soon, stay tuned!]

If you plan to attend these events, please let me know so we can schedule some beers.

Categories: Free Software
Gustavo Barbieri

One myth less

2008-05-20 09:00 UTC  by  Gustavo Barbieri
0
0

I do write C code on a daily basis since 2001 and I don’t know why I always believed that free(NULL) would crash, so I always used the painful construction:

        if (p)
                free(p);

Until yesterday! While talking to Lennart Poettering and we bet about that. Damn, I was so sure about it, but I’d really want to believe I was wrong, since I could avoid such stupid “if”. Well, after we got David Zeuthen’s phone we checked the free(3) man page and I was proved wrong!

Thanks Lennart, I owe you some bucks ;-)

Categories: C