next >> SimVimCockpit – Hardware
1. SimVim Plugin
The main part of this interface is the SimVimCockpit plugin, currently it is a quite complex C++ program with about 15,000 lines of code. As the most important part of the system, the plugin interacts with the SimVim firmware and the SimVimPanel program to send and receive data. It does all the work of processing data from the simulator to send the results to output devices in specific format depending on the predefined device type, assigned output type and other conditions.
The inputs state signals received from the firmware on the master board controller are processing by the plugin either in simplest way – executing specific simulator commands / set datarefs or running a specialized SimVim functions to simulate specific/custom functionality for some devices.
Installation: add the SimVim plugin to your X-Plane as any other plugins. Download the SimVImCockpit zip file and unpack it as-is to the X-Plane plugins folder. The new menu item “SimVimCockpit” will appear in the X-Plane plugins menu when you start X-Plane:
SimVim Plugin Reconnection options:
1. [Reload Configuration] button in the “Status” window reloads SimVim configuration only, it should be used when you edited and saved your configuration file (data.cfg) when X-Plane is running.
2. [Hardware Reconnect] menu item resets all the plugin functions, reopens ports and reloads SimVim configuration. Use it only if you have reconnected your board USB cable while X-Plane is running or you have connection issues. Also, if you need reconnect your system from your plugin or script (or from the keyboard key) you can use the command “simvim/reconnect”.
2. SimVimCockpit Firmware
The second piece of software is the SimVim firmware uploaded into the I/O “master board”. As a “master board” any Mega2560 controller board can be used, like Arduino-2560 as a handy device easily accessible to everyone.
The firmware is not using any Arduino libraries, it is a written from scratch program for AVR controller that includes a code for input states scanning and processing, specialized code for all output devices and protocols for data exchange (plugin <-> master board <-> “slave” boards). You don’t need to know Arduino coding and install Arduino IDE.
The SimVim firmware should be uploaded to the master board from the plugin menu just once, it changes very rarely and you don’t need to re-upload it on every configuration change and even on the plugin update! Once the next plugin will include the updated firmware version it will warn you about this update.
3. SimVimPanel program
SimVimPanel is an additional, standalone program providing a set of realistic, fully-functional aircraft instrument panels to be displayed on a computer that is connected by network to the main computer with X-Plane.
Currently the SimVim system is more a “cockpit simulator”, not just an input-output interface, because many inputs/outputs are not simply executing some commands or show dataref values, but rather call complex function for specific aircraft system or device (such as SimVim radios).