Mar 1, 2018

Renewed website, SimVimCockpit

The reworked version of our website that includes all pages about new SimVimCockpit Interface is now online. Not all pages have full content yet, some pages don't have all the needed information, but all this will be updating in the near few days.

Although SimVimCockpit beta hasn't been released yet, you can check the new configurator on the website to get the idea of how it will work. It is still in development and will be subject to change, so right now not all configuration options will be available.

Feb 25, 2018

Project status: February 2018

While there hasn't been much info to share for the last month, we've been making steady progress towards the beta release of SimVimCockpit (previously ArdSimX.2).

Uploading Arduino firmware using the plugin is mostly done, and now we just need to make sure it works on different OS.

Most of the work this month was done on the new configurator and the parameters list.

Unlike our previous interfaces, which directly worked with X-Plane commands and Datarefs, SimVimCockpit works with a list of pre-defined parameters. Each single parameter has its own unique name (like "PARAM_NAME_SW") that is linked to an X-Plane dataref/command, and at the same time includes all the necessary options, many of which are specific to a particular dataref or I/O type, so that the users won't have to include these options in their configuration file.

For example, such parameters as display digits number and dot position for every specific 7-segment display are pre-defined. These options will not appear in the configurator, but can still be modified from their default values manually if you need to configure them for use with a custom dataref, for example.

Since every parameter now has its unique pre-defined NAME, the configuration file is universal, and every custom plane may have an additional "correction" file that can include the same names with corrected options or linked custom datarefs.

We're still planning to make a separate, simpler configuration tool for tuning these options to custom aircraft.
Also, after release we plan to make several parameter replacement files for some of the popular custom aircraft models.

The updated website with info on SimVimCockpit will be available soon.

Feb 2, 2018

Mode Switches and Conditions

One of the features of ArdSim and ArdSimX were switchable encoder modes. Sometimes they required tricky logic to set up all the required functionality.
For example, a common goal was configuring a single encoder for radio, which would switch between different COM/NAV (1 and 2) modes with a press of one button, and between MHz/KHz with a press of another, built-in button.
This required setting up 8 different encoder modes and two buttons that used different logic to switch the encoder's mode.

In addition to this, later versions of ArdSimX included an experimental feature with switchable output modes - for example, to output different data to a 7-segment display.

Needless to say, there can be a lot of cases where the specific functions of inputs and outputs need to be influenced by outside conditions. Variations include switching modes using buttons or encoders, switching modes or disabling outputs based on dataref value, such as insufficient power, and so on.

In the new SimVimCockpit Interface (previously ArdSimX.2), the whole logic for these functions was reworked to make them all unified and allow greater control over various conditions.

Imagine a configuration file with all the input and output config lines, as it looked in ArdSimX. The main idea now is that each config line can be dynamically enabled or disabled.
Unlike ArdSimX, now any line can have separate parameters indicating what mode number and what mode switch it corresponds to. A line can even have several mode switches configured to it, making things like the encoder example described earlier more easy to implement. In addition to this, logical conditions  with a dataref value can be used in place of a mode switch. Such condition, for example, can be used to disable a 7-segment radio display when it is powered off in the simulator, along with any encoders and buttons associated with it.

All this functionality is currently at an early stage in development. We will be working out the specifics along the way.

Dec 12, 2017

Update for ArdSimX.1

While the work on SimVimCockpit (ArdSimX.2) is in progress, we do not forget about the support of ArdSimX 1.x. Recently we've been making some improvements in the current interface and ArdSimX 1.16 .. 1.18 has been uploaded to SimVim website.

The whole firmware code was revised for this version. Now the interface has improved encoder processing similar to what we've implemented in SimVimCockpit, as well as improved initial processing of input data in the plugin and several bug fixes.

Nov 7, 2017

SimVimCockpit Development status

Lately, people have been asking us about the release date of SimVimCockpit

It's still hard to name the exact date of SimVimCockpit launch. We are dedicating all available time to it. Many features of the interface are already working and debugged, but there are still some things that need to be refined.

We could release the interface as it currently is, but the new configurator is what still prevents this. We need to finish this configurator (it will be simpler and easier to use that in ArdSimX). Although SimVimCockpit can be manually configured, we'd still need to explain all the options, as the config file format has changed significantly. We would also like to make a parameter database first, which will remove the need to write redundant options in the config file that are never changed from the default.

We have many plans, and we wish to post more frequently, with more videos, tutorials, etc...
Hope we will get more time for this soon, when SimVimCockpit is released..

Project status information

All plans concerning SimVimCockpit (working title ArdSimX.2) and the development status of all its features will now be displayed in the "Development Status"section.

Please email us if you need more specific info.


Oct 20, 2017

Arduino and Peripherals Powering

Sometimes, people who just started to work with Arduino have trouble making their ArdSimX/SimVimCockpit setup work. The cause of these problems often turns out to be improper powering of Arduino and its connected devices. Sometimes, the devices powered from Arduino drain too much power for it to handle, sometimes incorrect Arduino pins are used for powering. At best, some output devices don't work until the problem is fixed. Worst case - Arduino may be permanently damaged.

This combined diagram was designed to provide you a convenient reference for the proper powering practices for your ArdSimX/SimVimCockpit setup:

Oct 18, 2017

SimVimCockpit (ArdSimX.2) I/O structure

Like with previous versions of the interface, SimVimCockpit (working title ArdSimX.2) allows you to use any Arduino pins for direct inputs, namely buttons, switches and encoders, and direct outputs (LEDs).

If the available pins are not enough, now you can use CD74HC4067  modules as input multiplexers to expand any pin to 16 inputs, guaranteeing that a single Arduino will be enough for a cockpit of any complexity.

This is the structure diagram of SimVimCockpit connections:

Oct 16, 2017

Updated 7-Segment displays support in SimVimCockpit

As it was announced before, the TM1637 display controller support has been successfully added. I've finished and debugged the code to output data for this display type through the same multiplexer.

The only difference from all other display types is that the Data signal for TM1637 is not the same common "D"  output, but it is controlled  using one additional Arduino pin (that will be  fixed  as "D" output for TM1637).

Also, additional important updates have been done (see below)...

Oct 13, 2017

7-Segment Displays in SimVimCockpit (ArdSimX.2)

In SimVimCockpit all 7-segment displays are connected to one fixed port via multiplexer. All displays are numbered in range of 1 to 16.

You can connect different 7-segment displays that can be made using either simple 8-bit shift registers (74HC595), either any of 16-bit LED drivers (like DM13A etc), or MAX7219 driver.

Note: The TM1637 driver is supported too, currently I'm trying to adapt the data exchange protocol in TM1637 to the same port used for all other displays, but this is still uncertain, it could be another output option (additional output pin).

Oct 12, 2017

Multiple LED output in SimVimCockpit

Like the previous interface version, SimVimCockpit supports serial output to LEDs using the serial-to-parallel registers with latch. This allow you to connect as many annunciators as you need using a few Arduino pins. In SimVimCockpit you can still use the 74HC595 registers connected in chain to make all annunciators for your panel.

Now we can recommend another option for multiple LEDs output (or digital signals output). In SimVimCockpit now you can use DM13A LED driver or any other similar 16-output drivers - here is an example of this driver on Ebay. 

This IC is a 16-bit shift register with a latch for 16 constant current LED outputs. "Constant current output" means that you don't need to care about each LED's current, for all 16 outputs this current is set by a single resistor at a separate input, and each single output can sink 3 ... 60 mA, so that individual resistors on each LED are not necessary (as was needed in case of 74HC595 registers).

LED driver pinouts and wiring