pushing notifications in home automation

I was asked recently how I did enable my home automation to send push notifications to members of the household.

The service I am using on which all of our notification needs are served by is PushOver.

Pushover gives you a simple API and a device management and allows you to trigger notifications with icons and text to be sent to either all or specific devices. It allows to specify a message priority so that more or most important push notifications even are being pushed to the front when your phone is set on do-not-disturb.

The device management and API, as said, is pretty simple and straight forward.

apparently we’re sending a lot of notifications to these devices…

As for the actual integration I am using the NodeRed integration of Pushover. You can find it here: node-red-contrib-pushover.

With the newest client for iOS it even got integration for Apple Watch. So you not only are limited to text and images. You can also send our a state that updates automatically on your watch face.

As Pushover seems consistent in service and bringing updates I don’t miss anything – yet I do not have extensively tested it on Android.

How to weigh your cat! – the IoT version

This is Leela. She is a 7 year old lilac white British short hair cat that lives with us. Leela had a sister who used to live with us as well but she developed a heart condition and passed away last year. Witnessing how quickly such conditions develop and evaluate we thought that we can do something to monitor Leelas health a bit to just have some sort of pre-alert if something is changing.

Kid in a Candystore

As this Internet of Things is becoming a real thing these days I found myself in a candy store when I’ve encountered that there are a couple of really really cheap options to get a small PCB with input/output connectors into my house WiFi network.

One of the main actors of this story is the so called ESP8266. A very small and affordable system-on-a-chip that allows you to run small code portions and connect itself to a wireless network. Even better it comes with several inputs that can be used to do all sorts of wonderful things.

And so it happened that we needed to know the weight of our cat. She seemed to get a bit chubby over time and having a point of reference weight would help to get her back in shape. If you every tried to weigh a cat you know that it’s much easier said than done.

The alternative was quickly brought up: Build a WiFi-connected scale to weigh her litter box every time she is using it. And since I’ve recently bought an evaluation ESP8266 I just had to figure out how to build a scale. Looking around the house I’ve found a broken human scale (electronics fried). Maybe it could be salvaged as a part donor?

A day later I’ve done all the reading on that there is a thing called “load-cell”. Those load cells can be bought in different shapes and sizes and – when connected to a small ADC they deliver – well – a weight value.

I cracked the human scale open and tried to see what was broken. It luckily turned out to have completely fried electronics but the load-cells where good to go.

Look at this load cell:


That brought down the part list of this project to:

  • an ESP8266 – an Adafruit Huzzah in my case
  • a HX711 ADC board to amplify and prepare the signal from the load-cells
  • a human scale with just enough space in the original case to fit the new electronics into and connect everything.

The HX711 board was the only thing I had to order hardware wise – delivered the next day and it was a matter of soldering things together and throwing in a small Arduino IDE sketch.

My soldering and wiring skills are really sub-par. But it worked from the get-go. I was able to set-up a small Arduino sketch and get measurements from the load-cells that seemed reasonable.

Now the hardware was all done – almost too easy. The software would be the important part now. In order to create something flexible I needed to make an important decision: How would the scale tell the world about it’s findings?


Two basic options: PULL or PUSH?

Pull would mean that the ESP8266 would offer a webservice or at least web-server that exposes the measurements in one way or the other. It would mean that a client needs to poll for a new number in regular intervals.

Push would mean that the ESP8266 would connect to a server somewhere and whenever there’s a meaningful measurement done it would send that out to the server. With this option there would be another decision of which technology to use to push the data out.

Now a bit of history: At that time I was just about to re-implement the whole house home automation system I was using for the last 6 years with some more modern/interoperable technologies. For that project I’ve made the decision to have all events (actors and sensors) as well as some additional information being channeled into MQTT topics.

Let’s refer to Wikipedia on this:

“MQTT1 (formerly MQ Telemetry Transport) is an ISO standard (ISO/IEC PRF 20922) publish-subscribe-based “lightweight” messaging protocol for use on top of the TCP/IP protocol. It is designed for connections with remote locations where a “small code footprint” is required or the network bandwidth is limited. The publish-subscribe messaging pattern requires a message broker. Thebroker is responsible for distributing messages to interested clients based on the topic of a message. Andy Stanford-Clark and Arlen Nipper of Cirrus Link Solutions authored the first version of the protocol in 1999.”

Something build for oil-pipelines can’t be wrong for your house – can it?

So MQTT uses the notation of a “topic” to sub-address different entities within it’s network. Think of a topic as just a simple address like “house/litterbox/weight”. And with that topic MQTT allows you to set a value as well.

The alternative to MQTT would have been things like WebSockets to push events out to clients. The decision for the home-automation was done towards MQTT and so far it seems to have been the right call. More and more products and projects available are also focussing on using MQTT as their main message transport.

For the home automation I had already set-up a demo MQTT broker in the house – and so naturally the first call for the litterbox project was to utilize that.

The folks of Adafruit provide the MQTT library with their hardware and within minutes the scale started to send it’s measurements into the “house/litterbox/weight” topic of the house MQTT broker.

Some tweaking and hacking later the litterbox was put together and the actual litterbox set on-top.

Since Adafruit offers platform to also send MQTT messages towards and create neat little dashboards I have set-up a little demo dashboard that shows a selection of data being pushed from the house MQTT broker to the Adafruit.io MQTT broker.

These are the raw values which are sent into the weight topic:

You can access it here: https://io.adafruit.com/bietiekay/stappenbach

So the implementation done and used now is very simple. On start-up the ESP8622 initialises and resets the weight to 0. It’ll then do frequent weight measurements at the rate it’s configured in the source code. Those weight measurements are being monitored for certain criteria: If there’s a sudden increase it is assumed that “the cat entered the litterbox”. The weight is then monitored and averaged over time. When there’s a sudden drop of weight below a threshold that last “high” measurement is taken as the actual cat weight and sent out to a /weight topic on MQTT. The regular measurements are sent separately to also a configurable MQTT topic.

You can grab the very ugly source code of the Arduino sketch here: litterbox_sourcecode

And off course with a bit of logic this would be the calculated weight topic:

Of course it is not enough to just send data into MQTT topics and be done with it. Of course you want things like logging and data storage. Eventually we also wanted to get some sort of notification when states change or a measurement was taken.

MQTT, the cloud and self-hosted

Since MQTT is enabling a lot of scenarios to implement such actions I am going to touch just the two we are using for our house.

  1. We wanted to get a push notification to our phones whenever a weight measurement was taken – essentially whenever the cat has done something in the litterbox. The easiest solution: Set-Up a recipe on If This Than That (IFTTT) and use PushOver to send out push notifications to whatever device we want.
  2. To log and monitor in some sort of a dashboard the easiest solution seemed to be Adafruits offer. Of course hosted inside our house a combination of InfluxDB to store, Telegraf to gather and insert into InfluxDB and Chronograf to render nice graphs was the best choice.

Since most of the above can be done in the cloud (as of: outside the house with MQTT being the channel out) or inside the house with everything self-hosted. Some additional articles will cover these topics on this blog later.

There’s lots of opportunity to add more logic but as far as our experiments and requirements go we are happy with the results so far – we now regularly get a weight and the added information of how often the cat is using her litterbox. Especially for some medical conditions this is quite interesting and important information to have.

how a code repository can be visualized

Most development projects are relying on a source code repository these days to have control over the constant changes by many team members. The source code repository is therefore the complete history of a software project.

With the great tool called “gource” you can visualize it! This for example is the project a team from Rakuten Germany (where I work) worked on for the last couple of months:


Source 1: Visualize your source-control
Source 2: Gource

ELV MAX! Cube progress

I’ve just pushed a commit to the repository which finalizes my current effort in getting data out of the ELV MAX! Cube. With this sourcecode you should be able to get the following information out of your ELV MAX! Cube:

  • a list of all configured rooms
  • a list of all devices in those rooms
  • Thermostat and ShutterContacts have all their flags with them (like Battery Status, Open/Closes, Mode (auto, manual,…))

That brings me one step further to the integration of the ELV MAX! Cube into h.a.c.s. – next weekend probably :-)

p.s.: I’ve already ordered more thermostat and shuttercontact sensors.

Source 1: https://github.com/bietiekay/hacs

Sushi die erste …

Wenn wir in Bamberg sind ist es schon zur Gewohnheit geworden das wir Sushi essen gehn. Da man hier in Ilmenau aber kein essbares/bezahlbares Sushi bekommt haben wir uns heute unser eigenes Sushi gemacht.

MIt Erfolg würde ich sagen:


Die Zutaten: Nori Blätter, Gurke (Avocados gabs leider nicht), Reis, Philadelphia, Thunfisch, Surimi und natürlich Sojasoße und Wasabi.

Der erste Versuch:

Sieht doch gut aus …

ganz viel Sushi … mhhhh

Source: blueturtles

glowing … ehm … fluorescent fish

Okay now it’s getting strange.

Where do GloFish® fluorescent zebra fish come from?
GloFish® fluorescent zebra fish were originally bred to help detect environmental pollutants. By adding a natural fluorescence gene to the fish, scientists hope to one day quickly and easily determine when our waterways are contaminated. The first step in developing these pollution detecting fish was to create fish that would be fluorescent all the time. It was only recently that scientists realized the public’s interest in sharing the benefits of this research. We call this the GloFish® fluorescent fish.”

It looks like this:

Thankfully they don’t actually glow in the dark. But how sad is this: Just because we can do something does that mean we should? Ethical discussions aside – where do you think that comes from? You’re right. The same country that proudly writes “artificially flavoured” onto the soda cans…

Source: http://www.glofish.com/

want to do next-gen .net coding?

Go and grab the bits of the brand new March CTP of Orcas (which is the codename for the next iteration of Visual Studio).

“Visual Studio code name “Orcas” delivers on Microsoft’s vision of smart client applications by enabling developers to rapidly create connected applications that deliver the highest quality rich user experiences. This new version enables any size organization to rapidly create more secure, manageable, and more reliable applications that take advantage of Windows Vista and the 2007 Office System. By building these new types of applications, organizations will find it easier than ever before to capture and analyze information so that they can make effective business decisions.

This download is the March 2007 Community Technology Preview of Microsoft Visual Studio Code-Named “Orcas”. This CTP is available in English only.”

It’s available in 2 formats and 2 flavours:

Visual Studio Team System

Visual Studio Team Foundation Server

I personally prefer the Virtual PC Image until the product gets do something like beta stage…but it’s your choice.

YAPS progress

We’re making quite some progress on YAPS these days. And since the recording and live-streaming part is doing great so far we decided to go for some new features. We were not that creative in the last months when it comes to the settings implementation – and the fact that it’s not that useful in the moment for myself (and the people that are using it) we did not develop in that direction since the last update on YAPS. I will offer support for everyone who would like to try out YAPS. But back to business: What new features are there?

  1. we added Authentification to the HTTP server. It’s some simple stuff just based on the accessing IP adress, but you can specify certain capabilities for each accessing IP like “CanCreateRecording” or “CanAccessLiveStream”. The data is stored in a data structure and can be saved to disk in the future but at the moment it’s all source-hard-coded.
  2. XBOX Media Center (XBMC) support was added in the last builds. And that means: support for Live-TV streaming and support for watching the recordings. Yes, correct: Live-TV and recordings on your TV via an XBOX.
    To stop teasing and start showing it:

As you can see… you got some kind of OSD (which you also can turn-off) and a neat GUI. I can use the XBOX remote to change channel.

It’s looking great, isn’t it? And of course there are the recordings: All lined up and ready to be viewed.


So that are some nice little features. Since I am currently using one 500 Mhz P3 machine to serve 4 TVs it shows that it also scales quite well. (One recording + one live-tv takes about 2% CPU time). I can’t wait to here your feedback!!1!

Oh yeah, statistics are great. And YAPS now is a bit over 8000 lines of code and still growing. Of course developers are needed – if you want to take part in the YAPS development contact us…)

here is the changelog:


  • fixed a bug in the http servers file accessing module – a CurrentlyRecording could only be watched to the point it reached while the watching started


  • added CurrentlyRecording Playlists to the XBMCSyncProcessor (added XBMCPlaylistFilesHelper class for that matter)
  • changed http server so that it now displays the accessing IP
  • added disk based logging (ConsoleOutputLogger.WriteLogfile)
  • added checking for .log file extension in http server to prohibit access
  • changed started to optimize settings pages
  • fixed a bug in the logfile writer that was triggered when multithreaded logging was done


  • added TimeShiftProcessor which implements a circular buffer in memory (working on a buffer which is stored on disk)
  • fixed a bug where you could not watch a recording while it has been recorded; you can now watch it even if it was not recorded completely…when you fastforward through the movie, be careful: it’ll say EOF if you reach the end
    of what has been written (thanks to Matthias Raacke)


  • fixed XBMCSyncProcessor bug that caused constant checks on currently running recordings
  • added AuthentificationEntry – capability based permission settings
  • added capability based persmission settings – canAccessLiveStream, canAccessRecordings, canAccessThisServer, canCreateRecordings, canDeleteRecordings, isAdministrator
  • fixed minor bug in LiveStream permission testing


  • added XBMCSyncProcessor to sync the playlist files on the harddrive to the YAPS recordings – means: delete the playlist file and the recording is deleted as well
  • added RecordingsManager for playlist filename creation and correct recordings deletes
  • changed filename – added some more whitespaces


  • fixed a bug in the XBMC Playlist creation process (if a recording name was used more than once only the last one got a playlist file)
  • corrected some minor bugs in the REMOVERECORDINGFILE http server command
  • some cosmetic changes to the playlist filenames


  • added XBMC compatible .strm playlist file creation and removal (in ./Playlists directory)


  • increased the ThreadedCacheWriter cache size by the factor 5 – in the past on very fragmented harddisks
    the recordings were corrupted by lost packets
  • fixed the %played_percentage% bug, the value is now displayed correctly and in all cases


  • corrected a spelling error in the “Reset PlayCount” section of the HTTP server


  • added line template for recorded listing


  • fixed some minor design issues
  • converted recordings.html to new template
  • fixed spelling in help.html


  • added FileSize to the recording info
  • added played_percentage placeholder to the “One-Line-Rendering”-Engine


  • added “ResetRecording” functionality to the /vcr/ path: resets the current play position “rewinds the tape”


  • added the long awaited Recording/Recorded Listing Placeholders
    %render_recorded_table(templatefilename)% and %render_recording_table(templatefilename)%
  • added according placeholders for the Listing Templates: %playcount%, %starts_at%, %ends_at%, %runtime%, %channel%, %recording_name%, %categories%, %recording_id%, %recording_status%
  • some minor changes to the index.html and recordings.html
  • added recording_line.template and recorded_line.template files


  • added recorded at column to the PlayList Manager


  • added sorting to the XML feed (newest recording is first entry in XML feed)


  • fixed some loop bugs in PlayListManager
  • added click-and-start-playing functionality to PlayListManager


  • added %render_recorded_table()%; not yet functional
  • added application “PlaylistManager”, based upon the Recordings RSS Feed a MPlayer playlist can be generated…
  • fixed a resizing bug in PlayListManager


  • added demo-settings containing donerecordings, categories and recordings…


  • changed the settings pages to use the footer and header templates, prepared for XHTML1.1


  • added skins-subfolder, containing default-subfolder with images and stylesheet for the default-design
  • changed index.html-template to use skins-folder and moved all design-related stuff into stylesheet
  • changed rewrite of index.html in XHTML 1.1 with div-based layout
  • updated the YAPS toolbar graphics in the CorelDraw! file
  • added YAPS_logo_complete.png
  • added correct mime-type handling to the HTTP Server (text/css, text/html, text/jpeg….)
  • changed the
     tag in TemplateProcessor ConsoleOutput placeholder  

  • changed console, help and addrecording templates to validate as XHTML 1.1
  • fixed some design issues with new css-styles
  • fixed a encoding bug in the http html handler which now outputs UTF8 which was UTF-16LE
  • added HTTPAuthProcessor and IPAuth frame
  • added validIPAdresses and AccessFromThisIPAllowed to the HTTP server; ATTENTION: only localhost and some of my private IPs are allowed, you can change that in the YAPS.CS (see inline comments)


  • added %include(filename)% keyword to the template parser
  • added Loop-Detection for %include(filename)% keyword

As usual you can grab the daily build here: http://www.slow-backward.de/YAPS_daily_build.zip or just build one yourself using the great MSBuild tools. I wrote about that here and you can get the subversion access here.

We appreciate every single user feedback we get. If you got an idea, if you want to have a feature in YAPS or anything else. Don't hesitate and contact us.


Nachdem im 60er Becken die Wasserwerte wieder alle ok sind haben wir einen Marmorkrebs eingesetzt.

Als wir ihn gekauft haben hatte er schon Eier…

Er ist eigentlich den ganzen Tag versteckt, gräbt aber fleißig neue Eingänge zu seiner Höhle. Bis jetz lässt er die Pflanzen und die Jungfische in Ruhe.

(noch ein aktuelles Bild vom 60er Becken)

mittlerweile mit ca. 30 Jungfischen

Kürbisfest in Altendorf

Das ist der erste Artikel von http://blueturtles.schrankmonster.de

wie jedes Jahr gabs Unmengen an Kürbissen zu kaufen

(neue Art endeckt: Kürbisschildkröte ;)

Natürlich gibts nicht nur Zierkürbisse und Halloweenkürbisse da wird von der Kürbisbratwurst bis zum Kürbiseis so ziemlich alles aus Kürbissen gemacht.

Link: http://www.altendorf-gemeinde.de/slideshow/diashow.php?id=3

Microsoft Announces Robotics Studio

Finnaly I can say it, Tandy Trower and his team have announced the Microsoft Robotic Studio [1]. Last time I have seen it in early spring, some parts of the tool have been already very impressing. Finally, I am looking forward for the final release.

Brside this the Robot magazine gives a first impression of the Robotics Studio [2] and some first screenshots of the upcomming Simulator [3]. Furthermore the Carnegie Mellon University starts a new programm [4] supported by the Robotics Group from Redmond. Meanwhile, there is also a Channe 9 video of almost one hour [5] available.

[1] http://msdn.microsoft.com/robotics/
[2] http://www.botmag.com/issue3/microsoft_technical_preview_1.shtml
[3] http://www.botmag.com/issue3/microsoft_technical_preview_2.shtml
[4] http://www.cir.ri.cmu.edu/
[5] http://channel9.msdn.com/ShowPost.aspx?PostID=206574

Past Events

All the badges, collected during the last 48 months are scanned and added to my perosonal memex [1].

  • SFB 346 [2] Presentation, University of Karlsruhe, Karlsruhe, Germany
  • A.T. Kearney Workshop, Karlsruhe, Germany
  • CSC Ploenzke Workshop, Karlsruhe, Germany
  • Informatik 2003 [3], Frankfurt am Main, Germany
  • NET.Object Days 2003 [4], Erfurt, Germany
  • TechNet Roadshow, Microsoft Office 2003 & Exchange Server 2003, Frankfurt, Germany
  • MSR Academic Conference 2003, Dresden, Germany
  • TechEd 2004, Amsterdam, Netherlands
  • STC 2004 [5], Essen-Duisburg, Germany
  • TechNet Roadshow 2004 Windows Server System, Frankfurt, Germany
  • Wissenschaftssommer 2004 [], Stutgart, Germany
  • Informatik 2004 [6], Ulm, Germany
  • Informatics Driving Innovation – Challenges in Research, Munich, Germany
  • “Less is More” – Simple Computing in an Age of Complexity [7], Cambridge, UK
  • PDC 2005, Los Angeles, Unuted States
  • EURON Roadmap Workshop 2005 [8], Karlsruhe, Germany
  • Visual Studio 2005 Launch, Birmingham, UK
  • Visual Studio 2005 Launch, London, UK
  • Visual Studio 2005 Launch, Harrogate, UK
  • Visual Studio 2005 Launch, Edinburgh, UK
  • Microsoft Research Security Workshop [9], Hamburg, Germany
  • Microsoft MVP Open Day, Cambridge, UK
  • Informatiktage 2006 [10], Bonn, Germany
  • Microsoft Research, International Symposium on Intelligent Environements [11], Cambridge, UK
  • CHI2006 [12], Montréal, Canada

[1] http://blog.aheil.de/CategoryView,category,Memex.aspx
[2] http://www.imi.uni-karlsruhe.de/367.php
[3] http://www.informatik2003.de/
[4] http://www.old.netobjectdays.org/node03/index.html
[5] http://www.event-team.com/events/stc2004/
[6] http://www.wissenschaft-im-dialog.de/wss.php4?ID=20
[7] http://research.microsoft.com/ero/iep/LessIsMore.aspx
[8] http://wwwiaim.ira.uka.de/euron/cwiki.php
[9] http://research.microsoft.com/ero/Events/Security/2006/
[10] http://www.informatiktage.de/
[11] http://research.microsoft.com/ero/iep/isie06.aspx
[12] http://www.chi2006.org

SVN Service

SVNService [1] by Magnus Norddahl works great if you want to run subversion [2] as a Win32 service. Just installing the service with svnservice.exe -install -d -r c:\repository. It seems to be confusing that the service is not started and set to manual, but the svn server is running, even after a reboot.

[1] http://dark.clansoft.dk/~mbn/svnservice/
[2] http://subversion.tigris.org/

Mac Essentials for using a Microsoft Wireless Mouse

There are some Microsoft Mac essentials [1] that must be on my Mac’s HDD. Windows Media Player and IntelliPoint at least. I have also found but not tried yet an update for Virtual PC, which maybe can solve the previous installing issue [2].

I especially recommend IntelliPoint if you use any Microsoft Mouse. I became very frustrated by my Wireless Optical Blue Mouse on the Mac. It was slow and stucking; improving the speed within the Mac’s System Preferences did not improve the handling cery well. However, the IntelliPoint software does support the devices very well, and by using the IntelliPoint pointer speed option instead of System Mouse Tracking the performance and reliability of the wireless mouse is improved dramatically.

click here to enlarge (69.19 KB)

It also has some additional information on the mouse, depending on the attached device. After replacing my Optical Wheel Mouse USB with the Wireless Optical Blue Mouse I got this additional tab showing the battery level.

click to enlarge (51.14 KB)

[1] http://www.microsoft.com/downloads/Browse.aspx?displaylang=en&categoryid=5
[2] http://blog.aheil.de/MyFirstMac.aspx

You can never have enough… Backups

Actually, you can never have enough backups, but the original reason for getting Acronis’ TrueImage was to copy an image of my 60GB laptop HDD to a new 100GB HDD. This worked surprisingly well, connecting the new disk, using an external USB case, the tool reboots the system and copies a bootable image of the disk.

Beside this, the tool can perform backups while you work on your system. Very cool and helpfully if you backup to a server, which could take some time. In addition the tool provides a very great feature, which makes accessing files within your backup very comfortable. You can just plug an backup image as a virtual disk to your system and this way you can access the complete backup and access specific files you are looking for.

click to enlarge (36 KB)

click to enlarge (56.47 KB)

click to enlarge (68.35 KB)

click to enlarge (50.77 KB)

click to enlarge (20.27 KB)

click to enlarge (77.51 KB)

Chicken Force Feedback

If you travel a lot, and if you have a chicken as pet – this solution presented at CHI could be exactly what you where looking for:

click to enlarge (33.92 KB)

  1. Put a special, fluffy jacket with built-in vibrators and wireless communication on your chicken.

    click to enlarge (68.87 KB)

  2. Touch the physical avatar of your chicken, wherever you are.

    click to enlarge (74.79 KB)

  3. And your chicken will definitely like it!

    click to enlarge (61.42 KB)

Actually they have done a “user study” with two chicken. Using a red and a blue door, one with food and water, one with food, water, and 10 minutes of the jacket, the chickens prefer the door with the additional 10 minutes Force Feedback jacket. And no, this is not a joke, it is serious research. For those not believing, a video was also shown with a real chicken remotely touched by a user…

click to enlarge (45.77 KB)

Microsoft Time Zone Utility

The Microsoft Time Zone Utility [1] is a small tool [2], available for free, which indicates the time on different places on earth by a mouse click. It also provides a convenient way to change your current time zone.

[1] http://www.microsoft.com/globaldev/outreach/dnloads/timezone.mspx
[2] http://blog.aheil.de/CategoryView,category,Tools.aspx

Why DRM sucks

Actually, I do not have any problem paying for music. Sometimes I just want to listen to a piece of music, I checkout e.g. Musicload. I copied the music files, made a backup of the licenses and reinstalled my machine. So I decided to listen to a particular song:

Because I have freshly installed my box these days, I needed to restore my licenses but I do encounter this message while trying to restoring them:

Let’s see what “Web Help” says:

This is not helpfully at all. OK, let’s check the radio button to tell this to the people over there. An additional text box appears, asking for my experience; I was spending a lot of money on music, 2 o’clock a.m., I want to listen to my music, I am so somewhat angry… But I do not give up so easily. So I tried to restore another backup. Of course I did backup by licenses on a regular basis. And all I get is this:

Also this message does not satisfy me a lot. So I decide to try it a third time:

The very interesting thing: Depending on which backup I try to restore, I get always the very same message but I do never get my licenses back. Let’s go back where I bought the music, downloading the license again, because it looks like this is my very last chance:

But the song is not available anymore… they do only keep it for six months.. That sucks. Only the last three songs are left. And of course they write I should make backups of my licenses… Remark to myself: Do not purchase any music anymore.


Actually the DRM policy allows you to restore your licences on four different systems. Lucky day, because I just backed up my licences on another system and tried to restore them. This was th so-called plan. But DRM does not give up so easily and fires this message:

At least some of my licences which I bought and payed for, I own , i.e. they belong to me and I do have the right to hear the song whenever I want (at least I thought so), do work again. But some others still suck…

Apple Crumble

I just did it: I ordered one of those nifty Apple Mac minis with the new Intel inside. Actually I plan to put a Windows on it. Fortunately, when I bought the Office for Mac last year, the package also included on Windows XP license… btw: I ordered the English Mac OS X. A few weeks ago I spend some time together with some colleagues in a Apple store in Seattle. And yes, the hardware does look great.