The Airbus A350 and A380 are equiped with the second generation of the Thales Integrated Standby Instrument System (ISIS). This device can function as a Standby Flight Display (SFD) and as a Standby Navigation Display (SND).
FlightAhead developed a high fidelity application that simulates in great detail the second generation ISIS.
This application can run in Microsoft Windows on PC, or in Linux on Raspberry Pi. When running on Raspberry Pi, real hardware buttons and encoders can easily be read by the application. Thereby making it possible to develop an integrated stand-alone simulation instrument, just as an LRU (Line Replaceable Unit) in real world.
Data can be send via UDP LAN packets from external applications to set all of the different parameters of the FlightAhead simulated ISIS. Standard plugins for X-Plane are available to feed it with X-Plane data.
Standby Flight Display (SFD)
Basic flight parameters
- Pitch
- Roll
- Slip
- Airspeed
- Barometric Altitude
- Barometric Reference Pressure
Menu options
- Speed Bugs
- Altitude bug
- Altitude in meters
- Barometric Reference Pressure in HPA or INHG
- Present position indication
- Fix distance and bearing with indication on heading tape
Landing System
- LS with course on heading tape
- Lateral deviation indication
- Vertical deviation indication
- LS source
- LS Identifier
- LS Frequency
System operations
- Failure flags
- Brightness setting
Standby Navigation Display (SND)
Navigation
- Compass rose with heading and track indication
- Groundspeed
- Aircraft present position
- Fix entry with calculation of distance and bearing from present position
- Waypoint entry with calculation of
- Bearing and distance to TO WPT
- Desired Track (DTK) from FROM to TO WPT
- Cross Track Deviation (XTK) from present position to FROM/TO leg
- DTK and distance for TO/NEXT leg
System operations
- Failure flags
- Brightness setting
Advanced simulation
MODE
Switching between SFD Mode, SND Mode and Off
MAINTENANCE
Extended simulation of the maintenance pages
ISIS with X-Plane
The video below shows the simulated ISIS interworking with X-Plane.
The upper ISIS in SFD Mode is running on RaspberryPi (i.e. VNC remote desktop of RPi on PC). The second (lower) ISIS in SND Mode is running on PC.
The test flight is an ILS landaing at EBBR 25L, performed with the default X-Plane Cessna. The simulated ISIS works with any X-Plane aircraft.
ISIS Interface
Data can be send to the ISIS following the message struct as shown below in the C++ example. Messages are send as UDP packets to the port that the ISIS is configured to listen to.
struct ISIS2_OUT
{
char Header[21]; //StbyIsis2Xp
char Powered;//bool
char Failed;//bool
char Brightness;// 0 .. 255
char SetAttError;//bool
char Crashed;//bool
char Paused;//bool
// -------------------------
// Systems
char Adiru1Valid;
char Adiru3Valid;
char Mmr1IlsValid;
char Mmr1GpsValid;
// -------------------------
// SFD Values
float Pitch;
char PitchValid;//bool
float Roll;
char RollValid;//bool
float AltBaro;
char AltBaroValid;//bool
float AltMsl;
char AltMslValid;//bool
float Airspeed;
char AirspeedValid;//bool
float Mach;
char MachValid;//bool
float Groundspeed;
char GroundspeedValid;//bool
float LateralAcceleration;
char LateralAccelerationValid;//bool
float Hdg;
char HdgValid;//bool
float Trk;
char TrkValid;//bool
char TrueHdgTrk;//bool
float GlideSlopeIndex;
char GlideSlopeValid;//bool
char GlideSlopeSignal;//bool
float LocalizerIndex;
char LocalizerValid;//bool
char LocalizerSignal;//bool
float LocalizerCrs;
char LocalizerCrsValid;//bool
float NavFreq;
char NavId[8];
int NavToFrom;
int NavTunedRcvd;
// -------------------------
// SND Values
float FixBrg;
char FixBrgValid;
float FixDst;
char FixDstValid;//bool
float LegDtk; // Desired Track
char LegDtkValid;//bool
float LegXtk; // Cross Track Error in NM
char LegXtkValid;//bool
char LegTo; // To (or From)
char LegToValid;//bool
float ActWptBrg;
char ActWptBrgValid;//bool
float ActWptDst;
char ActWptDstValid;//bool
char FixCalc;//bool : 1 = ISIS calculates Brg and Dst from Ppos and PosFix
char LegDtkCalc;//bool : 1 = ISIS calculates Dtk from PosFrom and PosTo
char LegXtkCalc;//bool : 1 = ISIS calculates Xtk from PosFrom and PosTo
char LegToCalc;//bool : 1 = ISIS calculates To from PosFrom and PosTo
char ActWptBrgCalc;//bool : 1 = ISIS calculates ActWptBrg from Ppos and PosTo
char ActWptDstCalc;//bool : 1 = ISIS calculates ActWptDst from Ppos and PosTo
float PposLat;
float PposLon;
char PposValid;//bool
float PosFixLat;
float PosFixLon;
char PosFixValid;//bool
float PosFromLat;
float PosFromLon;
char PosFromValid;//bool
float PosToLat;
float PosToLon;
char PosToValid;//bool
float PosNextLat;
float PosNextLon;
char PosNextValid;//bool
};