ZKV1000 just after booting, installed in the Lancair 235 (all other instruments removed)
other pictures available here
Thanks to the modeller of the GDU104X project "Farmin/G1000"(can't remember who, if he/she can tell me...) I can continue the work began many years ago with a nicer (and working) 3D model instrument. Thanks to him/her for the SVG basis file too.
Thanks to Hooray's nice efforts, and some examples ans snipsets of code here and there from the Canvas team.
Thanks to all FlightGear community for the funny project I let too many years off side...
The first ZKV1000, which was completly XML animated, was completly abandonned. Moreover the Nasal code became unmaintanable from my point of view. Not sure this one is better, but I think it is at least more modulable.
The origin is to simulate a Garmin Primus 1000, as near as possible of the documentation found.
But as we are in a simulation, the zkv1000 is definitly not a replica of the well-known G1000, as it takes the liberty to be integrated with some features that doesn't exit in the real device, as well as some real features aren't scheduled to be implemented. But, it should be easy to add or remove features in order to get the real device. This is GPL-2 license though :)
There is no intention to provide a fully qualified G1000 in order to train or so, but this should be possible to be done from the zkv1000.
I'm particulary looking at these points:
Note: this is not because the progress bar show 100% that it means it is 100% bug free :) Please report bug at seb.marque@free.fr.
Somewhere in the XML configuration of your aircraft, put only few lines
zkv1000
Nasal namespaceIn the <nasal>
place of your aircraft configuration
<zkv1000>
<file>Aircraft/Instruments-3d/zkv1000/zkv1000.nas</file>
</zkv1000>
Actually this is where everything begins, please have a look at this code, it would help you to follow the script.
Specifics values for aircraft can be set via the aircraft configuration, in the <instrumentation>
section, just add a section <zkv1000>
and set here the needed values.
To see the Vspeeds bugs or the IAS background color change (Vne), set the corresponding V-speeds in knots by adding in your <instrumentation><zkv1000>
section the following lines (here are the numbers for the Lancair-235, values are not to be used in real life).
If not set, defaults to 999 knots
<alerts>
<Vx>99</Vx>
<Vy>110</Vy>
<Vr>65</Vr>
<Vglide>80</Vglide>
<Vne>170</Vne>
</alerts>
To tells the zkv1000 which kind of engines equip your aircraft, and the associated EIS
<eis>
<type>single-engine</type>
</eis>
Defaults to none
, available entries are the .nas
files located in Nasal/EIS/
directory.
If you want to add yours, just copy the Systems/EIS/single-engine.svg
, modify it to fit your needs, and refer to it in a function named displayClass.showEIS
, another very important function is displayClass.updateEIS
(example in zkv1000/Nasal/EIS/single-engine.nas)
In the definition of your flightdeck (here are the values for the installation in the Lancair 235 in which I develop the device) put it everywhere you want to
<model>
<path>Aircraft/Instruments-3d/zkv1000/pfd-pilot.xml</path>
<offsets>
<x-m> -0.023 </x-m>
<y-m> -0.235 </y-m>
<z-m> -0.028 </z-m>
</offsets>
</model>
<model>
<path>Aircraft/Instruments-3d/zkv1000/mfd.xml</path>
<offsets>
<x-m> 0.03 </x-m>
<y-m> 0.06 </y-m>
<z-m> -0.028 </z-m>
<heading-deg> -15 </heading-deg>
</offsets>
</model>
You can put as many devices as wanted, but generally they are two (PFD+MFD) or three (2 PFD+ 1 PFD), can be only one which is useful when you just want the PFD or the MFD in your cockpit.
The device are identified by a name, which should be unique unless they won't be independant.
This name is set by one of the property in the XML model file (instrumentation/zkv1000/<NAME>/status
), which is a property telling if the device is switched off or not (or in reversionnary mode, later).
Actually there are only two "types of display": MFD or PFD, which is known by the first 3 letters of the name (case sensitive!)
Other devices as keyboard or non-display can also exists, as long as they don't have a status
property...
Not sur I'm clear on this point though :)
You can use the multikey (souvenirs, thanks to Melchior having that much expended this feature years ago :)) service by typing:
:zo
The :z
will be the multikey entry for all multikeys of the zkv1000.
ZKV100O xxx init
message (xxx = MFD or PFD), this is likely the sim is paused (press p
by default to stop the pause).ZKV1000 xxx init
message, something wrong happened, time to check console