Hello folks, I’m new here.
I recently decided to a) buy a raspberry pi, and b) investigate electronics again.
As a first stage I thought I would look into using the pimoroni 5x5 LED matrix, and as the first step of that I’m using the python library provided.
I’ve previously programmed in a variety of contexts, but not much python, and I’m painfully aware of quite how far away I am from what I want to do electronics-wise. Basically, I’m a beginner. So… you know, caveat emptor.
But anyway, it doesn’t seem like there’s much in the way of discussion or community in using this. The python tutorials mostly work fine, which is something, but there isn’t much else. I thought I’d document my observations and issues, in case anyone is interested.
I’m using a raspberry Pi 400, and Breakout Garden for Raspberry Pi 400. Apparently the pi400 has the connector pins the other way round from other models.
If you’re planning to run a pi400 from the TV, you probably want a longer HDMI cable than the 1m one supplied. My 2m one arrived today, rather belatedly, and I hope it will be a major ergonomic improvement.
The breakout garden has two I2C slots - the LED matrix only works in the right-hand one. I’d assumed it would work in either - (it’s a bus, right?) - but no, it’s two separate sets of pins. I assume you can reconfigure pins somehow, and knowing that is something I’m hoping to find out about, but that will have to wait.
The pi400’s wireless internet is very flakey, and will occasionally stop working until you restart. This is with the pi less than 1m from the router. If you’ve got the garden plugged in, it won’t ever work. Now I use a network cable. If you’re relying on the pi for internet (i.e. to look up how to do stuff with accessories, while you do it), and arn’t right next to your router, this would be a fairly significant issue.
The 5x5 LED matrix works just fine with the examples from the python library… which installed without any trouble.
I’m actually not sure I’ve had all the demos working; I did have some errors but that might have been due to a bad connection and I haven’t been back to check comprehensively.
There doesn’t seem to be much documentation on the 5x5 library. Maybe I’m missing it, in which case it’s a pointer to the documentation which is missing.
When a program finishes, it leaves the LEDs on in whatever state they were. It looks like there’s a call which is meant to switch them off, but it doesn’t. I modified one of the scripts to just blank it.
The python library sets things up for you to address the LEDs as a 2-dimensional array. My current impression is that the axes are wrong though.
Under the surface, it looks like the LEDs are addressed in a line which snakes left and right, rather than a raster-scan.
Getting real-time keyboard information in python is awkward. I’m now using the pygame library, which seems wierd, but perhaps that’s not outside the norm for python.
That’s it for now. I’m hoping to have something more substantial to share at some point.