Chef de Cambuse

...cooking, cruising and wine

Archive for September 2007

Ein sehr angenehmer Abend...

written by Frank, on Sep 30, 2007 6:50:00 PM.

Vergeßt Kerners Köche ;-) - am Samstag war ein etwas außer-der-reihiges BlogMeetSKa bei Maître de Cuisine Jan in Stuttgart.

Details zum äußerst leckeren BlogEat Menü sind - cui honorem, honorem - bei Jan zu finden, hier nur noch ergänzend ein Bild der etwas belebteren Tafel.

BlogEat 20070929

PS: Man beachte die Honigkuchenpferde - und das Wort ‘Molukkenrazzia’ war noch nicht einmal gefallen.

bridge works

written by Frank, on Sep 26, 2007 5:34:00 PM.

I’ve spend some more time on the Coherence D-Bus integration and have now reached a level where I can build a D-Bus service that resembles the structure of an UPnP device tree.

As root we have a D-Bus service org.Coherence, which can be queried for devices it knows about. The devices are sub-nodes - represented by their uuid (dashes had to be removed as D-Bus doesn’t allow them there), with their services sub-nodes of them again.

Coherence D-Bus Service
click for a larger image

UPnP <-> D-Bus pontoon (*)

written by Frank, on Sep 23, 2007 7:35:00 PM.

I just checked in a new version of Coherence with a provisional integration of the D-Bus message bus system.

D-Bus support within Coherence will be divided into two parts:

  1. accessing UPnP devices and services via D-Bus as a client
    • notification about the emergence of new devices and their disappearance
    • access to the API of the Coherence service clients, for instance the Browse method of the ContentDirectoryService
    • signaling of UPnP service StateVariable changes
  2. providing the backend functionality for an UPnP device
    There I'm think off two ways to achieve this:
    • a dedicated plugin for each backend that proxies the UPnP action to their respective backend method, like we do this already for instance in the Elisa backend, using Twisted Perspective Broker as RPC protocol.
    • a generic D-Bus hooking-in system, that can be used to initiate a UPnP device creation via DBus and to tell Coherence which DBus methods should be called on recieving an UPnP action request
The first part is working, lacking the signaling of the StateVariable changes though. That added it will be very,very easy to supply UPnP A/V MediaServer browsing capabilities to any D-Bus talking application. E.g. replacing the Rhythmbox Coherence UPnP plugins, which have to be in Python at the moment, with some native code.

The second one I'm still contemplating about on how to implement it in a plain and standard style, that allows an application to ask Coherence to create an UPnP device with its services - not only an A/V device, but others too, even non-standard ones - to publish so far locally restricted D-Bus services out onto the network.

* It is no full bridge yet - at least not in my opinion, at the moment it is more looking like something really simple timbered together. ;-)

Coherence talk accepted for Embedded Linux Conference - Europe 2007

written by Frank, on Sep 21, 2007 8:02:00 AM.

I just got informed that my proposal for a talk about Coherence at the Embedded Linux Conference - Europe 2007 was accepted!

The conference will be held in Linz/Austria during the 2nd and 3rd of November.

These are the messages you like to read when browsing your email during breakfast - even coffee tastes much better now. ;-)

How to use Coherence on a non networked computer?

written by Frank, on Sep 18, 2007 8:35:00 PM.

Say you want to work on your favorite UPnP software en route or even present it to somebody else.

But all you have is your laptop and no network connection. And the only interface that is up and has an IP address assigned is the loopback one, good ol' 127.0.0.1.

Now if you start two Coherence instances and they don't see each other, that's due to the SSDP multicast messages, which they send out to announce their presence or to search for other UPnP devices, do not reach each other.

The chances are that no IP routing is set up. That's quite reasonable on a system with only the loopback interface active, but UPnP - to be more precise SSDP - needs it.

The solution is to add either a route for the UPnP multicast address pointing to the loopback interface:

sudo route add 239.255.255.250 lo
or more lazy universally valid, and maybe helpful for some other software on your system too, just add a default route to it:
sudo route add default lo
as multicast packages - good citizens of the IP network - will travel the default route if not explicitly told elsewise.*

If you get networked again, do not forget to remove that route. Of course having that done automagically by e.g. the Gnome NetworkManager would be much nicer. If you know how, please leave a comment.


* Using a default route is acceptable in this situation, in your own LAN you better go for the UPnP multicast one, as with the default route the packages first will be send to what is mostly your internet gateway, and will be there injected again into your network.

UPnP now an official ISO standard

written by Frank, on Sep 18, 2007 3:47:00 PM.

The UPnP Implementers Corporation announced that the UPnP Device Architecture Version 1.0 and seventy-six UPnP device and service specifications have been approved as international standard.

It seems they had a lot less difficulties than some other proposal to receive the relevant amount of approval votes by the committee of the International Standards Organization.

Let's hope that this consecration provokes the creators of UPnP devices now even more to respect that they implement a standard and that they should obey to it.

restart

written by Frank, on Sep 15, 2007 11:08:00 AM.

After fighting with my crashed Typo instance for a while and playing around with some other blog engines I found out about TextPress.

TextPress is a new blogging system written in Python. I decided for myself to use something Python based, as if there are any issues I at least have a change trying to extend or to fix it myself. And running PHP on my box was out of the question anyway. ;-)

It is still a pre-release, but as it is grounded on Werkzeug, Jinja and SQLAlchemy I expect it to move on pretty fast. And there is no big framework behind it, which is advantageous.

I'll try to import my old posts now, which after COREblog, Typo and a short interlude with aether will hopefully find again a more permanent home.

London - a retrospect

written by Frank, on Sep 4, 2007 10:01:00 PM.

It was fun! Great! And something completely different, visiting a city like that with the priorities of a ten year old. ;-)

First we had Mdm. Tussauds - and yes, despite Ryanair, we made it.

We landed 15:25 in Stansted, probably at the place with the furthest walking distance to the Stansted Express station, where we watched our train leaving at 15:45. The tickets for the house of wax have been valid for 17:00, with half an hour tolerance for entry, and they close a half past six. And the next train was scheduled for 17:03. So counting started again. Three quarters until Liverpool Station, finding a place for the luggage, getting a subway ticket and a tube to Baker Street - a tight schedule.

At Mdm. Tussauds we arrived 10 minutes after five, after I've spend £ 13,- at the left-luggage office. I forgot, no lockers anymore, the luggage was even x-rayed. :-/

But we had still plenty of time. Who is Humphrey Bogart or John Wayne? "Dad, lets go to Spiderman, and look, there is Captain Jack Sparrow." As said before, different priorities. ;-)

After some fast-food in Liverpool Station and picking up our luggage again we arrived finally in our hostel, the Balham Lodge. A bit outside of the city, in the South West of London, but only a 15 minute ride and very reasonable priced. And wifi all over the building [Dad's priorities 8)].

Next morning, after a plenteous mix of English and Continental breakfast, we headed for more adventures.

The London Eye! If you are into observation wheels it is a must! And even if you are not! And it pays of to buy the tickets in advance. So we even avoided the short queues at the tickets booths. We have been extremely lucky with our tickets at all. No queues, we just walked in at every place.

After the flight with on the Millennium Wheel we took a ride with the boat down the Thames to Tower Bridge and landed at the Tower embankment. There we appraised the Crown Jewels and examined of course every cannon in the armoury in the White Tower. Next we went to the Tower Bridge and the engine rooms there. That machinery making the bride move is still a great piece of engineering art.

Knackered as we were we could only manage a walk-by visit of St. Paul's and headed back to the hostel and had a great dinner at an Indian restaurant nearby.

For Saturday I had arranged a sightseeing hop-on-hop-off bus tour that brought us around the city. This gave us enough time for Big Ben, Buckingham Palace, Picadilly Circus, Trafalgar Square, Whitehall, the Horseguards and Westminster Abbey. A police operation blocking a black mini-van the and barricading of the street by armed police men and the following personal search of the occupants and their luggage was the diversion during out our ice cream break at the upper end of St. James. Not that amusing for the people of the car who have been able to continue their journey after whatever that action was. Something similar on our way down Whitehall and the blocking of Bridge Street due to a bomb alarm had already some touch of normality.

Actually there haven't been any five minutes in the city one hasn't heard sirens or has seen police cars heading high-speed down the street. It's thought-provoking.

We ended that day, after a detour at Covent Garden, with a traditional Fish and Chips take away at Fish Central.