Here are my Arduino Sketches.
They are included in ZIP files. Click on any of them to
download and unzip.
web page and file server. It serves pages and files from
an SD card on the Wiznet shield. This code is limited to FAT16
or FAT32 and 8.3 filenames. I hope to update it to LFN (Long
FileNames) soon. Currently running on a W5100. It gets
about 56KB throughput. That's not great. Remember
modems. That's the speed of the fastest modem in the old
days. Hoping for more speed and upgrading soon to W5500.
Will update after that test has been done and throughput has been
timed. COME ON POSTMAN!!!
2. Fanciful clock
which displays on any size NeoPixel ring. Best is 60 WS2812s
in a ring. On the hour, it does a little light show.
There are currently 6 different light shows.
Note about displays. For the
easiest interfacing of my code to matrix displays, look for FC-16
modules on eBay. They are all over and cost $10 or less per
set of 4 in one package. You can chain two of them together by
soldering 5 connections from the output of one to the input of
another. See pictures, below, of 8 in a row. That seems
to be all the firmware in the MAX7219 allows for. More on that
if I find they can be longer. With 8, you can still power it
from the Arduino board but best to shut down the intensity to about
2 to keep the current under control. It is still quite bright
at intensity 2.
3. Display time
and date on a 4 x 8 x 8 single-color LED matrix. There is a
library which replaces and is compatible the LedControlMS
library. This library adds a fuller set of characters
including upper and lower case and most (or all) of the standard
ASCII special characters. I want to add some special graphics
characters, soon. The printable characters are called by
putting their ASCII value either graphically or by number in a call
to display it.
There are two demo programs. Both are for a group of 4 of the
8x8 LED matrices.
One shows alternating time and date. 3 seconds for time, 2
seconds for date. Look on the web for directions for
connection of a clock (several variations depending on model) and
the display. The one I got uses 5 wires. 2 for power and
3 for data control. See below for where I got another group of
4 and chained them together. There are examples for date and
time on a group of 8 and very fast scrolling.
The other program scrolls through the upper and lower case alphabet,
numbers and special characters.
4. LOTS of fancy functions and expanded font with the LedControlMM8 version 1.0
library. You will find many features that you will like and
can use easily. It is very fast on AVR processors (Uno, Mega,
Nano, Micro). Be sure to use an external power supply on
anything smaller than an Uno or you will fry the regulator. On
Intensity=2 (still very bright) with all LEDs lit, it draws about
330ma. This is fine for a Uno or Mega but too much for the
smaller units. Use an external supply and a smoothing
capacitor near the power connection for the display to smooth out
the jumps. This library currently uses software SPI (bit
banging) and is very fast. It could be a little faster if it
were constrained to PORTB or PORTD but currently supports both so
has to decide where to bang the bits. I expect I will try to
transfer it to hardware SPI for speed and better
compatibility. Will see what version 2.0 brings, if
Here are some displays from the All-Library Demo.
5. Huuummmm... thinking... let me know if you have any ideas
for something fun. In the works, an auto-driving car.
Waiting more research, an LCD touch screen showing GPS
information. That's way down the road, though.