If you are going to build a home cockpit (especially if you have never done so), you must understand that this can be a compplex and time-consuming process. If you are planning to use HCSCI, please read all pages on this website carefully first.
The fact that using the HCSCI system allows you to simplify the process of building your home cockpit doesn't mean that you should not have sufficient technical knowledge, handicraft, wiring and soldering skills, and asking questions that would never have been asked if you have learned more about the corresponding topic.
This hobby project arose out of the need for an easy to use yet powerful flight simulator control interface. I started it by seeing all the problems a home cockpit builder could face using existing solutions at the time.
Like many other aviation enthusiasts, I became a fan of flight sims since they just came out on PC (late 80s), particularly MSFS, and it was natural to want to fly with more realistic controls, not only having a homemade yoke with few buttons. When home internet became available, I started searching I/O inteface for FS and trying few solutions available.
X-Plane: - Then, after a few years of hiatus, in 2010 I bought X-Plane 9, which had a built-in I/O protocol that provides communication with the X_Plane over UDP. Since at the same time the few available interface options were either too limited or too complex, I decided it was time to create my own X-Plane interface, given my pro background in electronics and coding.
DIY B58 Panel and first I/O program: - At the same time I started building a full-size Baron 58 panel simulator and used Arduino (with Mega1280 microcontroller) as a convenient and cheap platform (no need to deal with “bare-bone” micro-controller chip programming) to write input/output code for this panel that used UDP network protocol built into X-Plane. It was just standalone code (not library).
The point is, over the past 20 years, I've seen home cockpits launched and posted online, which then eventually stalled or turned into unfinished projects devouring a lot of money over the years. Of course, that doesn't mean it's about the interface, but if you need to become an expert in programming and electronics in order to get few LEDs and displays in your cockpit to work, it can frustrate and stop many enthusiasts.
First, this whole project would not have been possible without my son Roman, with his extensive system and application programming skills. My programming expertise is mainly related to hardware, electronics/micro-controllers, scripts, web-design. So he soon joined me and we became a small father and son team. He created the first plugin (ArdSim), which then evolved into the current powerful HCSCI project, and instrument panel program.
The HCSCI (SimVimCockpit) is the 6th generation of our input-output interface for X-Plane. At first, we spent a little time learning the in-built X-Plane UDP protocol, then there were a few “transitional” libraries, that grew up to become ARDref / ArdSim / ArdSimX with using the plugin as main part of the system:
|Baron 58 code developments||UDP tests, 2012-2013||The first test code to analize UDP packets from X-Plane to receive packets and send commands to X-Plane. Early programs for Baron 58 Panel (June 2012) using data receiving using X-Plane UDP DATA method only. Testing of data input-output methods, Arduino code development for encoders, analog inputs, program speed optimisation etc.|
|XPData Library for X-Plane data Input/Output||2014 to 2015||First convenient library created, used built-in X-Plane UDP communication protocol (Ethernet) to send input data to X-Plane. Had two different methods of receiving output data from X-Plane - one using X-Plane UDP protocol, and the other getting data from the early versions of ARDref plugin.|
|ARDref Library and Plugin||to July, 2015||The "transitional" library. Only worked with Ethernet, used several slave boards. Focused on using a plugin with config files instead of Arduino programming. Many of its ideas, such as plugin transmitting initial configuration to Arduino, have been reused later for HCSCI .|
|ArdSim Library and Plugin||v.1.2 late 2015 to v. 5.4 in 2017||The predecessor to ArdSimX. Main differences: ArdSim library has a set of functions that you had to use in Arduino code to setup input controls and assign specific action (switch, encoder, LED etc.) for any Arduino pin. Arduino programming (via use of ArdSim library functions) was required along with the configuration file. Needed to know the library functions and X-Plane datarefs/commands|
|since 2017 to v. 1.33 in July 2018||The predecessor of the SimVimCockpit/HCSCI . Configurable inputs/outputs (buttons, switches, encoders, analog axes, rotary switches, LEDs, 7-segment displays, few stepper motors and PWM-gauges) without any Arduino programming using online configurator.|
-- > HCSCI
|since 2018 to present||The SimVimCockpit / HCSCIS interface has completely replaced ArdSimX and all previous projects, it provides much more capabilities and offers more control and output options, requiring significantly less effort and cost to use with a very flexible I/O configuration.
The HCSCI is the current interface name.
The goal was to create an interface that would be a powerful, flexible, yet easy-to-use tool for home cockpit builders. In the end, HCSCI will save you a lot of time and money by allowing you to focus on cockpit building process, not thinking about how to make it work the simulator, without the need for programming skills and complex custom electronics.
HCSCI Interface is free, non-commercial hobby project, and any donations are highly appreciated! Thank you!
Patreon operates as one of the donation services, but allows you to support your favorite projects on a monthly basis by donating a small amount charged each month from your PayPal. You can define any donation sum monthly, change the amount, or end the patronage at any time. Even if you want to make a one-time donation, you can subscribe and then unsubscribe after the first week of the month.
The HCSCI project is always in a constant development state, it still has a lot of potential, and its functionality can be improved and changed during the development process.