after a long hiatus (3 years!) I felt like doing some flightgear aircraft modeling again. 3 Years ago when I started the panel for my Bo, I couldn't find a nice, modern, panel mount IFR GPS. The King GPS we have is ancient, and the Garmin 196, while nicely modelled, Is a VFR handheld. So I decided to start with this:
I know the GNS530 is already kind of outdated as well, but together with its smaller sibling, the GNS430 it's still much more widespread than its successor (GTN650/750). Also the GTN650/750 use touch screen interfaces, which I'm not really a fan of.
Right now this is very much work in progress. It's also the first time I wrote more than 5 lines of nasal, so I was basically learning the language while I wrote this. And the code looks it, I'm afraid (it's horrible!). Still, I think it's far enough to present it here and let people try it and send critique and suggestions.
Right now it is only available by public git from
- Code: Select all
git clone http://git.webcb.eu/GNS530.git
If there is actual demand I might make a tarball every now and then, but I think most people here probably can use git.
How to try it out
- clone the git repo into your Aircraft/Instruments-3d folder
- add the gns530.xml file into your 3d model.
- add the following code to your aircraft-set.xml (or aircraft-base):
- Code: Select all
<nasal>
...
<fg530>
## <file>Aircraft/Instruments-3d/GNS530/ND.nas</file>[/s] ## dependency on ND.nas removed on July 27th 2014
<file>Aircraft/Instruments-3d/GNS530/GNS530.nas</file>
</fg530>
</nasal>
- right now there are no requirements for the electrical system (the instrument is always on). This will change soon, and I'll update this line then.
What works (Updated July 27th 2014)
- COMM/NAV stuff, both using manual tuning with the left hand buttons and rotaries and automatic tuning by pressing the [ENT] button whenever a COM, NAV or ILS frequency is selected by the cursor in any of pages that are already implemented
- From the NAV page group the DefaultNav, Map and NAVCOMM pages exist:
- The DefaultNav and Map pages don't look quite right yet, since I still use modes already present in the ND framework. I'll look into adding new modes that look like the respective pages of the real gns 530 later (I'll have to dive into the ND code first).
- The NAVCOMM should work as advertised. If there is an active flightplan in the route manager, it shows frequencies for the departure, destination and alternate airports and allows autotuning by selecting one of the
frequencies and pressing the [ENT] button. If there is no active flightplan, the three nearest airports are displayed instead.
- The NRST page group shows the nearest Airports, Fixes (Intersections), VOR's and NDB's.
- Autotuning works where appropriate (VOR and Airport COMM frequencies)
- CDI, ENT and RNG buttons work where appropriate
- nothing else yet
next steps (not necessarily in that order)
- Create the Direct To page, both for manual entering of destination and for pressing the "Direct to" [-D->] button when
any item on one of the "NRST" pages is selected - create FPL page that allows looking at the route manager flight plan and activating any leg/waypoint (creating flightplans/routes will not be supported for quite some time)
- fix power control and require voltage at some bus
- implement night lighting
- create WPT pages so more detailed informations can be displayed for the items from the "NRST" page group
- create dedicated views for the ND framework so the DefaultNav and Map pages look appropriate
- make a "menu" page for the DefaultNav and Map pages so display of various info can be enabled/disabled (airports, intersections, vor's...)
- also make most of the buttons work (OBS, CLR (go to DefaultNav) ...
- clean up or even refactor large parts of the nasal code
what will probably not be implemented any time soon (if ever)
- PROC and VNAV page groups (only once everything above is 100% finished, which might never actually happen)
- remaining NRST pages (Nearest Center, Nearest FSS and Nearest Airspace, I don't even know how to get at that information from the flightgear nav database)
- AUX page group (mostly device setup and database update stuff)
- Most pages Menu's (except for DefaultNav and Map) which allow for detailed customization for many pages and views
further comments
I'm having some problems with the "instrumentation/nav/slaved-to-gps" property.
Whenever the slaved-to-gps property is set true, the selected-radial is set to the current route leg (or 0° if there's no active route). I'm not sure if it's flightgear doing this or one of the instruments I use (the ND framework?) If it is flightgear itself, there should be a possibility to disable that feature, since no mechanical HSI that I know of actually does this (glass cockpits probably do). Maybe somebody can comment on this?
Finishing up, I want to thank the guys that are creating the ND framework that I make use of in my instrument.
I'm looking forward to any comment (even nagative critique),
Christian