Pixelcade LCD for Batocera

Pixelcade will be installed in /userdata/system/pixelcade.

Note Batocera V33 or above is required for Pixelcade to change dynamically while scrolling through games and consoles including the screen saver. If you are on a lower version, then Pixelcade will update only when a game is launched. 

RetroAchievements integration is supported on Batocera V38 and above.

Note that the following hardware devices have been tested with Batocera and Pixelcade together. Other devices may work but if not, post on the Pixelcade Discord forum and we’ll look into it.

  • Raspberry Pi 4 Model B
  • ODroid N2+
  • Raspberry Pi 3 Model B
  • x86 64-bit
  • Raspberry Pi Model B+ (slow performance, not recommended)
Download Batocera here or do a Google search for Batocera images. If using a pre-made image, ensure it’s Batocera V33 or higher. 
 

From a computer on the same network (Ethernet or WiFi) as your Batocera device, SSH into your device using the username of root and the password of linux

Note if you don’t know the IP address of your Batocera device, you may also try:

ssh root@batocera.local

password: linux

And then enter one of the commands below:

Pixelcade LCD

curl -kLO -H "Cache-Control: no-cache" https://raw.githubusercontent.com/alinke/pixelcade-linux/main/installer-scripts/setup-batocera-lcd.sh && chmod +x setup-batocera-lcd.sh && ./setup-batocera-lcd.sh

Pixelcade LCD + LED (use if you have both Pixelcade LCD and Pixelcade LED running together)

curl -kLO -H "Cache-Control: no-cache" https://raw.githubusercontent.com/alinke/pixelcade-linux/main/installer-scripts/setup-batocera.sh && chmod +x setup-batocera.sh && ./setup-batocera.sh

Note in the command line -kLO is the letter O and not the number 0

Artwork and Firmware Updates

LCD Artwork and Firmware Updater

curl -kLO -H "Cache-Control: no-cache" https://raw.githubusercontent.com/alinke/pixelcade-linux-builds/main/lcdupdater/lcdupdater.sh && chmod +x lcdupdater.sh && ./lcdupdater.sh

LCD Artwork and Beta Firmware Updater

curl -kLO -H "Cache-Control: no-cache" https://raw.githubusercontent.com/alinke/pixelcade-linux-builds/main/lcdupdater/lcdupdater.sh && chmod +x lcdupdater.sh && ./lcdupdater.sh -beta

 

Note for Pixelcade LCD installations with Batocera. If Pixelcade LCD is not detected during the installation,  you’ll need to replace this line in /userdata/system/pixelcade/settings.ini with your Pixelcade LCD IP address.

LCDMarqueeHostName=pixelcadedx-xxxxxxxx.local

Note that xxxxxxxx will be a unique number to your installation. Replace this line with:

LCDMarqueeHostName=<Your Pixelcade LCD IP Address>

And then be sure to reserve this IP address from your router’s admin screen so it doesn’t change.

Installing Pixelcade on Batocera

Customizing

You can customize the Pixelcade behavior by modifying the scripts located in 

/userdata/system/configs/emulationstation/scripts

Here are the scripts for reference which you can customize

https://github.com/alinke/pixelcade-linux/tree/main/batocera/scripts

ScriptDescription
System Selected

Launches each time a system/console/collection is selected. This script make this API call to display the system/console marquee:

http://127.0.0.1:8080/console/stream/[console-name]

Game Selected

Launches each time a game is selected like for example while scrolling through games. This script makes this API call to display the game marquee:

http://localhost:8080/arcade/stream/[console name]/[rom name]

Game Start

Launches each time a game is launched. This script will check if the game has high scores and display high scores in cycle mode if yes. Cycle mode means cycling between the game marquee and the high score scrolling. If the game does not have or does not support high scores, then the text “Now Playing will scroll and then the game marquee will be displayed. 

You can customize these settings in this script:

DISPLAYHIGHSCORES=yes

If set to no, high scores will not scroll and the “Now Playing will scroll and then the game marquee will be displayed.

NUMBERHIGHSCORES=3

The number of high scores to scroll, choose 1 for example to only show the top score.

CYCLEMODE=yes

Cycle mode continually cycles between the game marquee and scrolling high scores while a game is active. If set to no, then high scores will scroll only once on game launch and then display the game marquee.

NUMBER_MARQUEE_LOOPS=1

For cycle mode, the number of times the animated marquee will loop before scrolling the high score text, this has no effect if it’s a still image game marquee.

Front End Restart or Shutdown

 Launches when the EmulationStation front end is restarted or shutdown. This script will display the text “Bye” using this API call:

http://localhost:8080/text?t=<Your%20Scrolling%20Text%20Here>

Here are features available from the Pixelcade API which you can use in the above scripts https://pixelcade.org/api