Doorbell software

Today I continued working on the Doorbell controller hardware & software. First I had to solder a Utility Plug, but I did it somewhat different than usual, I guess:

Utility Plug

(sorry JC, I seem to have some sort of “destructive” way of using your creations 😉

The way I’m going to use this Utility Plug is not standard; the only reason I want to use this Utility Plug is to have a good-fitting RJ12 plug sticking out of the enclosure in a way that it keeps the whole construction as strong as possible. I could just as easily have glued a RJ12 Plug into the enclosure, but with the headers plugged into the carrier board I think I have a stronger construction than without the use of this Plug.

Since I will need to use more than 1 JeeNode Port (a button and 2 LEDs), I made sure that the Utility Plug headers were isolated from the Plug but were still usable construction-wise, so I cut all connections between the headers and the PCB, as can be seen in the picture above. Instead of using the headers, I soldered an Extension cable to the Utility Plug; this way I can do whatever I want with those 6 wires! After checking the header isolation with a multimeter and connecting the Extension cable wires to the JeeNode ports, I was ready to start writing some code. But first, let’s specify how this Ethernet enabled doorbell should behave. It should:

  • Periodically query my system and ask whether it’s dark outside or not and turn on the “night LED” inside the doorbell based on that. If the query fails, it should always turn on the night LED;
  • Switch on the blue “signalling LED” when the button is pressed; if the white night LED is on at that moment, it should switch that one off;
  • Switch off the blue “signalling LED” when the button is released; if it’s dark outside, it should switch the white night LED on;
  • Periodically send a heartbeat to my system;
  • Only send a “Doorbell pressed” message to my system once in a specific time-frame (1 second or so, to eliminate jitter).

I’m almost there! Most of these items are already working, but there are still some small issues to be resolved.  As always, the details take most of the time..

Tagged , . Bookmark the permalink.

2 Responses to Doorbell software

  1. manu says:


    I just found your blog looking for intormation about domotica. I’m planning to build my own house (in spain) and I really would like to implement some domotica systems (at least lights and blinds).
    I’m working in IT so I’ve got and I’ve got some background in electronics.
    Can I ask you to point me to some basic documents from where I can start to look at the equipment I’m going to need?

    • Hi Manu,
      I’m sorry, but nothing is basic in Domotica… so those documents you’re looking for; well, I don’t have them and I don’t think anyone has them. Once you get really started and want to get a lot of things in your house integrated, you’ll find out that every manufacturer has his own protocol. That’s still the big problem in Domotica these days. The best advice I can give you is: try to find a Domotica related forum and start reading (a lot). Another tip: take small steps, especially in the beginning. This gives you the time to learn what can and cannot be done and what suits you best: do you want to DIY or not, or a mix of those 2? That decision is all yours…

Leave a Reply

Your email address will not be published. Required fields are marked *