NDB at airport but outside of Airport element?

I am working on adding an NDB to a scenery location that does not exist using an airport with a made up ICAO. If I add an NDB within the Airport element the NDB shows up but the range is much less than I set:

<Ndb type="HH" lat="30.00000000000000" lon="-140.00000000000000" alt="0.00000000000000" frequency="370.00" range="300N" region="US" ident="NAN" name="NAN"/>

I tried putting this string outside of the Airport element using the example of the VORs at the bottom of the sample SimpleNavData files in the SDK – as I thought perhaps since the SDK says if you put it inside the Airport element it’s a terminal NDB and perhaps that limits the range? – but when rebuilding the package that line was deleted from the XML so I assume the formatting outside of the Airport element for an NDB is different.

Can anyone offer any guidance on how to do that?

And before anyone says 300nm is too far of a range for an NDB to begin with, according to https://www.casa.gov.au/sites/default/files/non-directional-beacons-associated-automatic-direction-finding.pdf over water NDB range can be as high as 600nm and my NDB is meant for over water use :slight_smile:

I believe there is a bug in the sim still that maxes out range of NDBs at 30NM

1 Like

I don’t know about your problem here, but, regarding your NDB line getting deleted, there used to be a bug in the compiler that would delete REIL lighting on secondary runways when saving the airport xml. So what I would have to do is save the scenery, and then add the code back into the airport xml before I hit the “Build Package” button. And that worked for keeping the code in the xml until I edited it and saved it again.

1 Like

That is so frustrating!

Thanks, I’ll try that!

Okay, does anyone know if the NDB formatting changes outside of the Airport element? Using FlyingsCool5650s advice I think I’m able to build the package without the NDB disappearing, but it’s totally gone from the scenery once I put the package into community. I’m wondering if the format needs to change?

1 Like

Well, for one, I think your region is wrong. What airport area are you working in? For instance, the old CHERN NDB was in region K6. You would get the region from the CIFP.

I think it also could use a magvar.

Here’s an old FSX NDB code for CHERN

<Ndb
   lat="42.8234249353409"
   lon="-71.6022165119648"
   alt="217.999F"
   type="MH"
   frequency="0359.00"
   range="37.51N"
   magvar="16"
   region="K6"
   ident="AS"
   name="CHERN (NASHUA)">
</Ndb>

https://www.faa.gov/air_traffic/flight_info/aeronav/digital_products/cifp/download/

From this post

Approach code with the wrong fixRegion Ident will compile but the GPS/FMC receiver will not display the approach chart correctly in FS

I imagine other issues like you’re seeing also ensue.

I think he’s wrong about MS creating the region codes, you can find them in the CIFP as they are in FS, i.e. CHERN is in K6. As he notes, the range across the US from West to East, K1-K7, with the East coast being K6. Sorry, I can’t find the map for it.

Nope, not by timezone. You’ll have to find an NDB near you and check the CIFP. (MEDFORD (MEF) on the west coast is in K1).

If you’re using it to create an NDB approach, here’s an example from FSX for CHERN

<Approach type="NDB" runway="14" designator="NONE" suffix="0" gpsOverlay="TRUE" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" altitude="1800.0F" heading="122.901642" missedAltitude="3400.0F">
	<ApproachLegs>
		<Leg type="IF" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" recommendedType="TERMINAL_NDB" recommendedRegion="K6" recommendedIdent="AS" altitudeDescriptor="A" altitude1="1800.0F" />
		<Leg type="CF" fixType="RUNWAY" fixRegion="K6" fixIdent="RW14" flyOver="FALSE" theta="0" rho="0.0N" magneticCourse="139" distance="4.1N" altitudeDescriptor="A" altitude1="250.0F" />
	</ApproachLegs>
	<MissedApproachLegs>
		<Leg type="CA" magneticCourse="139" altitudeDescriptor="+" altitude1="600.0F"/>
		<Leg type="DF" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" flyOver="FALSE" turnDirection="R" altitudeDescriptor="+" altitude1="3400.0F" />
		<Leg type="HM" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" turnDirection="L" magneticCourse="139" time="1" />
	</MissedApproachLegs>
	<Transition transitionType="FULL" fixType="VOR" fixRegion="K6" fixIdent="MHT" altitude="3400.0F"> 
		<TransitionLegs>
			<Leg type="IF" fixType="VOR" fixRegion="K6" fixIdent="MHT" /> 
			<Leg type="TF" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" magneticCourse="0" altitudeDescriptor="+" altitude1="3400.0F" />
			<Leg type="PI" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" turnDirection="L" recommendedType="VOR" recommendedRegion="K6" recommendedIdent="MHT" theta="270.3" rho="10.6N" magneticCourse="4" distance="10.0N" altitudeDescriptor="+" altitude1="3400.0F" />
			<Leg type="CF" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" flyOver="FALSE" recommendedType="VOR" recommendedRegion="K6" recommendedIdent="MHT" theta="270.3" rho="10.6N" magneticCourse="139" distance="8.0N" altitudeDescriptor="+" altitude1="1800.0F" />

		</TransitionLegs>
	</Transition>
	<Transition transitionType="FULL" fixType="WAYPOINT" fixRegion="K6" fixIdent="MUGGY" altitude="1800.0F"> 
		<TransitionLegs> 
			<Leg type="IF" fixType="WAYPOINT" fixRegion="K6" fixIdent="MUGGY" />
			<Leg type="TF" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" magneticCourse="0" altitudeDescriptor="+" altitude1="1800.0F" />

		</TransitionLegs>
	</Transition>
	<Transition transitionType="FULL" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" altitude="3400.0F"> 
		<TransitionLegs> 
			<Leg type="PI" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" turnDirection="L" recommendedType="VOR" recommendedRegion="K6" recommendedIdent="MHT"  theta="270.3" rho="10.6N" magneticCourse="4" distance="10.0N" altitudeDescriptor="+" altitude1="3400.0F" />
			<Leg type="CF" fixType="TERMINAL_NDB" fixRegion="K6" fixIdent="AS" flyOver="FALSE" recommendedType="VOR" recommendedRegion="K6" recommendedIdent="MHT" theta="270.3" rho="10.6N" magneticCourse="139" distance="8.0N" altitudeDescriptor="+" altitude1="1800.0F" />
		</TransitionLegs>
	</Transition>
</Approach>

Yall have kind of lost me here, where did CHERN come from? To answer the question about where am I working, I’m trying to put a test weather ship location about 200 miles west of Bermuda in the Atlantic. I have no idea how to work with the CIFP – how does one open that file?

Some or all (not sure which from my research) weather ships back in the day had an NDB on board, so I am putting a cargo ship model on the right spot along with a water runway and an NDB. Doesn’t need to be part of an approach. I had the NDB working if I put it inside the airport element, but like I said above I was concerned doing that limited the range the NDB could pick up so I was trying to move it outside of the airport element.

I took off from Bermuda and I had the NDB set to a 300 mile range, and like I said I was 200 miles out so I should have picked it up but did not. But if I start at the weather ship “airport” the NDB is there and receivable.

Since I didn’t know what you were working on, I used an example of an NDB I was familiar with and new I could get the code for.

The CIFP is just a text file. If you’re interested in developing approaches and SIDS and STARS, you’ll need an understanding of AIRINC-424 standard. The CIFP is a nav database that the various aviation authorities populate and then the GPS vendors use to update their databases. It contains all the airport and navaid and approach information. You can find more information at the link I sent you, search for jvile.

1 Like

NDB’s as I understand it tend to only reach about 30 to 60 nautical miles. On the ocean it may be different, but, the FS NDB’s are set up to act as they would on land… kind of.

Edit: I was wrong… the HM are 195 miles

EDIT2: Nevermind, I was right, I should read more critically. He found one that went 75 miles… That was it.

I made a mistake above: the adf radio will look for stations no more than about 80 nm from the player position, regardless of the signal strength encoded in the ndb definition in the bgl. apologies for the mistake.

1 Like

in the CIFP?

No, at FSDeveloper.com.

But, it looks like you don’t need that much information. When MSFS was released, my home airport KASH didn’t have any approaches. So I had to add them and did a lot of learning around that. They just got added in WUV, so I’ve got to check out what is there and see if I need to remove mine.

The CIFP is just a database file of all the navaid information in the US that you could have used for reference to create yours. Pretty much the only thing you’d need is an example of a nearby NDB to get it’s region code, since there doesn’t seem to be a good map available to figure it out.

so I built on this to revise my NDB entry to:

<Ndb lat="30.00000000000000" lon="-140.00000000000000" alt="0.00000000000000" type="HH" frequency="0370.00" range="300.00N" magvar="0" region="K7" ident="NAN" name="WEATHER SHIP NAN"> </Ndb>

but it still doesn’t show up – here’s my XML, any ideas? Dropbox - File Deleted - Simplify your life

I opened the CIFP file in Notepad++ and I saw some text but the formatting was kind of garbled… I’ll keep poking at it but the first impression wasn’t super helpful.

Magvar for the Bermuda area is about 15.5
Region id is TX

(like TXKF… duh :slight_smile:
sometimes I try too hard)

Even though you are putting 300Nauticl miles in for the range, MSFS will ignore that. It will likely be about 80Nm. But you can keep it there. Just don’t expect it.

If it was working when in the airport, I’d put it back in there, that’s not affecting its range.

Okay, thanks. Maybe I’ll just put a VOR on it. I didn’t want to do that since it was a) less historically accurate and b) too navigationally precise, but I feel like 80 miles might be too small of a footprint for my purposes for now, until/unless they beef up NDB ranges.

1 Like

Hi @TriggerMaru
Did you have success on create the VOR?
I would like to create a NDB at the airport I created.
Which file I have to edit? Which lines I have to insert?
Could you help?

I could need some help too. I want to make an NDB to create a weather ship in the ocean. I put the NDB-line into my scenery xml file and then built the package and of course put it into the community folder. Now the ship I have put in is there but when I turn the frequency in the radio, the ADF needle does not move. My scenery xml (compiled with 0 errors) looks like this:

<?xml version="1.0"?>
<FSData version="9.0">
	<!--SceneryObject name: RotatingBeacon_Tower-->
	<SceneryObject parentGroupID="1" lat="61.99976875567400" lon="-33.00002354217182" alt="24.00974406115446" pitch="0.000000" bank="0.000000" heading="-179.999995" imageComplexity="VERY_SPARSE" altitudeIsAgl="TRUE" snapToGround="FALSE" snapToNormal="FALSE">
		<LibraryObject name="{A04B772A-6BBF-4103-B263-D479BCCE71F5}" scale="0.055251"/>
		<AttachedObject attachpointName="" instanceId="{B3BDCE48-9225-4756-847F-D9582F819D27}" pitch="0.000000" bank="0.000000" heading="0.000000">
			<Beacon type="CIVILIAN" baseType="SEA_BASE"/>
		</AttachedObject>
	</SceneryObject>
	<SceneryObject parentGroupID="1" groupIndex="1" lat="62.00019734429311" lon="-33.00002380098007" alt="20.37081580143158" pitch="0.000000" bank="0.000000" heading="0.000000" imageComplexity="VERY_SPARSE" altitudeIsAgl="TRUE" snapToGround="FALSE" snapToNormal="FALSE">
		<SimObject containerTitle="sbml ship windsock part" scale="1.000000"/>
	</SceneryObject>
	<!--SceneryObject name: sbms cargo ship large 6-->
	<SceneryObject parentGroupID="1" groupIndex="2" lat="61.99999767743216" lon="-33.00002390534605" alt="0.00000000000000" pitch="0.000000" bank="0.000000" heading="-179.999995" imageComplexity="VERY_SPARSE" altitudeIsAgl="TRUE" snapToGround="TRUE" snapToNormal="FALSE">
		<LibraryObject name="{2AB5F20D-9E69-4C01-9C3C-1B07688A5D24}" scale="1.000000"/>
	</SceneryObject>
	<Group displayName="WeatherShipA" groupID="1" groupGenerated="FALSE"/>
<Ndb lat="62.0" lon="-33.0" alt="0" type="COMPASS_POINT" frequency="201.000" range="150000.0M" magvar="0" region="EG" ident="4YA" name="Alpha">
</Ndb>
</FSData>

Am I missing something?

Type compass_point should be used for terminal ndb as its range is limited (around 15nm). This may be in conflict with your range of 150 km.

Try to either use different type (HH, MH or H) or try to decrease its range to 15 nm to test.