One of the options available for running SimVimPanel is Raspberry Pi, and it can be the most convenient one when running several panel modules in a cockpit.
SimVimPanel was programmed to be as optimized as possible, and it will work with any Raspberry Pi, even the first one. It has been tested with the first Raspberry Pi and up to Raspberry Pi 4.
The first Raspberry will not perform greatly with a large panel, but may still be used for lightweight modules that don’t have many gauges on them or don’t have any smooth movement, such as annunciator panels.
Raspberry Pi 3 is enough to run any large panel module – just make sure that your CPU is adequately cooled, otherwise it will slow down. We’ve just attached a small radiator to it (without a fan), and it was enough.
Using a RPi 4 with 2 HDMI outputs will allow you to use the single Raspberry to run the whole main panel, pilot and co-pilot side, using a single panel module designed for use with 2 screens. Otherwise, RPi3 has enough performance to run any single-screen module.
Setting up the graphics driver
First, enable the Experimental OpenGL driver in your system for automatic screen parameters recognition and better performance. In summary, you’ll need to do the following:
- Connect a standard-sized (4:3, 16:9) display to your RPi so you can at least work with it without any configuration.
- Open the terminal and launch “sudo raspi-config”
- Select “Advanced Options” -> “GL Driver” and select any of the “Experimental” (non-Legacy) driver options:
After you are done, click Finish to save the changes and reboot your Raspberry.
If you will use some small/non-standard LCD, turn the RPi off, connect the new LCD screen and turn it on. In most cases, the system should correctly detect the size of the connected HDMI screen.
You may also need to increase the GPU memory in the “Performance Options”, (it’s not necessary but large panels with a lot of textures may not load correctly). You also can change this number to 128 or more in the “Raspberry Pi Configuration” menu:
For example, this small 8.8″ 1920x480px screen (purchased here, on AliExpress) started working immediately, without additional configuration, after the above manipulations. The only action that needed to be taken was to change the screen orientation – it was defined as 480×1920 for the “normal” orientation, you need to select “rotate right” from the screen menu in the RPi:
Settings up displays of non-standard size
When you make your cockpit with SimVimPanel, some small modules, such as standalone annunciator panels, can be displayed on small screens that are easy to fit into place inside your cockpit. You can see the example just above.
To avoid problems with setting up non-standard screen resolutions, it’s best to enable the Experimental GL driver in Raspberry OS. This will allow the system to automatically read the display parameters, if the display supports it.
If you use Legacy driver, you would need to set the correct parameters for the display manually in RPi config file.
Workaround for incorrect screen resolution
Even if you can’t get the display to run in its native resolution, you can still configure SimVimPanel to display the module in its real size on such screen.
In this example, we have a 7.8″ display with 800×300 native resolution, but our Raspberry is running it with 1024×768. With such discrepancy, the desktop on the screen looks distorted.
In order to make SimVimPanel work with this display correctly, we’ll need to edit its “settings.ini” file and add the lines that list the resolution currently used by the system, and the display’s real width and height, in millimetres.
Screen_Resolution = 1024,768
Screen_Horizontal = 186
Screen_Vertical = 69
SimVimPanel will now correctly scale to the screen dimensions.
If you need to position the display vertically, you can use the screen rotation option in your system and specify the screen dimensions for SimVimPanel in reverse, listing the shorter side of your screen as “Screen_Horizontal” and the longer side as “Screen_Vertical”.