Raspberry Pi Off-grid Gaming & Movies

Overview

A RPI-based gizmo for our T@B 320 camper to help entertain during inclement weather.

CamperPi's functionality currently includes video gaming, movies/videos and music.

Hardware/components associated with the project were acquired to install in a 2021 T@B 320 with 12v Jensen Audio/Video system.

Background, Capabilities & ToDo's

CamperPi was originally tossed together to explore entertainment options when spending time off-the-grid where streaming apps and services are unavailable.

The initial CamperPi was a Kodi-based gizmo plugged into the camper audio/video system to serve up music and movies/videos.

The latest version uses RetroPie as a base with more focus on video gaming with a Kodi "Port" for Movies and Music.

Level of Difficulty & Prep Time

Will probably take a few sessions to get this thing setup ... lots of options!

  • 1-2 hours to Install and test

  • MUCH More time to locate and populate music, movies and games.

  • Fun project, tho!

Intermediate Techies should be able to work thru RetroPie and Kodi interfaces. Menus and controller buttons will take time to get used to.

No need for Linux knowledge but SSH and command-line access certainly does help!

Hardware

Final Config (velcro'ed to back of T@B 320 TV as needed):


Software

Started with Kodi, but had many struggles with gaming. Settled on RetroPie as base w/ Kodi Addon/Port for music & movies.

// RetroPie downloaded/flashed via Rasp Pi Imager //

Step By Step

Install RetroPie and Friends (Ports)

Singing along with RetroPie Quick Start Guide. See also How to Install Kodi on RetroPie

Initially configure RPi with a network connection and the trackpad, keyboard or gizmo you plan to use with RetroPie.

Install Steps

  1. Download and flash latest RetroPie. ~5 mins (depending on internet speed)
    Raspberry Pi Imager is simplest - RetroPie is under "Emulation and Game OS"

  2. Boot da Pi, it will expand disk and start RetroPie

  3. Initial "Welcome" is used to configure controller .... Tricky! Will probably be done multiple times!
    Note: Controller config takes some getting used to! if you screw it up rerun via Start Button->Main Menu->Configure Input
    Hints:
    - Hold any button to start the configuration OR to skip a button during the config process
    - Helpful to record/draw a keyboard layout map of config to remind of what buttons do what!
    My Config:
    - D-PAD UP/DOWN/LEFT/RIGHT == Direction Keys UP, DOWN, LEFT & RIGHT
    - START == KEY AUDIOPLAY (Center play/pause button of Left Audio button set)
    - SELECT == KEY RETURN (Also right center button between direction keys)
    - BUTTON A/EAST == KEY AUDIO NEXT (Right button on Audio button set)
    - BUTTON B/SOUTH == KEY VOLUMEDOWN (Bottom button on Audio button set)
    - BUTTON X/N
    ORTH == KEY VOLUMEUP (Top button on Audio button set)
    - B
    UTTON Y/WEST == KEY AUDIOPREV (Left button on Audio button set)
    - LEFT/RIGHT SHOULDER
    == NOT DEFINED (Skipped both for now)
    - LEFT TRIGGER == KEY LEFT CTRL
    - RIGHT TRIGGER == KEY RIGHT GUI (Windows Key on right bottom)
    - LEFT/RIGHT THUMB == NOT DEFINED (Skipped both for now)
    - LEFT ANALOG UP/DOWN/LEFT/RIGHT == NOT DEFINED (Skipped all for now)
    - RIGHT ANALOG UP/DOWN/LEFT/RIGHT == NOT DEFINED (Skipped all for now)
    - HOT KEY ENABLE == KEY ESCAPE

  4. RetroPie Config (Center/only Icon at this point, use A Button to enter configuration, use ENTER button w/in Configuration Menus.
    // I DON'T MESS WITH OTHER OPTIONS ON THIS SCREEN! //
    - AUDIO: Set to HDMI 1
    - RASPI-CONFIG ... Minimal changes
    > System Options: Change Password & Hostname
    > Localization Options: Timezone, Locale = en_US.UTF-8 and US Keyboard
    > Interface Options: SSH Enabled (ssh is still handy)
    - RetroPIe Setup ... update everything
    > Update: Will take time to update RetroPie Packages and OS Packages

  5. Before exiting RetroPie Setup Script: Update & Install a couple of Optional Packages
    (there are many many more). See also: https://thepi.io/how-to-install-kodi-on-retropie/

  6. Boot! Pretty sure you MUST! Use Menu->QUIT->Restart System

Post Install Cleanup

Couple of Cleanup Items ...

Via SSH ... (use default raspos uc/pw)

1) Install a couple of handy commandline tools

    • Favorite editor: sudo apt-get install joe

    • FTP is handy - sudo apt-get install ftp

2) Create a few directories for Game/Music/Videos - ssh in and create under /home/pi directory just to keep them apparent.

  • /home/pi/movies - We will also point Kodi to this for its movie library

  • /home/pi/music - Another for Kodi's music library

  • /home/pi/videos - for Kodi's videos

  • /home/pi/ftpshuttle - used as staging if we need to move something around or unzip

  • /Retropie/roms/pc/install - For DOSBOX, if we need to install

3) Teach RetroPie to turn off it's display (backlight too!) when screensaver kicks in (my own howto came in handy! See also: Putting Raspberry Pi Monitor to Sleep (DPMS)

  • added hdmi_blanking=1 to /boot/config.txt

  • added consoleblank=300 to /boot/cmdline.txt

  • Set Retropie Screensaver behavior to 'black' via <start> -> UI Settings -> Screensaver Settings: Set timer and SS Behavior==BLACK

4) Fire up Kodi and skinny down the main menu to simplify

  • Scroll to "Ports" and Launch Kodi (A Button)

  • Once in Kodi click on gear in upper bar and select Settings->Interface
    - Click on Skin->Configure Skin
    - Highlight Main Menu items and turn off everything except Movies, Videos and Music

  • Repeated <esc> to return to RetroPie via Power Icon on Main Kodi Screen ... Use EXIT (not power off or reboot)

Download & test Movie, Song & Game

*** Disclaimer ... The RetroPie File manager details below MAY work but it is cumbersome
Personally,
I now use Samba on the CamperPi and simply drop games and media onto shared drive ...
I
need to retrace my steps and document that setup some point ***

See Also: https://retropie.org.uk/docs/Transferring-Roms/ or Midnight Commander underpinning.

Copy in a few games, movies & music to test things out.

There are probably easier ways to load files to RetroPie but pulling files from an FTP server works best for our library of games, movies and music. The step by step below uses RetroPie File Manager to copy files from our server followed by some shuffling around to add things to Kodi Library or appropriate RetroPi ROM directories.

Downloading Test Media

Building a legal library of music, movies and games is a totally separate discussion ... We'll start with one free movie, song and game downloaded from the Internet Archives:

Transferring Files

Select RetroPie (Configuration), then File Manager ... it's a side-by-side (Source->Destination) interface

Step by Step to Copy file from A to B (You'll get the hang of it!)

  1. Set Left pane (source)
    - fcn-F9 (PullDn) the Left-FTP link ... Standard FTP Syntax: "ftp://<user>:<pw>@<ftpserverIP>"
    - Navigate to source of music, movies or games

  2. Tab to Right (local destination) pane
    - Highlight directory and <return> to set

  3. Tab back to left, Highlight file (or directory) and fcn-F5 to copy files

Unzip or Move?

Downloaded games will typically be zipped (archive of multiple files). In the case of DOS games, like Bio Menace, you'll need to unzip them into appropriate RetroPie directory (DOSBOX uses /RetroPie/roms/pc). Arcade games will often be moved and stored as zip files, they are unzipped when they are played. Super Tank is a Mame game, it's zip file simply needs to be moved to /RetroPie/roms/mame-libretro directory. Lots to learn here!

If you select a zip file in the Left (source) pane and copy (fcn-F5) the zip archive will be copied. If you select the zip file and hit <enter> you will open the zip and be able to copy/move individual files.

Lots of options here, it really depends on the game. Some DOS games will require you to run a DOS install under DOSBOX, arcade games seem to be copied as zip files.

Exiting out of this mess

  • fcn-F10 to exit File Manager

  • Hit gamepad B to exit RetroPi Configuration

  • BOOT! Gamepad START->QUIT->RESTART SYSTEM

Minimally have to restart EmulationStation to have new games show up on RetroPie GUI.

Notes

Odds N Ends

May 2022

  • Razin-Frazin CamperPi failure on first solo/cold camping trip of the year!

    • Movie Froze after approx 5 mins ... all movies failed, retropie games seemed fine

      • Guessing that it was hdmi_blanking mode from March. Undid this and movies played fine (camper in driveway)

      • Reset hdmi_blanking=0 in /boot/config.txt

      • Removed consoleblank=300 in /boot/cmdline.txt


March 2022

Random Links, Notes, struggles, etc

Kodi multimedia formats @ https://kodi.wiki/view/Features_and_supported_formats#Format_support

-----------------

Notes on generations/attempts

Initial project used Kodi as a base and attempted to get Kodi gaming working - was truly a struggle. If you DO use Kodi as a base, https://libreelec.tv/ is probably the best path. Settled on this distro for our MoviePi's - it simplified life considerable

Can't recall where following came from, but looked to be handy/keeper!

The HOTKEY ENABLE button will allow you to easily perform actions while in a game:

Hotkey + Start

Exit

Hotkey + Right Shoulder

Save

Hotkey + Left Shoulder

Load

Hotkey + Right

Input State Slot Increase

Hotkey + Left

Input State Slot Decrease

Hotkey + X

RGUI Menu

Hotkey + Y"Emulation

Reset


Very random stuff follows!

had to enable ssh and update the system before getting dosbox or kodi installed

error: E: Repository 'http://raspbian.raspberrypi.org/raspbian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'

N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.

Fix:

turn on ssh via raspi-config (seems ok to change pi pw)

then

sudo apt update -y

then

sudo apt-get update

sudo apt-get -f install

sudo apt-get dist-upgrade

------------

Weird audio issues when working with 3.5mm audio jack

https://www.reddit.com/r/retroflag_gpi/comments/kbd8jh/how_do_i_fix_failed_to_find_mixer_elements_if/

Low-Power CamperPi!!

Winter attempt to create a smaller, lighter and lower power version ... notes to self at this point ...

*** I'm pretty excited about this one ... RPI 0w + 128g microsd running RetroPie w/ Kodi 'Port' connected via 5v, 550mA power supply is serving up Movies, Games and Music without breaking a sweat! NO THROTTLING, 25-30% CPU during Movie Playback! *** How can this be ?!?!

Deep Dive into Raspberry Pi Zero 2w Power Consumption ...
@ https://www.cnx-software.com/2021/12/09/raspberry-pi-zero-2-w-power-consumption/
Raspberry Pi Zero W power analysis @ http://robertthewombat.com/power-requirements-for-the-raspberry-pi-zero_w/
Script to monitor voltage @ https://jamesachambers.com/measure-raspberry-pi-undervoltage-true-clock-speeds/
Script to Check Power Supply @ https://bia.is/2019/02/02/raspberry-pi-check-your-power-supply/

more Pi Power Analysis HERE

Hardware

  • Rapsberry Pi Zero w w/ official case

  • Long usb cable, will try to use Built-in USB jacks in camper

  • 128g MicroSD to replace portable ssd

  • Touch-ups in step-by-step

    • Turn-on/Set Wifi while in Rapsi-Config initially for SSH setup

    • WiFi will be off when Offgrid

    • edit /boot/config.txt, add hdml_blanking=1

    • edit /boot/cmdline.txt add consoleblank=300