mer
-
Posts
11 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Gallery
Downloads
Posts posted by mer
-
-
5 hours ago, Pete Dowson said:
See the FSX METAR string definition (but note that it isn't complete: upper winds and air temperatures are encoded separately after the @@@. Also there are subtle differences when WRITING the METAR strings. It was a nightmare trying to sort it out back in the day -- something I hope never to have to delve into again!).
SKY CONDITIONS (has an extension) Note cloud heights are coded: If NNN is 999 the level is 100,000 feet, otherwise it is 100 x NNN in feet. CCCNNN Where NNN is the coded height, and CCC is one of:: CLR or SKC - sky clear FEW - few clouds SCT - scattered clouds BKN - broken clouds OVC - overcast NTT - N/8ths cloud coverage of type TT, which is one of: CI Cirrus CS Cirro-stratus (maps to CI) CC Cirro-cumulus (maps to CI) AS Alto-stratus (maps to ST) AC Alto-cumulus (maps to CU) SC Strato-cumulus (maps to CU) NS Nimbo-stratus (maps to ST) ST Stratus CU Cumulus CB Cumulo-nimbus Note that not all of these cloud types are supported within Flight Simulator, so a number are mapped to those which are. This does mean that a write followed by a read of Metar data might not give identical strings. Flight Simulator extension: &TT000FTPQBBBI where: TT - Cloud type, one of: the list above (for example, CI or CB). If this entry is different from the NNN entry above, this entry will take priority. 000 - Unused. F - Top of cloud, one of: F (flat), R (round), A (anvil) T - Turbulence, one of: N - None (default), O - Light, L - Light, M - Moderate, H - Heavy, S - Severe P - Precipitation, one of: V (very light), L (light), M (moderate), H (heavy) D (dense) Q - Type of precipitation, one of: N (none), R (rain), F (freezing rain), H (hail), S (snow) BBB - Coded base height, the precipitation ends at this height, set to 0 for it to land on the ground I - icing rate, one of: N (none), T (trace), L (light), M (moderate), S (severe)
You'll note that there's no place for cloud depth. FSUIPC has to use estimates based on cloud type. Even so, I'm not convinced your post shows related values:
To compare properly, please enable some logging: In the FSUIPC INI file [General] section add these lines:
LogWeather=Yes
Debug=Please
LogExtras=x80Run the sim, find the log file, and show here a suitable extract. The log shows both the METAR and the decode into offsets etc. Here's an example of what you should show:
807289 Weather Read request (Nr Station) to area 5: Lat=51.47, Lon=-0.49, Alt=0.0, Req=1 807305 Weather Received (type 5 request, Nearest): "EGLL&A24 000000Z 30110KT&D900NG 300V302 30125KT&A1001LG 295V307 80KM&B-448&D3048 6CI328&CI001FNMN000L 20/12 15/12&A1001 Q1010 @@@ 34 15 301 25 | " 807305 WX Received in (16 mSecs), WX request type 5, Lat=51.4709, Lon=-0.4858, Alt=0.0m 809333 Weather Read request (At Aircrft) to area 4: Lat=51.47, Lon=-0.49, Alt=28.2, Req=2 809349 Weather Received (type 4 request, Interpolated): "????&A0 300729Z 30110KT&D900NG 300V302 80KM&B-424&D3048 1CU033&CU001FLLN000N 6CI328&CI001FNMN000L 19/12 Q1010 " 809349 WX Received in (16 mSecs), WX request type 4, Lat=51.4709, Lon=-0.4858, Alt=28.2m 811392 Weather Read request (Nr Station) to area 5: Lat=51.47, Lon=-0.49, Alt=0.0, Req=1 811408 Weather Received (type 5 request, Nearest): "EGLL&A24 000000Z 30110KT&D900NG 300V302 30125KT&A1001LG 295V307 80KM&B-448&D3048 6CI328&CI001FNMN000L 20/12 15/12&A1001 Q1010 @@@ 34 15 301 25 | " 811408 WX Received in (16 mSecs), WX request type 5, Lat=51.4709, Lon=-0.4858, Alt=0.0m 811408 >Change: Pressure=1010.0 mb 811408 >Change: Surface wind: to alt=3030ft, dir=301T, vel=10.0, gust=0.0, turb=0, shear=0, var=2.0 811408 >Change: Wind layer 1: to alt=6360ft, dir=301T, vel=25.0, gust=0.0, turb=1, shear=0, var=12.0 811408 >Change: Wind layer 2: remainder cleared 811408 >Change: Visibility[0]: range=49.7sm (80000m), from=-1390ft, to=8610ft 811408 >Change: Cloud[0]: type=9, from 3300ft to 7300ft (+/- 0ft), cover=1, turb=1, topshape=0 811408 >Change: Precip=0, base=0ft, rate=0, icing=0 811408 >Change: Cloud[1]: type=1, from 32800ft to 33000ft (+/- 0ft), cover=6, turb=0, topshape=0 811408 >Change: Precip=0, base=0ft, rate=0, icing=2 811408 >Change: Cloud[2]: remainder cleared 811408 >Change: Temperature[0]: alt=80ft, Day=19.0 C, NightVar=0.0 C, DewPt=12.0 C 811408 >Change: Temperature[1]: alt=3360ft, Day=15.0 C, NightVar=0.0 C, DewPt=12.0 C 811408 Results: FS98 Wind0: ground (82ft) to 2950ft AGL, dir 302M, vel 10, gust 0, turb 0 811408 Results: FS98 Wind1: 3030ft to 6360ft AMSL, dir=300T, vel 25, gust 0, turb 64 811408 Results: FS98 Wind2: 0ft to 0ft AMSL, dir=0T, vel 0, gust 0, turb 0 811408 Results: FS98 AmbientWind at PlaneAlt=92: dir 301M, vel 10 811408 Results: FS98 Vis: range =50sm, (raw value=4971) 811408 Results: FS98 Cloud1: type=9, from 3300ft to 7300ft (+/- 0ft), cover 1, turb 72, ice 0 811408 Results: FS98 Cloud2: type=1, from 32800ft to 33000ft (+/- 0ft), cover 6, turb 0, ice 2 811408 Results: FS98 Temp0: to 80ft, Day 19.0C, NightVar 0.0C 811408 Results: FS98 Temp1: to 3360ft, Day 15.0C
You'll see the decode DOES match what is arriving. Note that "the nearest" means the nearest weather station - EGLL here -- and "interpolated" is at the aircraft. I was at EGLL so they are pretty much the same.
There's also a GLOB setting which is used as default for unset stations, read at about the same time. Here's the entry corresponding with the above:
813451 Weather Read request (Global set) to area 1: ICAO="GLOB", Req=0 813467 Weather Received (type 1 request, AtStation): "GLOB&A0 000000Z 30110KT&D900NG 300V302 30125KT&A1025LG 295V307 80KM&B-424&D3048 1CU033&CU001FLLN000N 8CI328&CI001FNMN000L 18/12 05/04&A1025 Q0999 @@@ 34 5 301 25 | " 813467 WX Received in (16 mSecs), WX request type 1, ICAO=GLOB
Pete
Thank you very much. I was able to understand that the base elevations (lower altitude?) are 3300ft and 32800ft. But I could not follow how the top elevations (upper altitude?) were calculated as 7300ft and 33000 ft. Could you please help?
-
Hello,
How do we obtain Upper Altitude, Lower Altitude and Deviation values for clouds from the metar string? I need these to compare against the values FSUIPC reads
Sample cloud sub-strings
2CU058&CU001FNMN000N
6CI394&CI001FNMN000N
FSUIPC displays Lower cloud upper Altitude as 2987 and Lower Alt as 1768 with zero deviation.
For Middle cloud, the values are 12070 and 12009.
Thank you
-
Hello,
I tried to access the altitude values for aloft winds for Global weather using fsuipc offsets. But comparison with the metar string shows these values as wrong
My metar string shows 2 aloft winds : 27020KT&A2026NG 27025KT&A6026NG
So the altitudes should read 2026 and 6026 m respectively
But upon using offsets C10C,C11C I get values 6025 m and 6939 m
I also tried offset pairs C50C-C51C and CD0C-CD1C (after setting icaoid to glob and writing signature) but i still get the same wrong values
Could you guide me on how to do this correctly using C#-FSUIPC client?
-
Hello Paul,
I have another doubt.
Are both depth and altitude represented by the Upper Altitude parameter (defined as UpperAlt in NewWeather.h)?
I am trying to read the depth/altitude values for Global weather using fsuipc and the offset class from the FSUIPCClient made available by you.
On comparison with SimConnect's Metar string for global weather, I get the correct depth values (Last set global wind upper Alt - offset C4fc). But i am getting wrong altitude values (in this case there are 2 aloft winds and I am accessing the offsets C50C and C51C)
-
I noted that FSInterrogate has offsets for temperature/wind/cloud layer counts. Is there a dedicated offset that gives the number of visibility layers or should we determine this value based on one of the other counts?
Thank you
-
Yes I just fount NewWeather.h. Thank you very much
-
Thank you, I got that. For wind layers, i tried the same logic. Locations for surface wind layers are 0xC4fc-0xC508. That comes to 12 bytes (0x0c) per layer. Does the second layer therefore starts at c50e?
-
Yes, I am using C#, the code in UIPC_SDK_CSHARP Revision 1.13 packaged with FSUIPC5. The code is Scott McCrory and Bob Scott's, with improvements by you
I am making use of the fsuipc.cs file in that folder
-
How do I read the values from P3d when there is more than 1 layer of wind/cloud/temperature present?
The offsets mapped in FSInterrogate and the documentation provide data only for one layer of each of these parameters. An attempt to calculate the locations of other parameters and use the resultant offsets for querying them provides incorrect values.
For instance, when 2 cloud layers are present, the value of one can be accessed using locations 0xc680-0xc68e. But when i try to access the values for the 2nd layer from locations c68F-c69e i get the wrong readings.
Could you please guide?
Thank you
-
How does one access the offset address B800 to retrieve the metar string ? Is it possible to do so directly through a C# application?
I'm sorry if this was the wrong place to post the query. Could you guide me on where i might get help, if so?
extract altitude values from metar string
in FSUIPC Client DLL for .NET
Posted
I'm sorry I didn't absorb that the first time. Thanks a lot