comment 0

Temperature Regulation on a Saunier Duval Gaz Boiler with Domoticz on a Raspberry Pi 3

Me and my lovely girldfriend rent a nice house near Toulouse, France, which has a Saunier Duval C25E gaz boiler, which does not have a thermostat. This makes regulating the temperature inside the house quite hard, having to turn on and off several times a day.

I have a Domoticz server running on a Raspberry Pi 3, and wanted to regulate the temperature for this winter. Follow is a description of this installation I set up the last september.

 

comment 0

Real Costs of owning a car, or is it really a good idea to buy a car?

I currently own a Toyota Prius III since 2009. I am also really interesting in knowing as much accurate as possible where are my expenses and see how I can rationalize them. Thus, I would like to know the real costs of owning my car, but including every normal expenses: buying cost, normal maintenance costs, insurance, gas, tires, etc. Fines costs and car body repairs are excluded since they are out of “normality” and can be avoided by a more careful driving.

comment 0

Personal Data Backup Multi-Tiers Backup Plan

Here is the description of the plan I intend to implement to have a proper backup system. I currently live since too many years on the edge of a disaster, ie the loss of all my data in case of a big event such as house fire, water flooding, etc. I used to backup my data a lot, but each system requires a different software and methods, I have to back up Raspberry Pis’, Windows desktop and laptops, and a Mac. So I have a lot of USB Drive with out of date backups, and they are all on-site. In case of fire, everything will be lost.

This is about to change in the few weeks with my Multi-Tiers Backup Plan.

comment 0

Readers/Writer Lock for Twisted

twisted_rwlock_400x400Some times, you can get an exception that occurs on a recurrent basis but really hard to reproduce. By the look and feel of such issues, and also after deep study of the logs, it can appear this is a very classic race condition case, where you have several threads that want to access to a data while this data is being changed by someone else.

The obvious answer to such issue is to implement a Lock, where data is locked each time anyone want to access it, preventing any other to read or write this share while it is “locked”. A more clever approach is to lock only on write: Readers/Writer Lock.

If you are using mutlithreading in Python, you have some options. But if you are using Twisted and want to lock a share that are access but several, concurrent deferreds, using this pattern, you don’t have any other option than to develop your own. I present in the rest of this post the module I have developed to bring Readers/Writer Lock to Twisted: txrwlock.

comment 0

Found video on YouTube about Guake

I just came accross a 2012 video about Guake, it is so cool to see that there are people that take time and money to present open source software. This video speaks about an old version of Guake, before I took over it, but it has been a very good surprise to find it on Youtube!