Raspberry Pi and Retro Arcade Adventures – Part 5 – There maybe trouble ahead …
So we’ve hit part 5 of this series and we’re now at the point where I’d like to cover some of the little challenges that you may hit along the way after the build and maintaining it after Operating System upgrades.
If you are just joining us – please feel to catch up via the links to the previous parts below:
The piCade is a wonderful product and really can give hours and hours of fun. However, we should remember that at its core there are a number of complex technical concepts and software products which make up the whole product whole. One of these Linux based Raspbian fork of RetroPie (the underlying O/S).
Issues encountered post build
Pressing a button on the piCade during game play starts screen recording.
This is easily fixed by connecting to your device via FileZilla (see part 4 of this series for connecting via SSH).
You will need to navigate to:
and open retroarch.cfg file.
Find the input_movie_record_toggle entry and change it to the value in the screenshot.
Gameplay starts to run too fast when you press a button.
This is fixed again by editing the retroarch.cfg file.
Locate the following line – make sure that it is uncommented and value is set to ‘nul’.
After performing a System Upgrade or using the latest image of RetroPie – you can no longer control or have no sound from within EmulationStation.
This tends to happen after you have selected the UPDATE option from within raspi-config or installed the latest version of RetroPie.
From what I have seen the update process creates a conflict with Pulse Audio and the Raspberry PI.
If this happens open an SSH session to your piCade and enter the following commands:
sudo apt remove pulseaudio
After the reboot – connect via SSH again and enter:
sudo apt-get remove --purge pulseaudio
You may find that even after you have removed Pulse you still cannot control the volume from within EmulationStation (the slider stays at zero) – if this is the case then:
Ensure that all of the settings for sound within EmulationStation look like the following:
Then via an SSH session to your piCade locate the es_settings.cfg file which will be within the following folder:
Open the file and make sure that the following values look like the following (or reflects the audio device that you are using):
When you have made the changes reboot your device.
A bit of fun – VNC Control of your piCade
It is entirely possible that this part of my post will not interest you in anyway shape or form. I had a need to be able to take screen shots of the piCade directly from the device from my Mac. I knew that I wanted to use VNC as the client – however I knew that on RetroPie there is no built in X-Windows functionality so there is no real traditional way to render the piCades screen to a remote device using VNC.
This is where I turned to ideas around Dispmanx.
Dispmanx is a very low level API for accessing the GPU on the Raspberry Pi. Long and short it is complicated – however that didn’t stop a chap called Peter Hanzel from writing a VNC Server (called Dispmanx_VNC) which was free of the X-Window requirements.
Whereas it really doesn’t provide a means to “stream” your games on the piCade as performance is not great – it is really useful for screenshots and documentation.
Installation of dispmanx_vnc is very straight forward from a SSH terminal to your piCade. Open one up and enter in the following commands:
sudo apt-get install libvncserver-dev
chmod +x makeit
The above commands will:
- Install the dependancy libvncserver development libraries.
- Clones the file structure and code libraries which from GitHib to the piCade for the VNC server.
- Jump to the cloned directory on your piCade.
- Give the compiler “makeit” execution rights on the directory.
- Use makeit to compile all of the sources into binaries.
- Run the dispmanx_vncserver.
You will need to download the VNC Client from Real Networks, when you have installed it – fire it up and in the address bar provide the IP address of your piCade:
On the properties for your connection you will need to ensure that the picture quality is set to High – don’t leave it at “Automatic” or the screen streaming will be garbled.
You can then connect and you will see what is currently on the screen of your piCade.
That’s it for now, I will probably add more to this as I go along or remember anything from the build that I found a little tricky.