A scrolling message display using 3x 16×32 LED matrix modules

This is another unfinished project; I started making a scrolling message display using the LED modules I used for my dual colour Pong Clock around 3 years ago. I managed to get it working to the point where a message can be sent via the serial interface (or a serially connected bluetooth module) and have several display options where you can have big or small text, have it in red, yellow or bold orange. I don’t really have a use for it and the Pong Clock does not get much interest from friends and family as in they don’t want one making so I’m putting the whole lot on eBay over the next few weeks. I’ll keep a couple of modules to play around with or in case someone changes their mind and does want a pong clock making but for now they are done with.

As for the scrolling message display I used modified Adafruit RGB matrix libraries that supports daisy chained modules; I used three for a better and wider display. I don’t know what the maximum number of daisy chained modules you can have but I guess more than three is pushing the Arduino to the limit. The library uses around 1.6kB of SRAM so an Arduino Mega is required even though the code size will fit into the Uno. I’ll release my code for this project for anyone to take and modify themselves as they see fit. Code is being offered without any support, but if you do use the code please credit me. Thanks.

Code for this project Message_Display_16x96

YouTube video

A constant current load using mosfet and LM358

In my below post I mentioned that I am building a bench PSU however I am still waiting for the parts to arrive. I decided to make a constant current load in order to test the electronic fuse and the power supply itself. I had built one before but the mosfet kept blowing after a short time and it was difficult to set the current. I had another go and successfully made one that supported a 1 amp load at 12 volts for over an hour without going up in smoke.

I checked online to see if I had got my circuit right and I had but it was just a bad choice of mosfet. I made a video of it as I have plenty of time on my hands due to the lockdown and I’ve been quite busy finishing projects or finding things to make out of old things I had laying around. A lot went onto ebay and what didn’t sell I threw out or destroyed for a bit of fun.

When the power supply is done I’ll post an update on it. There won’t be much to say as it uses pre built power supply modules but I will be adding some of my own modifications and enhancements such as the abforementioned electronic fuse.

ATmega328 eeprom damaged by power surge?

I had a power surge the other day followed by power cuts that lasted around a second and another about 5 seconds later. Everything seemed OK in the house and even the oven clock was still working and that always reset during a brownout. However my garden watering timer was showing garbage on the LCD so I reset it. I then found that it wasn’t saving the settings for the time and duration of watering the garden. To cut a long story short it appears the eeprom had failed, it was no longer storing it’s settings. I also found a bug in the code whilst I was digging around and fixed that so I’ve updated the download on the project’s page.

I made some changes and made it so that the settings are stored on the eeprom on the ZS-042 module instead and also made another version that stores the settings in a variable in SRAM to get around the problem. I increased the value of the smoothing capacitor on the 5V rail to 1000uf from 220uf and fitted another 0.1uf bypass capacitor near the arduino nano board. Hopefully that will fix the issue. Other than that I may need to change the brownout detection from the default 2.7V to 4.3V. It appears to be working OK now and keeping my garden tubs watered.

I’ve gone over my code and it only writes to the eeprom after the time and / or duration is changed so I don’t think I’ve simply worn it out. The timer worked fine for a year and the eeprom will have been worn out within a week if it was being constantly written to. Just seems a coincidence that I noticed the fault after a power surge. Very strange…

ATTiny85 electronic fuse with optional temperature sensing

I am in the process of making a bench power supply for a relative which will use a cheap ebay switch mode DC-DC converter board that only allows you to adjust the voltage output and it does not have a current limiter on it. The module is rated at 8 amps output but the tiny heatsinks suggest that it’s probably half that and the transformer feeding it is only rated at 4 amps max.

So I decided to make an auto cutout circuit that works by monitoring the current via an ACS712-5A sensor. The ATtiny85 switches the PSU load on and off via a push button toggle. Useful as the module I’m going to use does not have remote off / on facility and it’s handy to turn the output off whilst connecting up your projects rather than having it permanently on. When the output is on the sensor is read along with an LM35 temperature sensor attached to the switching transistor’s heatsink. If either the current goes above 3 amps or the temperature goes above 60 degrees C the output is disconnected and a red LED lights. These figures are approximate as the analog reference voltage is the 5V supply so if it is not exactly 5V these cut off figures will vary slightly. However in this application accuracy isn’t required. The power button will not turn on again until either or both of the fault conditions have been removed. A green LED indicates that the output is on and all is OK. I used a dual colour LED that simply turns red or green depending on condition.

Continue reading →

Scrapping a crap UPS and trying to make a bench PSU from the transformer. (Waste of time)

My Trust UPS battery failed on me last year and I was meaning to replace it but the cost of a replacement battery is almost equal to the cost of a cheap brand new UPS from dubious brands. I’ve always used APC SMART ups’s as they are very reliable and never seem to go wrong but man they are expensive.

Notice the blu-tak over the beeper that was annoyingly loud.

APC do some cheaper models in plastic casing but they are no better than the cheap Trust / Belkin / Mustek types that often advertise with a massive VA rating but are yet much smaller than their APC equivalents. They often only have a 7 to 9Ah battery in them even in 2200VA models. I doubt they would last long at full load and I don’t just mean the battery. They only have 4 MOSFETS at the most which will likely explode the moment it switches to battery at full load.

UPS transformer made by Viking part no 080-44523-00

Anyway enough intro. I decided my UPS was just crap and not worth repairing; it was rated at 800VA and had a single 12V 7.2Ah battery in it with an advertised full load runtime of 5 mins. I pulled out the mainboard and noticed that it obviously uses the same board for different models with the configuration set by resistors. They seem to contradict themselves but from what I gather my UPS is set for 230V fixed with no AVR (buck / boost) and 600VA rating. No wonder it had a shit fit when I tried to put more than 600VA load onto it. Definitely said 800VA on the front and the box. Going by the transformer it is a offline / standby type although the board supports some kind of auto voltage regulation though it isn’t line interactive. There are two pins on the transformer connector connected to relays and other electronics but are not used. Perhaps by changing the transformer and configuration resistors you can make it a 220V model or one with AVR that switches taps on the transformer to maintain a stable output voltage without switching to battery.


Continue reading →

Animated clock using 16×32 bi colour LED matrix modules

I finally got round to finishing the improved version of my earlier pong clock which used two single colour 16×24 led modules with a built in controller. This version can display 3 colours and has several different modes to the earlier version and also it can display scrolling graphics from the popular retro game, pac-man. I’m calling this an arcade game clock as the main mode is pong and is inspired by old late 70’s and early 80’s arcade machine games. The case I originally was going to use got damaged but I’ve managed to put the prototype into an Ikea deep photo frame instead.

Now on to the electronics and in particular the LED modules I used. They are kind of standard but nothing like you would typically find on ebay however the firmware can be adapted to work with standard HUB75 1/8 scan modules. Unlike the modules used in the previous clock they do not have a built in controller and all multiplexing etc has to be done in software.

Continue reading →

Issues with anti spam system on this site

It has come to my attention that the anti spam system is blocking genuine users. I had a lot of spam recently and changed the settings so if you want to comment and get blocked please fill in the allow form and then try again once you have been unblocked. I have changed the settings on the spam detection system again so hopefully there is less chance of blocking genuine users. There is no need to register on this site for an account (although you can if you want) to be able to post a comment.

Edit: I think I found the reason why it was blocking. It was set to reject email addresses with hyphens and another setting was turned on to only allow from ISP’s rather than hosting providers.

On a second note the colour clock is ready I just need to post the article.

New LED pong clock version coming soon

Well time certainly seems to fly and it’s the end of another year. It’s been a year since I finished my LED animated Pong clock which I initially started about 3 years ago and I’ve been working on an improved version using bi colour LED matrix modules I obtained from a scrap advertising LED board. It’s a slight improvement over last year’s version but it has some issues that still need ironing out. I’ll post a further update and release the source code later when I feel it’s ready. Happy new year everyone!

12V lead acid battery tester completed

Modified tester for 12V – the load resistors and relay / power board have been moved to an old inverter case.

I mentioned before I was going to make a 12 volt lead acid battery tester at one point. I’ve repurposed the single AA tester I had made back in 2017 and converted it to test higher voltage batteries. Without repeating myself from earlier posts I have just decided to keep this short and just put the 12V tester version on the original project page rather than creating a new one. It works just the same as the AA version in that it displays total runtime and approximate Ah capacity. It is a cut down version of my 24V lithium battery tester which I made for work. The original project page is here. You will want to scroll down to the latest updates section where you will find the schematic and code.

Multiplexing seven segment displays on an Arduino

I’ve made a few projects that use 7 segment displays with methods involving both using a chain of shift registers and multiplexing using the sevenseg library. In my most recent project I’d used 4x shift registers to drive 4 displays which worked well but was a pain to connect up and needlessly complicated. I have used multiplexed methods before but for only 2 or 3 digits but in my recent project that uses 5 digits the display became unacceptably dim.

This is down to how the displays are scanned – in the one shift register per digit method the data is sent to the registers and the latch enabled. 220 ohm resistors were used giving a current for each segment of around 16mA for the LED modules I’d used. For multiplexing only one shift register is used and the digits turned on and off again in sequence but done so fast the eye does not notice. This is a simpler solution and cuts down on components but it does have some things to bear in mind.

I noticed whilst looking on the internet hobbyists are having problems with dim displays and / or blown LED modules. I also noticed a lot of example schematics with LED modules directly connected to an Arduino with no current limiting resistors whatsoever. Whilst this may work well in some cases (more on this later) it’s a bad idea.

Let me explain… Continue reading →

User registration and commenting on articles on this site

I’ve had to turn off user registration due to too many spammers registering. As the anti spam system only checks when a user actually posts a comment this leaves loads of spammers that register but are unable to post. I have to manually check and remove them. Anyone can comment without registering though so if you do want to comment on anything please do; you do not have to register to be able to contribute to discussions. This does not affect genuine users that are already registered as you can post as normal.

A high capacity lithium battery tester with printout

I mentioned a while ago I had made a version of my single AA cell tester which can test high capacity LiFePO4 batteries with a nominal voltage of 24 volts (8 cells) which I had made for work as we supply 30 and 60 amp hour batteries which need to be tested. I have finally got the hardware and software version complete enough to a point where it works satisfactorily so I’m going to mention it here.

Arduino based 24V battery tester
Completed tester showing the load bank box, controller and finally the Epson TM88 printer on the top

The basics

A simple battery tester that puts a load of approximately 5 amps or 10 amps (selectable) onto a battery with a typical capacity of 30 or 60Ah. The tester displays time lasted and an approximate total amp hour / capacity reading and prints the results onto a Epson TM88 series thermal printer. An RTC is included so testing time and date can be stamped onto the result then a receipt can be given to a customer if required etc.

Continue reading →