Is this the most powerful simulator for developers?
A plugin is a piece of software that is added to the simulator, allowing the emulation of real OSD, Auto Pilots, Ground Station, etc. and which are created by the same developers of the real devices.
A plugin can perform many functions:
- OSD (see demo plugin)
- Run auto-pilot code (see demo plugin)
- Communicate with a Ground Station
- Users can familiarise and learn to use the emulated equipment.
- Speed up the development of your OSD, AutoPilot, etc.
- Can do hundreds of flight tests at zero risk, with zero time overhead, and comfortably at the lab while raining outside.
- Can push the flight tests beyond the safety limit since there is no risk involved in the simulation. Thus, achieving an increased reliability in real life.
- Free demo platform for potential customers to try your product.
Firstly, edit file config2.txt and set I_AM_DEVELOPER_OF_PLUGIN to 1.
This will enable new options in the Plugin menu, and a new debug menu item.
Windows Version | Output Folder |
---|---|
Windows 10 | C:\Users\Public\Documents\AeroSIM_RC |
Windows 7,8 | C:\ProgramData\AeroSIM_RC |
Windows XP | C:\Documents and Settings\All Users\Program Data\AeroSIM_RC |
Note: the folder may be hidden, so you need to enable 'show hidden files' in Explorer Folder Options. |
Then play around with the DemoPlugin and try all its menu options.
And after that, have a look at the demo source files. These can be found in the folder \Plugin\PluginDemo\src, under the AeroSIM-RC installation folder.
Most of the information you will need is in this file:
C:\Program Files (x86)\AeroSIM-RC\Plugin\PluginDemo\src\Plugin.h
The demo plugin illustrates:
- how to define a custom menu
- how to change aircraft position (useful to repeat tests from same position, velocity, attitude, etc.)
- a simple aileron autopilot that takes the roll angle and move the ailerons to keep roll at 0º
- a simple elevator autopilot that takes the pitch angle and move the elevator to keep pitch at 0º
- a OSD with a simplified MAX7456 emulation
- a simple HUD
PluginDemo.vcproj is the project file for Visual Studio. The plugin demo is programmed in C.
1. To create a plugin, you write a DLL consisting basically on a function that will be called from AeroSIM-RC in each simulation cycle.
2.
This function receives the flight data (position, velocity, acceleration, angles, height above the ground and stick positions)
3. The function returns a data structure to optionally overwrite the stick positions, aircraft variables, and OSD display.
A Plugin is composed of the following files:
File | Description |
---|---|
plugin_AeroSIMRC.dll | plugin itself |
plugin.txt | a text file with the description and menu configuration |
... | any other file required by your code |
The plugin name is taken from the folder where the files can be found. No spaces are allowed in the name.
In the sample plugin, PluginDemo is the name of the plugin, and its files are found in C:\Program Files\AeroSIM-RC\Plugin\PluginDemo
There is more information in the source code, and in any case, send us an email if you need help to create your plugin or need any new feature.
This plugin generates a FrSky Smart Port telemetry data stream.
The plugin is open source, and it outputs the following sensor information:
Sensor | Information |
---|---|
ALTITUDE | Barometer based altitude, relative to home location. |
VSPEED | Vertical speed (cm/s) |
CURRENT | Current (A) |
VBAT | Battery voltage (Voltage FrSky Ampere Sensor) |
FLYMODE | ARM, MAN, ATT, GPS, ALT, RTH |
GPS_STATE | GPS lock status, accuracy, home reset trigger, and number of satellites. |
DISTANCE | Distance to GPS home fix |
PITCH, ROLL, HEADING | Angles |
FUEL | Remaining fuel/battery percentage |
GPS | GPS coordinates |
GALT | GPS altitude, sea level is zero |
GSPEED | Ground speed provided by GPS (knots) |
CELL_VOLTAGE | Battery cell voltage |
RSSI | Received Signal Strength Indicator |
The data is output to other devices through one of the serial ports of the computer running AeroSIM-RC
The COM port number and baud rate are selected by editing the following files:
C:\Program Files (x86)\AeroSIM_RC\Plugin\FrSkyTelemetry\COM_PORT_NUMBER.txt
C:\Program Files (x86)\AeroSIM_RC\Plugin\FrSkyTelemetry\COM_PORT_BAUD_RATE.txt
The Telemetry data generated by AeroSIM-RC can be used in many ways. Here are two practical examples.
Telemetry on Tablet.
Top screen: AeroSIM-RC simulator.
Bottom screen: Tablet with App "iNav SmartPort telemetry viewer"
You need:
How to set up:
AeroSIM-RC generated FrSky Telemetry displayed on a Taranis
From left to right: FrSky XSR receiver, FrSky STK, AeroSIM-RC wireless USB interface, FrSky Taranis Plus
You need:
How to set up:
Is this the most powerful simulator for developers?