User Manual 70 EN
User Manual 70 EN
0 User Manual EN
XAnimCopilot 7.0
Animated Copilot for Boeing 737-800 Zibo/737NG LevelUp Series
(Windows/Linux/Mac)
Commands
The main part is a set of commands (animations with or without action) that can be used by the
pilot on his own, either using the keyboard or through another plugin (like XFirstOfficer) or
scripts/code. (see Commands section for details)
AI Logic
The other part is an AI Logic that uses those commands to assist the pilot during the flight, without
the need for a configuration work, as a Plug & Play concept.
This AI Logic includes a flight control capability that allows the copilot to takeoff the plane for you.
By default the AI Logic is enable but it can be completely disabled or disable by groups of actions,
so if you want to create your own flows and procedures, you can turn off AI Logic, and use only the
commands described above. (see AI Logic section for details)
Voice Command
The plugin includes a speech recognition engine that allows the pilot to give voice commands by
calling some action, procedures or adjustments. (see Voice Command section for details)
New in 7.0
Added Speech Recognition (Actions and Adjustment Commands, PTT, Debug, and more)
Added Probe Heat Toggle (New Action Command)
Added Hydraulic Pumps Toggle (New Action Command)
Added TCAS Toggle (New Adjustment Command)
Added Plugin Menu (AI Logic and Speech Recognition configuration)
Added Watchdog funtion (Automatic Reset Plugin on a freeze)
Added plugin pause when Sim paused
Improved Debug/Log info
Improved Parking Phase AI Logic
Fixed Altimeter and Speedbrake checks
More fixes and improvements
This plugin is free to use and distribute for non-commercial use, under the terms of the CC BY-NC license.
3 XAnimCopilot 7.0 User Manual EN
Installation
1. Download de XAnimCopilot_70.zip package.
2. Uncompress the file in any location of your choice (like desktop), in the uncompressed
folder you will find this sub folders:
\aircraft_objects_folder_Zibo
\aircraft_objects_folder_LevelUp
\aircraft_plugins_folder
3. Copy all files located in “aircraft_object_folder_Zibo“ to the Zibo aircraft "objects" folder
if you want to Copilot on the Zibo 737-800.
IMPORTANT: Previous versions users must do a full reinstall. (you can keep your checklist files only).
WINDOWS USERS: Will need “MS Visual C++ Distributable 2012 (x64)” installed on your Windows.
LINUX USERS: although I have added to my plugin the most necessary dependencies (libblas and
liblapack) for the speech recognition engine, depending on the linux distribution used you may
need to install other dependencies (such as gfortran), you can use the command "ldd lin.xpl" to
check if there are libraries not found by the plugin.
MAC USERS: There is an issue if you use the plugin “Skunkcraft”, that plugin looks like is using
audio in a exclusive way, and get in conflict with the speech recognition engine crashing audio
features, disabling that plugin solve the problem.
4 XAnimCopilot 7.0 User Manual EN
General Description
There are 3 Commands types and a set of Self Animations:
• Action Commands - These commands runs in 1 step and they perform an action on the
plane (ex: Taxi Light on/off action).
• Configuration Commands - These commands enable/disable some features described in
this manual.
• Movement Commands - These commands runs in 2 steps, first time you call the
command, copilot perform first part of the animation, second time you call the same
command, copilot will finish the animation (ex: Review Checklist), this commands are
usefull for create adjustments actions if you decide to code your own logic and
procedures, they do not perform any actions on the plane.
Important Note:
The XAnimCopilot commands do not modify the originals of the plane or your custom commands, you can
continue using those if you want to do the actions yourself as usual.
Using Commands
The simplest and most direct way to use the commands is to configure a key or combination of
keys to execute them, that can be done in the keyboard configuration section of Xplane and they
are separated by the type of command as shown in the image below:
Another way to execute commands is by others plugins (like XFirstOfficer), scripts or coding a
plugin, and also some of them can be called by voice command. (see Voice Command section for
details).
6 XAnimCopilot 7.0 User Manual EN
Special Commands
AI Logic
General Description
The AI Logic assist the pilot during the flight but do not replace him, the pilot remains responsible
for the flight and can perform all actions on his own or reverse the actions that the copilot
performs, he will won’t insist.
Trying to adjust it to the reality of what happens inside a cockpit, the copilot will wait for the right
moment to carry out his actions, understanding that if they have not been done yet, it is because
the pilot wants him to do it.
Also, in order for the copilot to be more realistic, the AI Logic includes in many cases some level of
randomization in the time and the order of execution, and in many cases, copilot will be delaied
for an action for give some time to the pilot to do it by himself if he want to.
The AI Logic works on a set of flight phases and apply actions/adjustments depending on them, in
next page you can find the defined phases (and his relations) and the actions/adjustments taken
on each one, also you can see Appendix C: “Some AI Logic Triggers”.
AI Logic (enable by default) or part of it can be enable/disable using a menu in the Xplane Pluings
menu, see detail below.
AI Logic Configuration
There is a XAnimCopilot menu in the Xplane plugins menu, you can enable/disable the complete AI
Logic with the option "AI Logic (master switch)" or enable/disable particular actions (APU Bleed) or
groups of actions (Pilot’s Side Lights), a white circle to the left of the option indicates that the logic
is enabled, finally, there is a "Log / Debug Level" option to encrease the log information, in case a
problem needs to be analyzed, configuration changes take effect immediately and are saved.
Enabl
e
8 XAnimCopilot 7.0 User Manual EN
9 XAnimCopilot 7.0 User Manual EN
10 XAnimCopilot 7.0 User Manual EN
The option "AI Logic (master switch)" is also a Command and you can configure a key to
enable/disable the AI Logic in Xplane keyword configuration section , so you don’t need to use
menu to do it.
General Description
The Copilot can speak to you his actions, adjustments and checklists, it use Xplane native Text-To-
Speak feature (TTS), this feature use your Operating System TTS configuration, so voice and
language that copilot speaks depends on your settings.
Custominzing Speech
You will find the “speechtexts.txt” file inside the “XAnimCopilot/speech” folder, in this file you
can define the texts that copilot will “speech” in most of his actions and situation, you can use
blank lines (no speech for that action/situation), any language text (you must configure the speech
engine for that language in your Operating System) and multi-text separated by “;” (copilot will
pick randomly what to “speech”).
For more information about the file syntax, options and tips, read “readme.txt” file inside
“XAnimCopilot/speech” folder or see Appendix A: “Custominzing Speech Details” in this manual.
Custominzing Checklists
The checklists are files like "checklist_X_Y.txt" in the "XAnimCopilot/checklist" folder, where the
“X” is the flight phase number and the “Y” is the number of the checklist, the number of checklists
and items within them is unlimited and can be modified by the user, both in quantity and content.
For more information about the file name syntax and the checklist items syntax, please read
“readme.txt” file inside the "XAnimCopilot/checklist" folder or see Appendix B “Custominzing
Checklist Details” in this manual.
Important Note:
This checklist procedure is just an acting, copilot is not checking anything, he just makes the calls and wait
your check or the timeout defined, and jumps to the next item.
12 XAnimCopilot 7.0 User Manual EN
Voice Command
General Description
The plugin includes a speech recognition engine, with this engine we can give orders to the copilot
by voice, giving orders by voice is equivalent to executing Commands as if we were doing it with a
defined key.
Actions Commands
Gear Up/Down (Landing Gear Toggle Command)
Flaps Up/1/2/5/10/15/25/30/40 (Flaps Position Command)
Checklist (Checklist Process Command)
Check/On/Cut Off/Off/Arm/Close/Set/Down/Auto/Continuous (Any of them “checks” Checklist Item)*
Pushback (ONLY using BetterPushback Plugin)
Engines (Start Engines Procedure Command)
Speed/Speed Check (Request Speed read on approach)
Altimeter (Request Altimeter read on approach)
Takeoff (Takeoff TOGA Power Command)
Wind/Condition (any or both) (Req winds info before T.O. or landing)
Autopilot (Active CMD A Command)
Left Clear (Check right side is clear)
*On checklist process, there are no corresponding word verification, so you can use any word in the list for any check.
Adjustment Commands*
Transpoder # # # # (Set Transponder code)
Altitude ##### (Set MCP Altitude)
Speed # # # (Set MCP Speed)
Heading # # # (Set MCP Heading)
*“# # # #” it means that you must say spelled numbers, for a 130 speed value you need to say “Speed one three zero”.
*“#####” it means that you must say normal values, for 25000 feets altitude you need to say “altitude twenty five thousand”
These are the necessary keywords for the commands to be executed, but the copilot recognizes
other words (very few) although they are not important for his actions, they are only to allow a
more natural speaking, some of the phrases you can use: “Pre-flight Checklist”, “Before Start
Checklist”, and so on…
Also, “Start Engines”, “Request Pushback”, “Landing Gear Up”, or you can simple use the
keywords alone.
In the same way as plugin Commands, a Voice Command can be requested at any time, however,
to avoid false positives (see “Speech Recognition Considerations “in this section), the plugin will
ignore Commands that do not make sense (such as requesting "gear down" in cruise phase), you
can check Voice Commands available on each flight phase on page 8 chart.
13 XAnimCopilot 7.0 User Manual EN
They are also independent of the IA Logic configuration, you can call a Voice Command for an
action that the IA Logic also performs, you only have to do it before it, for example you can
request "Flap Up" after takeoff although the takeoff flaps logic is enabled.
Voice Command feature can be enable/disable by a key or by the plugin menu, and there is also an
option to Force PTT (Push-To-Talk) using a custom defined key, see Voice Command Configuration
below.
Also, in the plugin menu you can enable/disable the Voice Command feature and define if you use
the PTT feature, if you enable PTT, it works with the key configure in the previous screen.
Finally, you will find a value for "Mic Sensitivity" in the xanimcopilot.cfg file (in the plugin folder),
you can set this value from 0.0 to 9.0 (accept decimals) the default is 6.5.
(see " Speech Recognition Considerations" for more details on its use)
14 XAnimCopilot 7.0 User Manual EN
Here is a list of recommendations to make the best use of voice commands and avoid as many
false positives as possible:
6. Try using headphones for simulator sound, this avoid the simulator's own sounds from
generating false positives.
7. Try to implement the concept of Sterile Cockpit Rule in critical phases of flight where you
need to call many Voice Commands (that requiring the engine to be "listening"
continuously), just like in real life, from taxi to 10,000 feet and from 10,000 feet to landing,
during those phases, try to avoid speaking, ambient noise and any unwanted sounds
(mute the TV!!).
8. Use the “Speech Recognition On/Off” command or the PTT (Push-To-Talk) feature to
control when the Speech Recognition is listening (something maybe unrealistic).
9. In a noisy environment or if you do not use headphones, try to reduce the mic sensitivity
and place the mic close to your mouth, a suitable value can be verified by debugging the
recognition (see next page), it should not appear (almost) the "Listening ..." indication
except when you speak a voice command.
10. Practice your pronunciation and the volume of your voice, and try different microphone
position, looking for your best combination.
To achieve a good balance of configuration, use the option "Show Recognition" explained on the
next page.
15 XAnimCopilot 7.0 User Manual EN
You can view this log in real time using Xplane's "Dev Console" option, as seen in the image below.
16 XAnimCopilot 7.0 User Manual EN
File syntax:
First Line: "---- XXXXXX ----" -> Describe in witch action or situation will apply the second line text.
Second Line: "yyy yyyy yy" -> Text that copilot will say.
IMPORTANT: if Second Line is BLANK, he will say NOTHING!
Example:
in file:
"--------- Autopilot Engage ----- "
"the autopilot is active my friend"
When copilot engage autopilot (by IA logic or by you calling the command) he will speech textually
"the autopilot is active my friend"
-----------------------------------------------------------------------------------------------------------------------------
Especial cases:
Value:
When First Line have "(+value)", copilot will add after the Second Line text the variable value.
Example:
in file:
"--------- Heading Adjust (+value) ---------"
"heading set to"
When copilot adjust MCP heading he will add the MCP heading value to the speech, so, if MCP
heading value is "231" he will say textually "heading set to 2 3 1"
-----------------------------------------------------------------------------------------------------------------------------
Units:
For some values you can define the UNITS that will be added after the value speech.
Example:
in file:
"--------- Speed Adjust (+value) ---------"
"speed adjusted to"
"--------- Speed Units (added after Speed Adjust value) ---------"
"knots"
When copilot adjust MCP speed he will add the MCP speed value to the speech, and after that, he
will add the units defined
if MCP speed value is "140" he will say textually "speed adjusted to 1 4 0 knots"
-----------------------------------------------------------------------------------------------------------------------------
17 XAnimCopilot 7.0 User Manual EN
Multi-Speech:
You can define more than 1 text in any Second Line, just separated with ";", copilot will pick
randomly one of the texts for the speech.
Example:
in file:
"--------- Autopilot Engage ----- "
"the autopilot is active my friend;autopilot engage;autopilot active;"
When copilot engage autopilot he will speech randomly one of the 3 defined.
-----------------------------------------------------------------------------------------------------------------------------
TIPs:
You can use any language for the text (your Operating System Text-to-Speech engine must
be configure with that language!)
You can use phonetic texts (useful to "say" words in a language with different language
settings)
You can use multi-speech with blanks (ex: "autopilot engage; ") sometimes he will speak to
you, sometimes no.
You can repeat text so you get some phrases more often (ex: "autopilot engage; autopilot
engage;autopilot active") about 2/3 times he will say "engage" and 1/3 times he will say
"active"
You can repeat blanks also (ex: "autopilot engage;;;;) about 1/5 times he will say "autopilot
engage" and 4/5 he will say nothing.
18 XAnimCopilot 7.0 User Manual EN
"checklist_X_Y.txt"
Where "X" is the flight phase where the checklist apply. (from 0 to 12)
Where "Y" is the order number for the checklist, no limits. (from 1 to 99 or more)
When you call the checklist procedure, copilot will pick next checklist ("Y" value) for the flight
phase ("X" value) you are.
If you call a checklist and there is no next checklist for that flight phase, copilot will pick the first
one ("Y" = 1) and start the checklist count again.
If you call a checklist and there is no checklist for that phase, copilot will tell you.
An so on…
19 XAnimCopilot 7.0 User Manual EN