When I recently saw on Twitter that you could buy a 32×16 LED display for only £10 I was intrigued. The display was actually contained in a £10 handbag from Smiths Toys.
After ordering the toy on the Friday night I was really surprised when it arrived on Sunday afternoon.
Tearing down the display was really easy and it seemed to come apart really easily to reveal a 75hub LED panel. There was few more boards and comments to remove (and keep for later projects).
Wiring the display to the Raspberry PI was very easy and I followed this guide.
The display runs from a 5V DC supply but can’t be powered from the 5V / ground pins on the Raspberry Pi. I used a fairly multi-voltage power supply to for the display.
Controlling the display with a Raspberry Pi and Python.
Clone this GitHub repository.
Bad interaction with Sound (taken from rpi-rgb-led-matrix)
If sound is enabled on your Pi, this will not work together with the LED matrix, as both need the same internal hardware sub-system (a first test to see if you are affected is to run the progrem with –led-no-hardware-pulse and see if things work fine then).
If you run lsmod and see the snd_bcm2835 module, this could be causing trouble. (The library actually exits if it finds this module to be loaded).
In that case, you should create a kernel module blacklist file like the following on your system and update your initramfs:
cat <blacklist snd_bcm2835
sudo update-initramfs -u
Reboot and confirm that the module is not loaded.
Have a look in rpi-rgb-led-matrix/bindings/python/
You will then need to build for python 2 or 3 (see README.md)
Before running the example python scripts you will need to make the following edit to
line 13 of rpi-rgb-led-matrix/bindings/python/samples/samplebase.py
self.parser.add_argument(“-r”, “–led-rows”, action=”store”, help=”Display rows. 16 for 16×32, 32 for 32×32. Default: 32″, default=32, type=int)
change 32 to 16 for the default size
self.parser.add_argument(“-r”, “–led-rows”, action=”store”, help=”Display rows. 16 for 16×32, 32 for 32×32. Default: 16″, default=16, type=int)