Open Infotainment Navigation Demo

8 03 2012

After month of work here is again a short insight in my current open infotainment prototype. Many work has happened under the hood and hard to visualize. The GUI statemachine concept has been much improved.

The application theme is based on the default Elementary theme. There is an internal design specification that also fits to a future media player and phone application.

Current navigation features are:

  • Show live car position on map read from gpsd
  • Draw map with libosmscout cairo renderer while driving
  • Move map around with joystick control
  • Calculate route with libosmscout from current car position to defined targets
  • Show live GPS position data
  • Emulate driving with gpsfake

Next navigation development target is to have a target destination input screen (country/city/street).

The prototype has already defined an interface for media and phone control, but not yet a really working implementation. I’ll implement a demo, but offer everyone to take over these applications.

Until now I didn’t publish any source code except the statemachine framework (http://code.google.com/p/stateval/). I plan to release the source code in future if the basic software architecture is more stable. But if you really like the idea and want to participate please write me an E-Mail.

Please note that shown video has some edits regarding route calculation time. The route calculation takes some seconds more, but I cut them away. Just in the spirit of the current iPhone4 advertising. :-)





DBus-C++ 0.9.0 released!

1 12 2011

DBus-C++ attempts to provide a C++ API for D-BUS. The library has a glib and an Ecore mainloop integration. It also offers an optional own main loop.

Since I took over maintainership of DBus-C++ it was sitting around in a GIT repository on Gitorious.

Now I decided to do a release with number 0.9.0 on SourceForge.

And there is a pretty new logo for DBus-C++!

DBus-C++ Logo

 





New E17 module eooorg in E-SVN

11 07 2010

A solution for all people bugged by a long OpenOffice.org startup. This module preloads a OpenOffice.org process and holds in in the memory. So all OpenOffice.org documents are opened really fast. It only comes with the cost of some memory consumation.

It’s only needed to load the module to activate it. Placing it on the shelf is not needed for the feature. But later some options and easy application starters may be available from the icon. So it doesn’t hurt to place it in a shelf.

Available in E-SVN trunk/E-MODULES-EXTRA/eooorg.

Check out as anonymous:

svn co http://svn.enlightenment.org/svn/e/trunk/E-MODULES-EXTRA/eooorg




Kismet plugin for Mapnik

1 08 2009

Some time ago I wrote a kismet plugin for Mapnik. The OpenSource software Mapnik is a map renderer for e.g. OpenStreetMap data. My Mapnik plugin shows little icons on the map while driving around in a car for each found WLAN spot.

A video says more than thousend words. So view it here:

This is again a little step on my route towards an OpenSource car infotainment system.





EdjePlayer 0.1

25 01 2009

While working with Edje I found the need to have a little application that is able to load a specific group from a edj file. For that reason I wrote EdjePlayer. It’s a simple command line application this is also perfect to run from within a graphical file manager.

Usage: edje_player [OPTION...]
  -g, --group=STRING      The Edje group to display (default: 'main').
  -e, --engine=STRING     The Evas engine type (use environment variable
                          $ECORE_EVAS_ENGINE if not set).
  -b, --borderless        Display window without border.
  -s, --sticky            Display window sticky.
  -p, --shaped            Display window shaped.
  -a, --alpha             Display window with alpha channel (needs composite
                          support!).
  -t, --title=STRING      Define the window title string.
  -l, --list-engines      List all available engines.
  -r, --list-groups       List all available groups in the Edje file.
  -v, --version           show version

Help options:
  -?, --help              Show this help message
  --usage                 Display brief usage message

If you name a group in your edj file “main” then no other command line switches are needed.

It’s possible to set some values in the Edje file data block to control the behaviour of EdjePlayer. These values are supported until now:

alpha: bool
borderless: bool
shaped: bool
sticky: bool
title: string

bool: “TRUE”, “true”, “FALSE”, “false”, “0”, “1”

You’ll find some usefull examples here.

I’ve the vision to move EdjePlayer to something like a FlashPlayer. It seems  Edgar has a nice API for accessing the outer world. In the next version I’ll see if a shared work is possible.

EdjePlayer is available from E SVN.

  svn co http://svn.enlightenment.org/svn/e/trunk/PROTO/edje_player




dbus-c++ and Ecore integration

2 08 2008

I think Dbus is a great way to communicate between desktop applications. Currently I need it in my OISP (Open Infotainment Service Provider) prototype. This needs a Dbus binding that integrates with Ecore. There’s the e_dbus in the Enlightenment CVS, but it doesn’t fit into my C++ design with eflpp.

Because of that reason I started to enhance the existing, dbus-c++ library with a Ecore integration. I would like to give back my modifications into the GIT repo on freedesktop.org, but the maintainer didn’t apply my patches until now. I think it’s because he’s busy with other activities.

So I started a new GIT repo on gitorious.org.

Don’t forget to add –enable-ecore as configure parameter to enable the Ecore integration. There’s a new ecore example application beside the source.

I would be happy to get some feedback or help with dbus-c++.





First release libooc-0.0.1

18 07 2008

This is the first public release of libooc. So far it’s only a experiment and not used in any practical application. In reallity it’s even not yet a library. It’s simply a test application which could later be changed to a library.

The idea of libooc is taken from a book that I bought some years ago:

Objektorientierte Programmierung mit ANSI C
Axel-Tobias Schreiner
ISBN 3-446-17426-5
Carl Hanser Verlag

This shows how to implement a object oriented framework in ANSI C. I liked to idea and now had some time to create some code. So far only parts of the String class is implemented. The idea is to reimplement the C++ STL in ANSI C.

Read the rest of this entry »








Follow

Get every new post delivered to your Inbox.