24V Low Voltage Disconnect with SD Card Datalogger

Pictured below is a low voltage disconnect device we recently made for use with a 24V battery system. In addition to the user-programmable low voltage disconnect functionality and LCD display of our standard Programmable 12V LVD with Display, this modified 24V device also includes a full datalogger, storing measured battery voltages at regular intervals to a micro-SD card for later analysis.

24V Low Voltage Disconnect with SD Card DataloggerThis particular unit is destined to be used by a company specialising in the maintenance of the UK’s transport infrastructure; with the low voltage disconnect used to protect batteries from being overly depleted, and the datalogger used to track the rise and fall of battery voltage over time.

If you need any kind of low voltage disconnect and/or datalogging solution, please email neil@reuk.co.uk with details of your requirements.

i2c Address Problems with eBay 16×2 LCD Modules

arduino i2c 16x2 LCD display module

At REUK we use a lot of 16×2 LCD display modules of the type pictured above (and available here: 16×2 LCD Arduino Module  from just £3) for some of the products we sell in the REUK Shop and more often in our bespoke products.

These units have a standard Hitachi HD44780 compatible 16 x 2 character liquid crystal display (LCD) to which is pre-soldered a small controller board (in the pictured example from YwRobot) enabling [i2c] communication between the LCD and an Arduino or Raspberry Pi over just two wires (plus two more wires for the power inputs). In the case of the Arduino, pin A4 connects to SDA on the module and pin A5 to SCL.  Many Arduino libraries (e.g. LiquidCrystal_I2C) are available which have typically made these LCDs very simple to set up and use even for beginners.

In all of the example code for these libraries, the default address on the i2c bus for these LCDs is always given as 0x27, and so after years of using them, and it always being correct, it just became automatic to expect it to be true.

Funduino Arduino LCD display module

However recently (since April 2015) the small modules on the backs of the available displays have suddenly changed from being red (Funduino – pictured above) to being black (YwRobot) – probably because the YwRobot modules are cheaper than the Funduino units.

In general, the YwRobot modules work identically to the old Funduino units with one key difference. We have found that approximately one unit in five (including from different suppliers) is not preset with 0x27 as its address meaning that we have had to modify our long established, tried and tested Arduino code to get them to work.

In the most part we have (after some research) found that the address 0x3F works with these units, but we have also had a few units for which neither 0x27 nor 0x3F works. In those cases we have to use the i2c scanner sketch to find out what the address is for each particular display which is a pain. The main problem is that almost none of these units are supplied with any accompanying documentation, and those that do always state 0x27.

If you have had similar problems, please email neil@reuk.co.uk with details of the address you have discovered for the display(s) you purchased and the source of the display(s) so that we can build up a comprehensive reference document to help people who have purchased a display and have no idea of its address. The consistent 0x27 addressed Funduino units are getting harder to source and don’t seem to be coming out of China any more.

Heating Circuit Pump Controller

Pictured below is a controller we recently made for a wood fire cooker based heating circuit.

heating circuit pump controllerThe controller itself is physically identical to our standard 2014 Solar Water Heating Pump controller with an LCD to display temperatures and system status and a couple of ds18b20 digital temperature sensors. However, it has been completely re-programmed for an alternative use.

The customer has an Esse wood fired cooker with a 2.5kW domestic water circuit. This thermosyphon water heating circuit feeds a 140 litre thermal store in which a heat exchanger is used to heat up domestic hot water.

As there is some surplus heat over domestic hot water requirements, a pump is required to divert surplus heat to a panel radiator situated below the tank.

Two temperature sensors are to be fitted – one in the middle of the storage tank and the other on the return thermosyphon flow to the cooker.

The controller we put together for this system measures the temperature of the two sensors, and if both are found to be above user set values (for example, 80C for the tank and 45°C for the return flow), then the pump will be turned on to divert hot water to the radiator. When either of the two sensor temperature subsequently drops 2°C or more below the set values, the pump will be turned off sending hot water back into the storage tank.

If you need any type of water heating system controller, email neil@reuk.co.uk with details of your exact requirements.