LEDSpicer, LED animation controller for Linux.
-
Hello community, I’d like to announce a program I wrote time ago for Linux, it allows you to set up your LED controller, it’s kinda similar on nature to the already existing RGBCommander but focusing on simplicity, low resources, speed, and cool animated effects.
I’m still working on some plugins to support more controllers and new effects.
I have it working with ES.Here is a list of some features it can do:
- Supports different devices seamlessly and as a single device, this simplifies the configuration process when the user wants to use several devices all together.
- RGB and single color elements can be used without complications.
- Elements can be grouped into the layout.
- Easily can be handled using a command line program to change the LEDs behavior using layouts, groups, or just elements.
- Multiple animations can be set to different groups.
- Layout, Groups or Elements can be changed based on triggers.
- Animations and Devices can be extended with plugins.
- Smooth transitions between layouts can be set.
- Integrated Hardware Test.
- Integrated Layout Test.
- Configuration dump for easy debug.
- The speed can be changed to increase or decrease the FPS when drawing on the layout.
- Add several different animation to the same Group to generate even more rich attraction modes.
- Extremely easy to create animations and layouts using XML.
- Several Color filters allow the combination of several animations in one, like masking, combine, etc.
- Multichannel sound output plugin with different modes can map to the sections of the layout.
- Pulse output plugin with multiple modes that allow the creation of several fading effects.
- Gradient output plugin with multiple modes to generate different gradient animation effects.
- Filler output plugin with multiple modes to generate nice filling effects.
- Random output plugin can generate nice and colorful effects.
- Serpentine output plugin, can generate different advancing effects.
- Very optimized, consumes almost no memory and CPU.
- Runs on most Linux distribution and on Raspberry or PC hardware.
- Support for MAME output plugin, will report game changes so elements can be changed based on the game, like credit buttons, player start, etc.
- Supports for interactive input from the user, allows different effects based on the user input.
- Can load layouts based on game name, emulator, game controllers, defaults, etc.
- Supports for the most common hardware on the market like ultimarc, ledwiz and others.
- And much more...
I tested the program on my RPI and works perfectly.
I hope that you find this program useful.Link to some sample videos
Link to the documentation and code
Link to the code on github -
wow this is exactly what I've been Looking for the last 8months!!
I just finished building my own arcade with Raspberry and Ultimate iO Controller and Im very happy with it.
The LEDSpicer will the the perfect solution for my RGB Leds
Running a Image from arcadepunksstill new to retropie, linux and Im having Troubles
- ran the install for all Tools needed as instructed ( sudo ap-get install built-essentials, libusb-1.0-0-dev, ..)
- used git to clone the ledspicer to home/pi/LEDSpicer
- ./autoconfig.sh seemed ok
- ./configure … is throwing me the error :
checking is pkg-config is atleast Version 0.9.0... yes
checking for LIBUSB... no
configure: error: libusb-1.0 development library not found - pkg-config --short-errors --modversion libusb-1.0 results in :
1.0.19 - cat configure.ac seems to require a newer Version 1.0.21 or higher
- I tried sudo apt-get update and sudo apt-upgrade but get a lot of Errors 403 forbidden IP
any idea what Im doing wrong? Any help is highly appriciated
-
@Gh0strider said in LEDSpicer, new LED animation controller for Linux.:
I tried sudo apt-get update and sudo apt-upgrade but get a lot of Errors 403 forbidden IP
It probably because your image is badly configured, one of the reasons we don't support 3rd party images.
-
waaaah....
I bought a Pi-hat to manage my LEDs because my old PAC-LED only worked with my windows.
I wired all LEDs, wrote my own python program to animate the LEDs.
Now I am finished my word and now I see your post?oh man.
:)
-
@Gh0strider said in LEDSpicer, new LED animation controller for Linux.:
libusb-1.0 d
mmm.. that 403 is weird, if the configuration said that you need libusb-1.0 then a
apt install libusb-1.0 should solve the issue
but if you cannot access the repo maybe there is something wrong with you apt, can you paste the contents of your /etc/apt directory? -
@Arnulf ohh, well this one support multiple boards and is c++ so will be less hungry with the resources and really fast
-
@Gh0strider What version of LIBUSB you have?
-
I've just installed ledspicer on my Retropie and have an issue while trying to run the program.
When starting ledspicerd with any option like -f -d or -l i get the error message
Error: Failed to load library /usr/lib/ledspicer/actors/AnimationType.so /usr/lib/ledspicer/actors/AnimationType.so: cannot open shared object file: No such file or directory
and there is really no such File. But I also could not find a reference to this file in your code??
-
@ScherzKeks said in LEDSpicer, new LED animation controller for Linux.:
AnimationTy
AnimationType need to be one of the follow:
Pulse Gradient Serpentine Random Filler PulseAudio
check the samples on the wiki
I will try to help you to get it working :) -
@MeduZaPaT
hmm i already thought so. So i have to set up all or just one animation before I can actually start at all?
I manually created the ledspicer.conf with the example provided in the wiki and assumed I can run a basic instance.Please modify the wiki at https://sourceforge.net/p/ledspicer/wiki/Deployment/ Section "Installing - Prepare Tools - 2." It reads:
if you want to install some sample files add --with-sampes to configure
whereas it should be:
--enable-samples
I did not catch that first hand and was wondering why there were no example files at the specific locations.
Update
did another ./configure now with the correct flag and got the example files.
I did make modifikations to match my current setup (PacLed64) with 6 RGB Buttons.
Now it gives me the following error:Connecting to 0xd209:0x1401 device: Ultimarc PacLed 64 Id: 1 Program terminated by error: Unable to connect to 0xd209:0x1401 device: Ultimarc PacLed 64 Id: 1
-
oh and forgot to mention. lsusb shows an Ultimarc device at that device address.
-
@ScherzKeks
I'd created the enable-samples flag because you only need them the first time, if you install the program a second time (like after an update), it will overwrite your current config with the samples (like when you need a reset) so this way you can turn the samples on and off :)
I think I will remove the need of a profile and animation when you just run -e, -d or -l (will make more sense right? )
Are you running it as normal user or with sudo (not recommended but works)?
If you are running as a normal user, check for the USB rules file I added with the samples.
Your user need to have rights to write on the USB device (send data)BTW, I working on a new animation, will simulate a cristmast tree lights
-
@MeduZaPaT said in LEDSpicer, new LED animation controller for Linux.:
I think I will remove the need of a profile and animation when you just run -e, -d or -l (will make more sense right? )
yes that was my expectation first hand :)
Are you running it as normal user or with sudo (not recommended but works)?
I tried both, however usually I'm working as root when deploying new things
If you are running as a normal user, check for the USB rules file I added with the samples.
did just test that again but no luck
-
@ScherzKeks said in LEDSpicer, new LED animation controller for Linux.:
@MeduZaPaT said in LEDSpicer, new LED animation controller for Linux.:
I think I will remove the need of a profile and animation when you just run -e, -d or -l (will make more sense right? )
yes that was my expectation first hand :)
Are you running it as normal user or with sudo (not recommended but works)?
I tried both, however usually I'm working as root when deploying new things
If you are running as a normal user, check for the USB rules file I added with the samples.
did just test that again but no luck
can you send me you ledspicer.conf file and the lsusb output for the pacled64 plz?
-
@MeduZaPaT
sure, whats the best way to get it to you? can't seem to find a PN function on this board -
@ScherzKeks said in LEDSpicer, new LED animation controller for Linux.:
@MeduZaPaT
sure, whats the best way to get it to you? can't seem to find a PN function on this boardI think the best way is to use the ledspicer forum to avoid pollution here.
-
@ScherzKeks said in LEDSpicer, new LED animation controller for Linux.:
@MeduZaPaT
sure, whats the best way to get it to you? can't seem to find a PN function on this boardafter checking your email, I found that your board is set to ID 2 so to solve this issue change the ID to 2 on the device section like this: boardId="2"
-
@MeduZaPaT
you are da man! That was indeed the problem. I changed the boards ID back to 1. No clue I had modified this before.
It is working now, thanks -
@ScherzKeks said in LEDSpicer, new LED animation controller for Linux.:
@MeduZaPaT
you are da man! That was indeed the problem. I changed the boards ID back to 1. No clue I had modified this before.
It is working now, thanksI'm glad to hear that now is working, first time someone uses an ID different than 1, was unsure of that functionality, so thanks you for the test 👍🏻
Let me know if you have more questions, I need to create some YT tutorial videos for the animations. is kind of easy to understand but lots of details and options.
specially the masking and color mixing features that is extremely useful if you know what it does 😅
PS remember to remove the enable samples config ure flag, so it does not overwrite your settings, or make backups of your config and profiles, I will share some of my so anyone can use them as reference, I got really cool effects based on games and emulators -
@MeduZaPaT
Thanks I might get back to you later ;)
I'm gonna build a full size cab (Bitcade Kit) and until that arrives in May I'm familiarizing myself with the led stuff. I got my Pi already fully set up and configured.
My major point is to have only the per rom/emulator required buttons lit. Animations are a goodie for now ;)
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.