Max7219 module as whirlpool timer


Well-known member
Here's a project I completed recently that has made use of several things I've learnt about as it progressed...

It's a handheld timer that counts down from 9 and displays a whirlpool animation after reaching zero. My nephew is fascinated by whirlpools and by the countdown timer on my phone so I pretend I've made this for him. I included a hidden feature whereby if the 'reset' button is pressed at power-up it cycles through the letters of my nephew's name. This video shows how it looks:

The display is one of the cheap MAX7219 & 8x8 led array modules that have been discussed on this forum. I used a sliding pot to adjust the speed of the timer, the slider makes the operation quite intuitive and it went down well.

The following were invaluable to get this project going:
  • westaust55's tutorial 'Getting Started with the MAX7219 Eight Digit 7-Segment LED Driver'
  • PhilHornby's code under 'IRIN with a Samsung remote': an earlier incarnation of this project was an attempt at 'snake' controlled by IR remote
  • Eagle advice and Picaxe templates

points learned:
  • how to peek, poke, read and write
  • use of masks, interrupts
  • just how useful a resistor/switch ladder can be for generating multiple inputs on an ADCin pin.
  • This was my first PCB, don't guess the dimensions of components when rushing along a PCB layout
  • USB power banks are awkward power sources, most auto power off unless current consumption is above a threshold (I had to crank up the display brightness to prevent this).
  • be sure on the 7219 input pins prior to committing to the pcb. luckily i could re-designate my pins in the software.


Last edited: