Arcade Machine With Changing LED Marquee
by alinke in Circuits > Microcontrollers
12305 Views, 68 Favorites, 0 Comments
Arcade Machine With Changing LED Marquee
Required Parts:
You can laser cut the LED marquee mount using the files in the Instructable or for those without access to a laser cutter, it's also available fully assembled.
Kit Option / You Laser Cut and Assemble
-
Pixelcade P3 LED Marquee Kit (includes two 64x32 P3 LED Matrix Panels, PIXEL Controller Board with microSD card, 5V/10A power supply, LED Matrix Custom Power Cable, two IDC ribbon cables, mounting screws and nuts hardware, USB A-A cable, Pixelcade software, 8-bit marquee artwork)
-
Solid Black 1/8" thick acrylic - 22" x 6"
-
Smoke/Translucent 1/8" thick acrylic - 22" x 12"
-
(4) M3x16 hex mounts
-
(4) M3 x 6 screws phillips
-
(4) M3 x 6 thumb screws
-
Required Tool: Laser cutter or laser cutting service with bed size 24" x 12" minimum
OR
Fully Assembled Option
________________________________________________________________________
- Bartop Arcade Kit Deluxe from Game Room Solutions (you'll need to modify the mount if using a different cabinet) - you can order just the cabinet from Game Room Solutions and add your own components or fully assembled with arcade controls, monitor, speakers, Raspberry Pi, power supply, etc
- Windows PC (Recommended but you can also use a Raspberry Pi)
- LEDBlinky Software (Optional but recommended) - $25
Laser Cut and Assemble the LED Marquee
1. Laser cut these files. Make one cut using the solid black acrylic 1/8" thick and the other cut on the smoke/translucent 1/8" thick piece of acrylic. Modify the laser files if you are using a different cabinet or refer to these generic laser cut mounts for Pixelcade
2. Feed the two tie wraps through the holes and attach screws and nuts to the solid black mount
3. On other side of the solid black mount, line up the two 64x32 LED panels and then attach them with the included M3 screws
4. Add plastic nylon screws and nuts (included with the Pixelcade kit) to the outside holes of the PIXEL mounting board
5. Add plastic nylon screws and nuts to the outside holes of the Raspberry Pi mounting board (skip if not using a Pii)
6. Mount the PIXEL board and Pi board mounts to the solid black mount and secure with nylon nuts. Important: Be sure that you've attached the LED panels before this step, otherwise you won't be able to reach some of the LED panel mounting holes.
7. Mount the PIXEL board and secure with nylon nuts
8. Mount the Pi and secure with nylon nuts (skip if not using a Pi)
9. Connect the LED panel power cable to each panel and the 5V DC jack to the PIXEL board
10. Attach the IDC ribbon cable from the PIXEL board to the first LED panel on the left. Connect the output of the first LED panel to the input of the second LED panel using an IDC ribbon cable. Use the tie wraps to tidy up the cables.
11. Glue the 3/4" acrylic piece to the bottom of the smoke/translucent acrylic front piece. Acrylic cement with an applicator works great but use E6000 or another adhesive if you don't have.
12. Attach the solid black mount (back) to the smoke/translucent front piece using the hex stands and screws.
13. Connect the 5V, 10A power supply and ensure the LED marquee is displaying a correct image.
Mount LED Marquee in Arcade Cabinet
1. On the Game Room Solutions arcade cabinet, remove the screws on the bottom of the marquee and remove the existing marquee
2. Slide in the LED marquee and secure using the bottom marquee screws on the cabinet.
Install and Configure Software for Pixelcade
Connect the Pixelcade LED Marquee to your Raspberry Pi or Windows PC using the included USB A-A cable.
A PC is recommended because the Pixelcade LED marquee will change dynamically when scrolling through games from your arcade front end (HyperSpin, GameEx, LaunchBox, Maximus Arcade, etc.) AND when a new game is launched vs. the Raspberry Pi where the LED marquee will change just when a new game is launched. Dynamic front end scrolling for the PC does require an additional software called LEDBlinky.
The Pixelcade LED Marquee software and included 8-bit artwork is free and downloadable from https://pixelcade.org/
Follow the respective instructions to setup and configure Pixelcade:
Windows PC Setup Guide with LEDBlinky for all Front Ends (Recommended)
or
Windows PC Setup Guide for HyperSpin (Marquee updates on game launch only)
or
Windows PC Setup Guide for GameEx (Marquee updates on game launch only)
or
Raspberry Pi Setup Guide (Marquee updates on game launch only)
For Pi users, you'll need to copy the artwork manually and can get from here. The artwork is automatically installed for Windows users.
LED Marquee Artwork
The Pixelcade software includes over 800 LED marquee designs painstakingly remastered in 8-bit form covering the majority of the popular emulators and games. If the selected game does not have a corresponding LED marquee design, then a generic emulator marquee (ie, atari2600, mame, nes, etc.) will be displayed or scrolling text.
When creating art for Pixelcade, there are a few nuances when working with LEDs with the main caveat being low contrast (colors with a small difference between them) look bad on the LEDs. It’s highly recommended to use a black backgrounds vs.a solid color background.
Pixelcade has a 9-bit color palette for a total of 512 colors, the same color palette as the Sega Genesis, Sega Nomad, and TurboGrafx-16 video game consoles for example. If you use colors outside of Pixelcade’s color palette, that’s perfectly fine and Pixelcade’s software will find the closest color in the palette. Most users use Adobe Photoshop to create pixel art. Here is a tutorial on how to covert a higher res image to a 128×32 PNG image for Pixelcade.
Download Photoshop and Illustrator Color Palettes (optional and not really needed)
Export your animation in animated .GIF format. Pixelcade has 128×32 or 4,096 total LEDs, each LED = 1 pixel. If your animation is a higher resolution, that’s ok too, Pixelcade will automatically re-size it. Just keep in mind a high resolution image isn’t going to look good. Use the same frame rate for each frame in your GIF, Pixelcade will not play different frames at different speeds and will rather use the frame rate of the second frame in your GIF for all frames. If creating a still image, then export in .PNG format.
You can add specific LED marquees for your favorite games by creating a 128×32 PNG or GIF. Simply name the PNG or GIF to match the rom name and place in < your pixelcade install \ emulator >. This file cross references rom names with game names. So for example, the game 1941 has four roms:
- 1941.zip
- 1941j.zip
- 1941r1.zip
- 1941u.zip
So you would create one .PNG design and make 4 copies of it with the names:
- 1941.png
- 1941j.png
- 1941r1.png
- 1941u.png
And then place them in C:\<your Pixelcade install path>\Pixelcade\mame for example. Be sure and use the .PNG or .GIF extension and not the extension of the rom. If the game selected in your front end does not have a specific PNG or GIF, then a generic PNG for the selected emulator will be displayed or scrolling text.
And if you can, please do share your pixel art creations with the community on the Pixelcade Art exchange.
Extending Functionality With Pixelcade's API
Can you code?
Take things farther with the open source and REST based Pixelcade API and create additional use cases. Use the Queue feature for example to combine and cascade multiple GIF animation, still images, and scrolling text events.
A Pixelcade Listener called pixelweb.exe (Windows) or pixelweb.jar (for Raspberry Pi and Mac) runs in the background and listens for REST URL calls. Note these are local REST calls to localhost so an Internet connection is not required. However if your host (PC or Raspberry Pi) is reachable via the Internet, then you can make these calls remote too. You can interact with the API by making REST URL calls directly or use pixelcade.exe (Windows) or pixelcade.jar (for Raspberry Pi & Mac). If integrating from a third party application, it will be significantly faster to make the REST URL calls direct from your application vs. using the command line interface. LEDBlinky for example makes REST URL calls to the Pixelcade listener to accomplish dynamic front end scrolling marquee updates.
This REST call
http://localhost:8080/text?t=Hello%20World&c=green
will scroll the text "Hello World" in green
This REST call
http://localhost:8080/animations/stream/0rain
will stream the 0rain.gif file in the <your Pixelcade install path>/animations folder indefinitely
The API also has a queue feature enabling you to queue up several events (scrolling text, GIF animations, or still images) and each event will play after the previous one has completed.
These sequence of REST calls
http://localhost:8080/text?t=Game%20Playing%20Pacm...
http://localhost:8080/arcade/stream/mame/pacman.pn... http://localhost:8080/arcade/stream/mame/pacghost...
will scroll “Game Playing Pacman” in blue one time, then displays pacman.png for 3 seconds, and then loops the pacghost.gif animation two times, and then clears the display blank.
The full Pixelcade REST API is documented here
API Source Code https://github.com/alinke/PIXEL