mirror of
https://github.com/iNavFlight/inav.git
synced 2025-07-13 03:19:58 +03:00
- Bugfixes
- Add magnetometer and rnagefinder - Add joystick interface - Configuator integration - Update docs
This commit is contained in:
parent
1af0e6116b
commit
154ea341f4
34 changed files with 706 additions and 256 deletions
|
@ -2,10 +2,14 @@
|
|||
|
||||
Supported are RealFlight 9.5S and RealFlight Evolution, NOT RealFlight-X.
|
||||
|
||||
RealFlight is very well suited to simulate the model flight specific aspects. Autolaunch and the mixers can be set in INAV.
|
||||
RealFlight is very well suited to simulate the model flight specific aspects. Autolaunch and the mixers can be used.
|
||||
However, since the sceneries do not correspond to a real environment, the GPS data must be "faked". The position is always shown somewhere in southern Nevada ;).
|
||||
GPS data and flight modes work fine though, only for missions with waypoints it is of course not ideal.
|
||||
|
||||
## Joystick
|
||||
In the settings, calibrate the joystick, set it up and assign the axes in the same order as in INAV.
|
||||
Channel 1 (Aileron) in RealFlight is Cannel 1 (Aileron in INAV) and so on.
|
||||
|
||||
## General settings
|
||||
Under Settings / Physics / Quality Switch on "RealFlight Link enabled".
|
||||
As a command line option for SITL, the port does not need to be specified, the port is fixed.
|
||||
|
@ -17,4 +21,4 @@ In the model editor under "Electronis" all mixers should be deleted and the serv
|
|||
In the "Radio" tab also deactivate Expo and low rates: "Activadd when: Never".
|
||||
Configure the model in the same way as a real model would be set up in INAV including Mixer, Expo, etc. depending on the selected model in RealFlight.
|
||||
|
||||
Then adjust the channelmap (see command line option) accordingly.
|
||||
Then adjust the channelmap im the Configurator or via command line accordingly.
|
|
@ -3,7 +3,7 @@
|
|||

|
||||
|
||||
## ATTENTION!
|
||||
SITL is currently still under development, its use is still a bit cumbersome.
|
||||
SITL is currently still under development.
|
||||
|
||||
SITL (Software in the loop) allows to run INAV completely in software on the PC without using a flight controller and simulate complete FPV flights.
|
||||
For this, INAV is compiled with a normal PC compiler.
|
||||
|
@ -13,46 +13,23 @@ Currently supported are
|
|||
- RealFlight https://www.realflight.com/
|
||||
- X-Plane https://www.x-plane.com/
|
||||
|
||||
INAV SITL communicates for sensor data and control directly with the corresponding simulator, see the documentation of the individual simulators and the command line options.
|
||||
|
||||
## Command line
|
||||
The following SITL specific command line options are available:
|
||||
|
||||
If SITL is started without command line options, only the Configurator can be used.
|
||||
|
||||
```--help``` Displays help for the command line options.
|
||||
|
||||
```--sim=[sim]``` Select the simulator. xp = X-Plane, rf = RealFlight. Example: ```--sim=xp```
|
||||
|
||||
```--simip=[ip]``` IP address of the simulator, if you specify a simulator with "--sim" and omit this option localhost (127.0.0.1) will be used. Example: ```--simip=172.65.21.15```
|
||||
|
||||
```--simport=[port]``` Port number of the simulator, not necessary for all simulators. Example: ```--simport=4900```
|
||||
|
||||
```--useimu``` Use IMU sensor data from the simulator instead of using attitude data directly from the simulator. Not recommended, use only for debugging.
|
||||
|
||||
```--chanmap=[chanmap]``` The channelmap to map the motor and servo outputs from INAV to the virtual receiver channel or control surfaces around simulator.
|
||||
Syntax: (M(otor)|S(ervo)<INAV-OUT>-<RECEIVER_OUT>),..., all numbers must have two digits.
|
||||
|
||||
Example:
|
||||
To assign motor1 to virtual receiver channel 1, servo 1 to channel 2, and servo2 to channel 3:
|
||||
```--chanmap:M01-01,S01-02,S02-03```
|
||||
Please also read the documentation of the individual simulators.
|
||||
INAV SITL communicates for sensor data and control directly with the corresponding simulator, see the documentation of the individual simulators and the Configurator or the command line options.
|
||||
|
||||
## Sensors
|
||||
The following sensors are emulated:
|
||||
- IMU (Gyro, Accelerometer)
|
||||
- GPS
|
||||
- Pitot
|
||||
- barometer
|
||||
- Magnetometer (Compass)
|
||||
- Rangefinder
|
||||
- Barometer
|
||||
- Battery (current and voltage), depending on simulator
|
||||
|
||||

|
||||
|
||||
Magnetometer (compass) is not yet supported, therefore no support for copters.
|
||||
|
||||
Select "FAKE" as type for all mentioned, so that they receive the data from the simulator.
|
||||
|
||||
## Serial ports
|
||||
## Serial ports+
|
||||
UARTs are replaced by TCP starting with port 5760 ascending. UART 1 port 5760, UART2 6761, ...
|
||||
By default, UART1 and UART2 are available as MSP connections.
|
||||
To connect the Configurator to SITL: Select TCP and connect to ```127.0.0.1:5760``` (if SITL is running on the same machine).
|
||||
|
@ -64,8 +41,17 @@ The assignment and status of user UART/TCP connections is displayed on the conso
|
|||
All other interfaces (I2C, SPI, etc.) are not emulated.
|
||||
|
||||
## Remote control
|
||||
At the moment only direct input via UART/TCP is supported.
|
||||
Joystick (via simulator) or serial receiver via USB/Serial interface are supported.
|
||||
|
||||
### Joystick interface
|
||||
Only 8 channels are supported.
|
||||
Select "SIM (SITL)" as the receiver and set up a joystick in the simulator, details of which can be found in the documentation for the individual simulators.
|
||||
|
||||
### Serial Receiver via USB
|
||||
Connect a serial receiver (e.g. SBUS) to the PC via a UART/USB adapter. Configure the receiver in the Configurator as usual.
|
||||
|
||||
The Configurator offers a built-in option for forwarding the serial data to the SITL TCP port, if SITL is started manually the following option can be used:
|
||||
|
||||
The connection can then be established with a programme that forwards the serial data unaltered to TCP, e.g. with the Python script tcp_serial_redirect.py (https://github.com/Scavanger/TCP-Serial-Redirect)
|
||||
If necessary, please download the required runtime environment from https://www.python.org/.
|
||||
Please use the linked version, which has a smaller buffer, otherwise the control response is relatively slow.
|
||||
|
@ -78,7 +64,7 @@ For this you need a FT232 module. With FT-Prog (https://ftdichip.com/utilities/)
|
|||
For SBUS, the command line arguments of the python script are:
|
||||
```python tcp_serial_redirect.py --parity E --stopbits 2 -c 127.0.0.1:[INAV-UART-PORT] COMXX 100000```
|
||||
|
||||
Note: Telemetry via return channel through the receiver is not supported by SITL.
|
||||
Note: Telemetry via return channel through the receiver is not supported by SITL (yet).
|
||||
|
||||
## OSD
|
||||
For the OSD the program INAV-Sim-OSD is available: https://github.com/Scavanger/INAV-SIM-OSD.
|
||||
|
@ -86,6 +72,33 @@ For this, activate MSP-Displayport on a UART/TCP port and connect to the corresp
|
|||
|
||||
Note: INAV-Sim-OSD only works if the simulator is in window mode.
|
||||
|
||||
## Command line
|
||||
The command line options are only necessary if the SITL executable is started by hand, e.g. when debugging.
|
||||
For normal use, please use the SITL tab in the configurator.
|
||||
|
||||
The following SITL specific command line options are available:
|
||||
|
||||
If SITL is started without command line options, only the Configurator can be used.
|
||||
|
||||
```--path``` Full path and file name to config file, if not present, eeprom.bin in the current directory is used. Example: ```C:\INAV_SITL\flying-wing.bin```
|
||||
|
||||
```--sim=[sim]``` Select the simulator. xp = X-Plane, rf = RealFlight. Example: ```--sim=xp```
|
||||
|
||||
```--simip=[ip]``` IP address of the simulator, if you specify a simulator with "--sim" and omit this option localhost (127.0.0.1) will be used. Example: ```--simip=172.65.21.15```
|
||||
|
||||
```--simport=[port]``` Port number of the simulator, not necessary for all simulators. Example: ```--simport=4900```
|
||||
|
||||
```--useimu``` Use IMU sensor data from the simulator instead of using attitude data directly from the simulator. Not recommended, use only for debugging.
|
||||
|
||||
```--chanmap=[chanmap]``` The channelmap to map the motor and servo outputs from INAV to the virtual receiver channel or control surfaces around simulator.
|
||||
Syntax: (M(otor)|S(ervo)<INAV-OUT>-<RECEIVER_OUT>),..., all numbers must have two digits.
|
||||
Example:
|
||||
To assign motor1 to virtual receiver channel 1, servo 1 to channel 2, and servo2 to channel 3:
|
||||
```--chanmap:M01-01,S01-02,S02-03```
|
||||
Please also read the documentation of the individual simulators.
|
||||
|
||||
```--help``` Displays help for the command line options.
|
||||
|
||||
## Running SITL
|
||||
It is recommended to start the tools in the following order:
|
||||
1. Simulator, aircraft should be ready for take-off
|
||||
|
@ -94,7 +107,6 @@ It is recommended to start the tools in the following order:
|
|||
4. serial redirect for RC input
|
||||
|
||||
## Compile
|
||||
GCC 10 is required, GCC 11 gives an error message (bug in GCC?!?).
|
||||
|
||||
### Linux:
|
||||
Almost like normal, ruby, cmake and make are also required.
|
||||
|
|
|
@ -2,14 +2,32 @@
|
|||
|
||||
Tested on X-Plane 11, 12 should(!) work but not tested.
|
||||
|
||||
X-Plane is not a model flight simulator, but is based on real world data and is therefore suitable
|
||||
GPS missions with waypoints.
|
||||
X-Plane is not a model flight simulator, but is based on real world data and is therefore suitable for GPS missions with waypoints.
|
||||
|
||||
## Aircraft
|
||||
It is recommended to use the "AR Wing" of the INAV HITL project: https://github.com/RomanLut/INAV-X-Plane-HITL
|
||||
|
||||
## General settings
|
||||
In Settings / Network select "Accept incoming connections".
|
||||
The port can be found under "UDP PORTS", "Port we receive on". If no connection is established, the port can be changed.
|
||||
You may want to incease the "Flight model per frame" value under "General"
|
||||
|
||||
## Joystick
|
||||
In the settings, calibrate the joystick, set it up and assign the axes as follows:
|
||||
|
||||
| INAV | X-Plane |
|
||||
|------|---------|
|
||||
| Roll | Roll |
|
||||
| Pitch | Pitch |
|
||||
| Throttle | Throttle |
|
||||
| Yaw | Yaw |
|
||||
| Channel 5 | Prop |
|
||||
| Channel 6 | Mixture |
|
||||
| Channel 7 | Collective |
|
||||
| Channel 8 | Thrust vector |
|
||||
|
||||
Reverse axis in X-Plane if necessary.
|
||||
|
||||
## Channelmap:
|
||||
The assignment of the "virtual receiver" is fixed:
|
||||
1 - Throttle
|
||||
|
@ -17,6 +35,6 @@ The assignment of the "virtual receiver" is fixed:
|
|||
3 - Pitch
|
||||
4 - Yaw
|
||||
|
||||
The internal mixer (e.g. for wings only) cannot be deactivated without further ado, therefore always select "Aircraft with tail" in INAV.
|
||||
The internal mixer (e.g. for flying wings) cannot be deactivated without further ado, therefore always select "Aircraft with tail" in INAV.
|
||||
For the standard Aircraft preset the channelmap is:
|
||||
```--chanmap=M01-01,S01-03,S03-02,S04-04```
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue