About me

thijs profile foto 150x150 About me imageI love tinkering. If not with computers, then with mechanics, electronics or just with ideas. I have a fantastic job: with a team of smart and interesting people I’m building prototypes for medical imaging products, such as interventional X-ray machines and SPECT/CT scanners, which we then test in clinical environments. But sometimes I have ideas or interests that fall outside this scope (although they often originate at work).

This is where I scratch the proverbial itch. I’m writing these blog posts as much for myself as anybody else, but I sometimes find my self writing as if I’m lecturing a room full of people. You be the judge of whether it’s any good. Meanwhile, I will get back to my tinkering…

Thijs Elenbaas
April 29th, 2012

8 Comments

  1. Hello!
    I have one question depending your DCF77 library. The code works pretty well and i get the time fast. I have just one problem: The DCF77 time isn’t the summer time, it’s the winter time. I don’t know why this happens, maybe you can give me a tip how i can solve the problem?

    Greets
    Janni

    • Hi Janni,

      There is not much you would need to do. If the code is working correctly the function time_t getTime() should return the Central European Time (CET) in the winter, and Central European Summer Time (CEST) in the summer. However, the function getUTCTime() should return Coordinated Universal Time (UTC), which doesn’t have a summer/winter time distinction. (see CET and UTC on wikipedia)

      Could it be that you are using the latter? Can you send me the sketch that are you running?

  2. Hi Thijs,

    I found you DCF77 library and examples in the Arduino playground and I like them a lot. However I found a minor issue with it. My DCF77 module has an open collector output. Hence your library will always detect a low level because it does not activate the pullups. Of course I fixed it locally like so:

    DCF77::DCF77(int DCF77Pin, int DCFinterrupt, bool OnRisingFlank)
    {
    dCF77Pin = DCF77Pin;
    dCFinterrupt = DCFinterrupt;
    pulseStart = OnRisingFlank ? HIGH : LOW;

    if (!initialized) {
    pinMode(dCF77Pin, INPUT);
    // added pullup activation to allow use of open collector modules
    digitalWrite(dCF77Pin, HIGH);
    initialize();
    }
    initialized = true;
    }

    I think this will not harm modules that actively drive their output because the pullup is somewhere between 10kOhm and 50kOhm.
    Since others might also have open collector modules it might be a good idea to add this by default. The same is of course true for your example programs.

    Do you think you could make this possible?

    Greetings,
    Udo

    • Hi Udo,

      I’m sorry to reply this late (I’ve been very busy). Good point, I had included an external pull-up resistor in the schematics, but I had not realized that I could use the internal pull-up. I will this to the next release. Thanks!

      Best wishes for 2013!
      Thijs

  3. Hello Thijs;
    Thank you for EEPROMEx.
    I downloaded it from your site but had problems with EEPROMVar and EEPROMBackup examples.

    I had to change getAdress to get Address in EEPROMVar.h, EEPROMBackup.h and EEPROMVar.pde

    Great download; I will use it often, can you update the download so other users do n ot have the same problem. I posted to Arduino forum for support,http://forum.arduino.cc/index.php?topic=200682.0

    Again thanks for your efforts to make life easier.

    Bill Lynn

Leave a Reply

Required fields are marked *.