DS18B20 Device Discovery

A little bit of work stemming from from the soil temperature monitoring project; this is an aside on DS18B20 temperature sensing device address discovery with the Arduino. Being that I am going to have a handful of sensors in the ground and therefore not easily accessible for identification I need to find a way of easily finding out all the device addresses in one fell swoop.

View comments.

more ...

Pylint and the Module hashlib has no md5 member Error

How to avoid PyLint's Module 'hashlib' has no 'md5' member error when using hashlib's md5() function in your code, and the consequences of doing so.

I do not use md5 much at all these days, as it is known to be fairly unsafe; having said that, md5 does still have its uses when it comes to comparing file likeness in non-critical applications. It just so happens that PyLint does not seem to like invoking hashlib with specific constructors and will therefore mark down code ratings as a result. See the example below:

>>> import hashlib
>>> HASH = hashlib.md5()
>>> HASH.update('Test my hash')
>>> HASH.hexdigest()
'f94b71b31c1d09d352db8b59d4f98892'

View comments.

more ...


Soil Temperature Monitoring - Part One

This project has its roots in a chance sighting of some, what I thought were, interesting looking API parameters on the Met Office weather data submission service. I've been running a small weather station for about a year with its data output being harvested by a RaspberryPi and packed off to the Met Office observation service.

Many months ago a friend and I were idly browsing to see what other interesting data people were collecting and sending there when we spotted, to our surprise, soil temperature measurements using sensors buried at 10, 30 and 100 centimetres. These depths are certainly not arbitrary; they may represent three of the many soil horizons: A, B and C (See the Wikipedia page regarding soil horizons). This sparked off a thoughts on the possibilities of home made sensing, gathering and aggregating soil temperature readings to a service on the internet.

View comments.

more ...

Cloud Detection - Part Two

This is the next installment on the cloud detection project. This time I am starting to test out hooking up an MLX90614 or two to an Arduino and try out pointing it to the sky in the aim of get some interesting results.

Just as a friendly warning: calculations done here are rough and ready - don't write to me to say that the cat died because of some experiment based on anything shown here. It's all at your own risk, however, just remember the great Mr Churchill's wise words:

The greatest lesson in life is to know that even fools are right sometimes.

With that in mind, onwards with the experiments...

View comments.

more ...

Cloud Detection - Part One

This project has its roots in a discussion I had a while back with a friend who is a keen amateur astronomer. He had been complaining to me about how he thought that there was a distinct lack of cloud free nights in our corner of Northern Lincolnshire. In fact, he suggested, the weather was so poor that it was hardly worth having a telescope at all.

Okay, so maybe that last sentence was a little exaggeration, but his argument certainly got me thinking - how many clear nights are there in the year? Being a bit of a skeptic, I am sure that the night sky is clear on many more nights than my friend suggests.

View comments.

more ...

Adding MySQL Support to the QFTest Jython Client

So, you want to be able to get QFTest to talk to your MySQL database server during test execution; just a small matter of getting the Jython client to play ball - easy when you know how.

This shows how to add MySQL support to the QFTest Jython client. It requires the installation of MySQL Connector/J on to the host system and a small amount of hacking of the QFTest code.

View comments.

more ...