I just bought some plasma buttons to upgrade my picade. I don’t have the Picade Xhat in mine. I have what I assume is an older version which is a blue pcb. It doesn’t have the hack header on it.
Does anyone know if I can install the plasma buttons directly to the GPIO pins on the Raspberry Pi or am I going to need to buy an Xhat?
As far as I can see the Plasma LEDs are standard APA102s, which work over the SPI bus. One of the Plasma buttons product pages says
As well as using Plasma buttons with Picade and Picade X HAT, you can connect them straight to GPIO on your Pi, or other microcontroller. This makes them ideal for DIY arcade builds and even building things like your own DIY midi controller
So that seems about right. I’d take a wild guess that the Plasma CLK pin should go to BCM11/SCLK and DAT to BCM10/MOSI, but that’s just a guess.
You’ll see the pins marked on the Plasma PCB, 5V, GND, CLK, and DATA. Following the wires from the Plasma PCB connector to the other end with the male pins on, connect the 5V and GND pins to the 5V and GND (it doesn’t matter which) terminals on the EXPAND side of the Hack Header on Picade X HAT. Connect the CLK wire to the terminal marked BTN8 on the Hack Header, and the DATA wire to the terminal marked BTN7 on the Hack header.
Pinout.xyz shows that BTN8 is connected to BCM14 and BTN7 to BCM15, which is the UART bus. Not sure how that works, but that’s apparently how the Pimoroni software has it set up.
Have a look see here, it may help with how it works.
You can edit /etc/systemd/system/plasma.service
To change what GPIO pins it uses. I changed the -o GPIO:14:15 to -o GPIO:23:24
and plasma ran on my Blinkt.
Good stuff. I had some fun with it, documentation could be a bit better IMHO. But a lot of this stuff is trial and error, especially if your setup is a bit different from the example.
Forgot to mention, you may want to edit /usr/bin/plasma
Mine had a LIGHTS = 10 line I changed it to LIGHTS = 2 for my Blinkt
On the Picade each button is 4 LED’s. My Blinkt only has 8 LED’s which is the equivalent or 2 buttons. Something like that. If I change it to 1 only 4 LED’s light up.
Anyway, if you have the 6 button plasma kit you may want to edit that file so it says Lights = 6.
It will only factor into things if you do up your own custom colors for each button. Even then, it wouldn’t be a big deal if it thought you had 10 LED’s. I can see why its set to 10 by default. If it was set to 6 and you hooked up the 10 LED set, you’d be wondering why 4 didn’t work. My Blinkt worked just fine with the default 10. Changing it to 2 just altered the default pattern a bit.