Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
hardware:lcd_led_marquees [2022/02/07 09:33] – header correction atarihardware:lcd_led_marquees [2022/10/04 06:22] (current) – removal of broken scripts atari
Line 9: Line 9:
 ===== Pixelcade ===== ===== Pixelcade =====
  
-The premier digital marquee manufacturers! [[https://pixelcade.org/|Pixelcade]] has been integrated into Batocera since *v33*.+The premier digital marquee manufacturers! [[https://pixelcade.org/|Pixelcade]] has been integrated into Batocera since **v33**.
  
 {{:pixelcade_led_display.jpg?400|}} {{:pixelcade_led_display.jpg?400|}}
Line 25: Line 25:
   * Odroid N2+   * Odroid N2+
   * Theoretically, any aarch64/32 and/or x86_64 platform that supports Batocera **v33+**, but these have not been tested yet.   * Theoretically, any aarch64/32 and/or x86_64 platform that supports Batocera **v33+**, but these have not been tested yet.
 +
 +<WRAP center round important>
 +Pixelcade's software requires symlink and executable bit support in the filesystem it is installed to. This means you cannot install the software if the userdata is using FAT32, exFAT or NTFS.
 +</WRAP>
  
 Pixelcade offer their marquees in two delicious flavors. The installation instructions change depending on which you want to install for. Pixelcade offer their marquees in two delicious flavors. The installation instructions change depending on which you want to install for.
Line 34: Line 38:
 </WRAP> </WRAP>
  
-This is the lower resolution LED panel that's more suited to pixel-art display than full-color imagesIt's easy to tell this one from the LCD panel as it has a USB port on the back, while the LCD panel does not.+{{:hardware:20220218_150944_color_adjusted.jpg?400|}} {{:hardware:20220203_155232.jpg?400|}}
  
-Installation is simple. Power on the Pixelcade panelplug in its USB port into the Batocera machine[[:access_the_batocera_via_ssh|SSH into Batocera]] and run the following:+This is the lower resolution LED panel that's more suited to pixel-art display than full-color images. It's easy to tell this one from the LCD panel as it has a USB port on the back, while the LCD panel does not. This panel comes in two sizes, pictured above is the smaller size next to an Xbox One controller. 
 + 
 +Installation is simple. Power on the Pixelcade panel and plug in its USB port into the Batocera machine
 + 
 +{{:hardware:pixelcade_back_usb_port.jpg?400|}} 
 + 
 +Then [[:access_the_batocera_via_ssh|SSH into Batocera]] and run the following:
  
 <code bash> <code bash>
Line 54: Line 64:
 This is the higher resolution LCD panel that's suited to displaying full-color images. It supports Wi-Fi and sends its signals over the network instead of a USB cable. It is also possible to use an Ethernet connection in case a fully wired setup is preferred. This is the higher resolution LCD panel that's suited to displaying full-color images. It supports Wi-Fi and sends its signals over the network instead of a USB cable. It is also possible to use an Ethernet connection in case a fully wired setup is preferred.
  
-Installation uses a different command from the LED panel, so be careful. Power on the Pixelcade panel, plug in its USB port into the Batocera machine, [[:access_the_batocera_via_ssh|SSH into Batocera]] and run the following:+Installation uses a different command from the LED panel, so be careful. Power on the Pixelcade panel, FIXME (connect it to the Wi-Fi (how?)), [[:access_the_batocera_via_ssh|SSH into Batocera]] and run the following:
  
 <code bash> <code bash>
Line 69: Line 79:
  
 {{https://pixelcade.org/wp-content/uploads/2020/03/webui.jpg|}} {{https://pixelcade.org/wp-content/uploads/2020/03/webui.jpg|}}
 +
 +==== Pixelcade advanced scripting ====
 +
 +Pixelcade has [[https://pixelcade.org/api/|a sophisticated API]] that can be used to make the marquee perform certain actions. These can be programmed into [[:launch_a_script|the regular Batocera scripts]] if desired, but it might be easier to use [[:launch_a_script#emulationstation_scripting|EmulationStation's scripts]] instead. The ES scripts installed by Pixelcade's installer can be found in ''/userdata/system/configs/emulationstation/scripts''.
 +
 +For instance, here's a simplified routine that displays the game's marquee when a game is launched by Batocera (if it were installed into the ''/userdata/system/configs/emulationstation/scripts/game-start'' folder and marked as executable):
 +
 +<file bash pixelcade.sh>
 +#!/bin/bash
 +
 +# Save the arguments into variables.
 +system="${1}"
 +rom="${2}"
 +romname="${3}"
 +
 +# Convert an argument into another value.
 +if [[ "${system}" == "fbneo" ]]; then
 +        system="mame"
 +fi
 +
 +# Switch case for certain systems.
 +case ${system} in
 +  fbneo)
 +    system="mame"
 +    ;;
 +  scummvm)
 +    rom="${rom%.*}"
 +    ;;
 +esac
 +
 +# Execute this part every time this event triggers.
 +curl -G \
 +        --data-urlencode "t=${romname}" \
 +        http://127.0.0.1:8080/arcade/stream/${system}/`basename ${rom}`
 +
 +</file>
 +
 +If you wish to simply see the events that are being fired off by Pixelcade's EmulationStation scripts as you're navigating the menus, run the following in an SSH terminal:
 +
 +<code>
 +killall java
 +/userdata/system/pixelcade/jdk/bin/java -jar -Dioio.Seriaorts=ttyACM0 /userdata/system/pixelcade/pixelweb.jar -b -e
 +</code>
 +
 +Now you'll get the following debug output:
 +
 +{{:hardware:pixelcade_debug.png?600|}}
 +
 +===== Using the two HDMI outputs on a RPi4 =====
 +
 +It is possible to use the two HDMI outputs on an RPi4, with one displaying Batocera and the other displaying the dynamic marquee. [[https://forum.batocera.org/d/7129-dynamic-marquee-for-pi4-working|Link to the original forum post explaining this.]] Essentially, the Raspberry Pi draws images/videos directly to the framebuffer, which is still visible on the other display even though it's hidden by Batocera on the main display.
 +
 +<WRAP center round important>
 +This has broken on **v34** and higher. Stay on **v33** or lower if you intend to use this.
 +</WRAP>
 +
 +===== Using two computers =====
 +
 +[[https://forum.batocera.org/d/7269-dynamic-marquee-setup-for-all-platforms|Link to original forum post.]] [[https://www.youtube.com/watch?v=VLtqgMS90A0|Link to video demonstration.]]
 +
 +This can be done using Batocera installed onto a device and another computer/Raspberry Pi connected to a separate display. So far, this has been tested successfully using Batocera installed on an x86_64 computer/Raspberry Pi with another Raspberry Pi acting as the marquee.
  
 ===== Troubleshooting ===== ===== Troubleshooting =====
Line 74: Line 145:
 ==== My Pixelcade LED/LCD panel isn't working! ==== ==== My Pixelcade LED/LCD panel isn't working! ====
  
-It could be that it's simply not plugged in correctly. Ensure that the USB cable on both ends is firmly secure in their ports. On the Batocera machine itself, it might be worth checking if it's functional on a different port (such as a USB 3.0 port if you were using a 2.0 port, or vice-versa).+Pixelcade takes a few more moments after ES has started before it "kicks in". 
 + 
 +If it's still not working, it could be that it's simply not plugged in correctly. Ensure that the USB cable on both ends is firmly secure in their ports (or if using the LCD panel, that it's paired to the same Wi-Fi network as Batocera). On the Batocera machine itself, it might be worth checking if it's functional on a different port (such as a USB 3.0 port if you were using a 2.0 port, or vice-versa).
  
 If it's still not working, try out the following: If it's still not working, try out the following:
Line 86: Line 159:
 ~/jdk/bin/java -jar pixelcade.jar -m stream -c mame -g 1941 ~/jdk/bin/java -jar pixelcade.jar -m stream -c mame -g 1941
 </code> </code>
-  * If using the LED panel (not the LCD one), run ''ls /dev'' and search for ''ttyACM0''. If not present, then your machine has not detected the Pixelcade LED device.+  * If using the LED panel (not the LCD one), run ''ls /dev'' and search for ''ttyACM0'' or ''ttyACM1''. If neither are present, then your machine has not detected the Pixelcade LED device.
  
  • hardware/lcd_led_marquees.1644226419.txt.gz
  • Last modified: 10 months ago
  • by atari