When we were on a 12-day vacation in November we had programmed our thermostat (this was before the tado°) to not heat up our apartment until the day before we were returning. When we got home it was 13.5℃ in our apartment.

As far as the thermostat was concerned, it had told the boiler to turn on the heat. However, the Viessmann Vitodens 100-W WB1A boiler had malfunctioned and was showing a F5 fault code. According to the manual (page 78) this means that the air pressure switch is faulty. Apart from being a very anti-climactic ending to our sunny vacation, it looked like this was going to be expensive.


Vitodens 100-W WB1A displaying fault code F5

After calling our plumber and getting voice mail I did a Google search to see if there might be anything I could do about the problem myself. I eventually found this forum post from 2010 on a hideous DiY site that looked like it might work:

dont know whether this helps anyone but i had this problem friday just gone 10-12-2010 f5 flashing red light i took the front off the boiler and to the right in the top half of the unit is the fan it sits right at the edge and works its way back to the middle of the unit this is where the flap is sticking, i got the misses hairdryer put it on the hottest setting and ran it over the fan area and all the metal bits that are attached to the fan this allows the sticky substance that keeps the flap stuck open to release itself i left the hairdryer on for about 5 mins and turned the water on halfway through to help it to start up if it doesnt start up use the rubber end of a screwdriver and gently tap the fan and one of the other units this should sort it hope this helps msg me if your sucsessful (dont touch any wires as they will shock you 😉

December 2010

I gave the hairdryer advice a try and amazingly it worked. Thank you Lewis.

Below is a photo with a green highlight of the area that I heated with the hairdryer. After applying the heat for five minutes, I reset the boiler, it made a gurgling sound, and then it started working again. More than a month has passed now and there have not been any more problems.


Heat the area highlight in green

It should be noted that this will probably come back and bite us if we go on vacation again when it is cold and turn down the heating. The next time the boiler has its scheduled maintenance we will have the malfunctioning part replaced.

Update: It’s been a year now and the boiler is still working without any problems.

Update 2014-12-30: After coming home from a seven-day trip with the heating turned down, the boiler was showing the F5 fault code again. After five minutes of heating with the hair dryer I tried a reset, but it started to show the F5 fault code again after a few minutes. I applied the hair dryer for three more minutes and then tried another reset. The heating flame icon was shown on the boiler display as it should and the boiler has been working flawlessly for three days now.
While we were away the temperatures had been around zero for a several days. We were lucky. Although the thermostat was set to turn on the heating if indoor temperatures reached 5℃ it would not have worked because of the malfunctioning boiler. The pipes could have frozen. We are going to have the malfunctioning part replaced.

Update 2019-10-05: In 2015 we replaced had our plumber replace the malfunctioning part and after that we never any problems with the boiler (we moved out in 2018). I don’t have any documentation about the part number, but maybe this technical manual will help someone: Vitodens 100-W Installation and service instructions. It looks like it could be part 058 that was the problem, but I’m not sure.

Yesterday I installed a tado° smart thermostat in our apartment. The tado replaced a Honeywell CM901 thermostat and is connected to a Viessman Vitodens 100-W WB1A boiler. This post gives an overview of the installation process and my notes on troubleshooting the tado.

The tado (December 2013) is actually three devices:

  • tado gateway/bridge – Connects to an internet router via an ethernet cable.  Communicates wirelessly (6LoWPAN, 868 MHz) with the tado box. Needs USB power.
  • tado box – Connects to the boiler and controls when the boiler starts or stops heating. Powered by USB power (or by the boiler in some cases).
  • tado temperature sensor – Measures the temperature and communicates wirelessly (6LoWPAN, 868 MHz) with the tado box. Has an internal battery that is normally charged via solar cells on the device. Can also be charged via USB power.

A USB power adapter and a very short ethernet cable are included. It should be pointed out that if you can’t get USB power from your router and you also can’t get power from your boiler, then you will need a second USB power adapter.


The installation process was fairly straight forward, though not trivial. If you want you can pay tado° to have one of their engineers do the installation. The tado doesn’t come with a printed installation manual. Instead you log on to the tado° web site and follow an installation wizard. I suggest doing this on a tablet or laptop since you will probably want to have the instructions at hand by the boiler during the installation.

Following the steps in the wizard was okay. Although there is this video on YouTube, what I missed was an overview of the entire installation process. Also, once the tado is installed and working, there doesn’t seem to be a way to access the wizard again in case you want to look something up.

The installation starts with connecting the tado gateway to the internet. This was trivial. The wizard immediately detected that the tado gateway was online.

Next was installing the tado box by connecting it to the boiler. This was by far the most nerve-racking part of the installation. In summary, you have to open your boiler, disconnect the old thermostat and connect the tado box instead. I recommend carefully studying the schematics of your old thermostat and comparing them to those of the tado box. It worked out in the end. The gateway and box found each other and the “link” LED on the gateway lit up. The wizard detected that the box was connected.

The last step was installing the tado temperature sensor. I removed the protective foil from the solar cells as instructed, but the wizard did not detect the temperature sensor. I tried reseting the sensor with a paper clip, but that did not help either. I then connected the temperature sensor to USB power to charge it (tado° recommends 24 hours). I continued trying to get it to work while it was charging. I reset it a couple of times and eventually the temperature sensor’s LED started blinking. Still no connection though according to the wizard. Maybe the temperature sensor did not have enough charge yet? After several reset attempts and some waiting the wizard detected that the temperature sensor was online. I could complete the wizard and finish the configuration. Everything was working.

My tado soon started having problems though. The tado web site and the mobile app would either not show a temperature reading or would complain that the tado box had no internet connection.

Dropped connections

Dropped connections

In our apartment the internet router (with wifi) is in a cabinet together with a cable modem and the fuse cabinet. After lots of testing I eventually replaced the provided ethernet cable for the tado gateway with a longer one and moved the tado gateway as far away as possible from the other equipment in the cabinet. Since then I haven’t had any problems. I think interference from the other equipment was causing the connection gateway-to-box to drop. I think the reason the connection box-to-temperature sensor was dropping was because the temperature sensor’s battery initially didn’t have enough charge.


First, I should point out that the tado° support team was quick to answer my questions on Twitter. I should have tried contacting them earlier to save myself some grief, but I simply assumed there wouldn’t be any customer support over the weekend. It’s nice to be pleasantly surprised!

When the tado has connection problems the Android app and web app show instructions on how to solve the problem. There is also a FAQ in the web app under the Support menu item with some useful tips. Sometimes though, I found that the instructions didn’t always fix the problem. Below are my notes on the different failure modes of the tado that I noticed and what actions seemed to help.

Disclaimer: My notes may not be correct. Use them at your own risk.

  1. Blinking LED on tado box and blinking “link” LED on tado gateway and error message in app about no connection to the internet
    1. Reset tado box using paper clip.
    2. Optionally (?) reset tado gateway using paper clip.
  2. Blinking “link” LED on tado gateway and error message in app about no connection to the internet
    1. Unplug power from tado box.
    2. Thermostat switch in tado box clicks (not always?).
    3. Plug power in again.
    4. “link” LED on tado gateway stops blinking.
    5. Web app shows yellow status for inside temperature but no temperature is displayed. I assume this means the tado gateway has a connection with the tado box, but the tado box has not received a temperature reading from the tado temperature sensor yet.
      Inside temperature not detected
    6. LED on tado box continues blinking. (What does the blinking LED mean?)
    7. Reset tado temperature sensor using paper clip.
    8. LED on tado box switches off.
    9. Web app shows inside temperature.
    10. I think it would be more convenient if the LED is on when a connection with the temperature sensor is established.
  3. tado temperature sensor has no connection
    1. Reset the temperature sensor using paper clip.
    2. The temperature sensor LED blinks 28 times. (Why 28 times?)
    3. The temperature sensor LED switches off.
    4. Web app shows inside temperature.
    5. I think it would be more convenient if the LED is on when a connection with the box is established. Or would the LED use too much power if constantly on?


Once my supposed interference problems were solved earlier today, the tado has been working perfectly. It will be very interesting to see how well the geofencing works tomorrow when we leave the apartment for work.

tado° dashboard

tado° dashboard

Update: tado° support has provided me with info about the LEDs:

  • tado box LED
    • orange – home button was pressed
    • green blinking – no connection with the tado gateway
    • off – everything is working
  • tado temperature sensor LED
    • green blinking – no connection to the box
    • off – everything is working

I think the problem with using the LED in off state to indicate that everything is working is that it could also mean that the device has no power (or be defective).


  • Mac OS X Mountain Lion
  • Arduino IDE 1.0.4 configured and working with reaDIYmate
  • Eclipse Juno for C/C++

Installation of Arduino Eclipse plugin

General installation instructions for the Arduino Eclipse plugin

Good instructions for configuring the plugin for Mac OS X: Arduino Eclipse Development Environment for Mac OS X


Problems I encountered and how I solved them:

Problem 1: pins_arduino.h cannot be found

When creating my first new Arduino project I got the error below. As suggested here, I solved the problem by copying variants/readiymate/pins_arduino.h to cores/readiymate/ and refreshing and rebuilding.

pins_arduino.h: No such file or directory     Arduino.h     /reaDIYmate_board__ATmega1280__v1_5/readiymate     line 212     C/C++ Problem


Problem 2: Arduino.h cannot be found

When building my  project Arduino.h cannot be found:

Arduino.h: No such file or directory     EclipseTest.h     /EclipseTest     line 9     C/C++ Problem

I tried solving this by editing the project settings and referencing the reaDIYmate_board_ATmega1280_v1_5 project. That did not help.

I imported the folder cores/readiymate/. It solved that compile error but now other things do not compile instead.

I eventually gave up and created a new project. It could compiled without problems! I deleted the bad project.

Problem 3: serial port already in use

When trying to upload to the board I got this error:

Serial port /dev/tty.usbserial-A90159P9 already in use. Try quiting any programs that may be using it
Unknown Application

I quit the Arduino IDE that was also running. Didn’t help.
I unplugged and plugged in the Arduino. Didn’t help.

It turned out the upload was working despite the error. I did not notice this because I had not made changes and rebuilt my project before I uploaded it.

To get of the error message each time I did an upload I checked this setting in Eclipse’s preferences (not the projects): Arduino > Arduino > Disable RXTX

Follow the instructions in the Eclipse plugin’s FAQ: Mac I get the error “serial port is in use” when uploading

I just published the first 2.0 releases (2.0.a1) of the Elk Framework and the Elk Press. The releases can be found here:

With the 2.0 release the Elk Framework’s API has changed quite a bit in some places and it is not backwards compatible with the 1.0 API. I know this is a major sin, but to be honest, the 1.0 API was lacking in a lot of places, so the API had to be changed. Hopefully the 3 users out there will forgive me 😉

Anyway, this is the first 2.0 alpha release of the Elk Framework. Not all functionality is in there yet, but my ambition is not to remove or change anything more that already is in the API; only to add.

I hope to be doing more work on the Elk Press this week.

I’ve started working on a project called BrobyGrafisk OffsetPress that is basically a graphical user interface for the Elk Press. BrobyGrafiska OffsetPress is a Swing application that runs on Windows, Mac OS X, and probably most other platforms with Java 5. Here is a screenshot:


Some technical details: The BGOP has an embedded Jetty servlet container with the Elk Press web application deployed in it. The GUI is hooked up with the Elk Press using Spring‘s dependency injection and is registered to receive events when resources, etc, in the Elk Press are updated. The application is still in an early stage, but feel free to give it a try. The Elk Press supports most of the two press-related ICSs, so it should be possible to get it going with a compliant prepress workflow system, such as ApogeeX. You can of course always use Alces for testing; there are sample files included in the BGOP download.

I’ve set up the Hudson continuous integration engine on CIP4’s server to perform nightly builds of the 2.0 branches of the Elk API and the Elk Press. The Elk API build outputs a JAR file and the Elk Press outputs the simulated press in the form of a deployable WAR file. You can monitor the builds here: http://cip4srv2.igd.fhg.de/hudson/. The build outputs can be found under each job/project’s Workspace-link.

I am currently working on implementing the Resource Query and Resource Command JMF messages so that the Elk Press can get plate status updates from prepress (see Prepress to Conventional Printing ICS). The bold can download the nightly build to try it out (Parts aren’t supported yet).

I just committed a bunch of code to the 2.0 branches of Elk API and Elk Press. The codes is not as stable as the old code in the main branch, but it should work. As I wrote earlier, the Elk API has changed – to the better I hope. Feel free to checkout the code and give it a build.

If you use Eclipse 3.3 as your IDE and install the Subeclipse plugin, then you can create a project for the Elk API and a project for the Elk Press by checking out each one from Subversion (New > Project > SVN). You should then be able to run the Elk Press project in Eclipse’s embedded Tomcat (right-click project, Run As > Run on Server. This is great for debugging (Debug As > Debug on Server).


  • Java 5.0
  • Maven 2

How to build and deploy:

  1. Check out the elk-api project from Subversion (see http://www.cip4.org/open_source/elk/source-repository.html)
  2. Build the elk-api project: mvn package
  3. Install the elk-api JAR in your local Maven repository: mvn install
  4. Check out the elk-press project from Subversion (see http://www.cip4.org/open_source/elk/press/source-repository.html)
  5. Build the elk-press project: mvn package
  6. Deploy the elk-press project using Maven’s Jetty plugin: mvn jetty:run
  7. Start Alces and connect to http://localhost:8080/elk-press/jmf
  8. Start a Status subscription: right-click Send File… button and select 04.Status-Subscriptiong.jmf
  9. Start a QueueStatus subscription: right-click Send File… button and select 05.QueueStatus-Subscription.jmf
  10. Submit the press job that comes with Alces: right-click SubmitQueueEntry… button and selected Elk_ConventionalPrinting.jdf
  11. Elk will start printing the press job and sent Status and QueueStatus signals to Alces with status updates
  12. When the job is finished its status in the Queue will change to PendingReturn. The updated JDF is currently not returned.

You can also deploy the Elk Press in Tomcat 5.5 (or any other servlet container) by copying elk-press.war to Tomcat’s webapps directory.

My blogging doesn’t seem to be very going very well… Anyway, I though I’d give it another try and post an update on what I’m doing with the Elk Project.

I’ve create a new branch for the Elk API and for the Elk Press where I’m working on a version 2.0. Version 2.0 of the Elk API is not backwards compatible with version “1.0”. If anyone has any opinions on this, please let me know.

Here are some UML diagrams of the Elk API 2.0 so far:

  • The most important classes in the Elk API
    The main classes in the Elk API
  • The event handling framework
    The Elk API’s event framework