Old 744 Forum

Archived posts

RealTraffic 1.0 beta and updated Foreflight 2.0 beta

Page: « < 1 2 3 4 5 6 7 > »

Author Post
Moderator
Registered: May 2009
Posts: 5140
Hi,

do VisualPSX and XView require TfcVel data from PSX in addition to TfcPos data? I think, when PSX is in external mode and receives TfcPos data only, the server will distrubute just that; it will not generate TfcVel data ejections as each PSX client computes the velocities on its own.


Cheers,

|-|ardy
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
I think you're on to something there Hardy... if the addon doesn't get the velocity vectors it'll be even more of a guessing game to interpolate. Perhaps you could output those always, regardless of who controls traffic? You're only sending those at 0.2 Hz anyway, no?

Cheers

- Balt
Member
Registered: May 2009
Posts: 418
Location: Australia
Hi Balt,

TrafficPSX already interpolates PSX traffic output to generate smoothly flying AI aircraft in FSX. You can see this working by using any of the PSX traffic scenarios. If it is not happening when your software is injecting traffic into PSX then perhaps PSX does not send traffic to addons when it is receiving traffic from one of them.

Perhaps I misunderstood your earlier posts. I thought you were saying that all your traffic should be injected directly into FSX by my TrafficPSX while you select 7 to inject into PSX.

Cheers,
_______________
Garry

Website: flightsim.garryric.com
Member
Registered: May 2009
Posts: 418
Location: Australia
It appears that we are all on line right now and my last post crossed yours. I don't have access to my source code at present and can't remember whether I use velocity data or not. I had to do a lot of smoothing to have the AI aircraft fly smoothly and accurately to match the TCAS display.
_______________
Garry

Website: flightsim.garryric.com
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
Hi Garry,

I suspect the critical question here is this: Are you making use of the TfcVel data to interpolate the positions? If you are, then it is clear why it doesn't work with RealTraffic: because PSX does not re-broadcast the TfcVel that I am feeding into it. It only sends TfcVel to its clients when it is making its own traffic.

In regards to the misunderstanding with "implementing your own traffic": I don't know how much traffic FSX/P3D can display, but I suspect its many more than 7. If you want all traffic to be displayed, simply listen to the network traffic on UDP port 49002 and follow my earlier post to decode the messages. You would then be able to display not only where the traffic is, but also what type, callsign, where it's coming from and where it's going to! That could be fun?

That's probably something for much later, first and foremost now it would be good to get the 7 PSX traffics (whether injected or now) showing correctly in FSX/P3D.

While I have your attention... :-)

I've noticed that FSX runs much smoother than P3D on my visual system machine. The takeoffs in P3D are actually quite ugly, it feels as if the aircraft is sticking to the ground, then suddenly jumps in the air at the same time as it pitches up, which is well after pitch up commands have been issued (and shown to work on the ADI/PFD).

Cheers

- Balt
Moderator
Registered: May 2009
Posts: 5140
Balt wrote
... because PSX does not re-broadcast the TfcVel that I am feeding into it.

Please disregard my last comment. I forgot that RealTraffic 1.0 does inject TfcVel. So PSX distributes both TfcPos and TfcVel. And I think the scenery generators do receive both TfcPos and TfcVel from the PSX server.

PSX actually does not need TfcVel if it already receives periodic TfcPos updates. TfcVel is designed for steering inputs. When traffic is externally steered, TfcPos updates are not necessary.

When PSX receives steering commands, it doesn't need position commands.
When PSX receives position commands, it doesn't need steering commands.

Sending velocity (steering) data to PSX makes sense only when the sender knows that a vector is changing, i.e. when a turn rate, groundspeed, or V/S is changing. If the sender doesn't know that, and just interpolates position data, then TfcVel injections are superfluous because PSX does the same job internally. You may consider this to relieve the network.


Cheers,

|-|ardy
« Last edit by Hardy Heinlin on Mon, 26 Jan 2015 08:47:54 +0000. »
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
Ok, I'll remove the TfcVel injection in the next release then. Thanks for pointing this out.

Cheers

- Balt
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
The first non-beta release is out. Please download your updates http://www.inside.net/ss/

Changes:
- Removed end of January expiration date
- Now displays and injects ground traffic
- Does not inject TfcVel any longer, just TfcPos.

Hardy: How many previous points are you using to interpolate traffic positions?

Cheers

- Balt
« Last edit by Balt on Fri, 30 Jan 2015 03:55:31 +0000. »
Moderator
Registered: May 2009
Posts: 5140
One point.


Cheers,

|-|ardy
Member
Registered: Aug 2014
Posts: 375
Location: Camberley, UK
Hi Balt,

Why do you want to inject ground traffic? Real TCAS doesn't show it...

Britjet
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
@Britjet: So the scenery generators can show them. Helps when sequencing yourself for takeoff I'd imagine. Someone requested it (OmniAtlas I think?)

The TCAS algorithm on what to display on the ND is written by Hardy. I don't know whether he considers ground traffic. Based on what I've seen, it does show on the ND, which I think you are correct does not happen in the real plane. Perhaps Hardy can simply not display traffic in the TCAS display that is moving slower than 30kts or so?

I could filter all these things accordingly as well. Maybe I need to look into writing my own scenery traffic injector code, the current ones don't seem to work anyway.

Cheers

- Balt
Member
Registered: Aug 2014
Posts: 227
Location: Sydney
Balt wrote
@Britjet: So the scenery generators can show them. Helps when sequencing yourself for takeoff I'd imagine. Someone requested it (OmniAtlas I think?)


- Balt


Yes, it is helpful, thank you for the update. Aircrafts do not suddenly 'disappear' into thin air now.

Injection of aircraft (visual) does not work with XP10, but I think that may lie more on the XVIEW programing side. I will test with VisualPSX.

Regards.
Member
Registered: Aug 2014
Posts: 375
Location: Camberley, UK
Hi Balt,

I see, that makes sense and I thought that might be the case.
If the scenery generators can be made to work it might indeed be good to see the aircraft on the taxiways etc. Either that or AI traffic on the ground and RW traffic when airborne..
As you say, a speed filter might be the answer...it really needs something that correctly emulates the real TCAS, I think? I imagine that the real TCAS doesn't allow targets to be shown if your own aircraft is "on the ground" and the target is showing less than (say) 200 ft above you...? It's probably not a speed filter...
I look forward to seeing the real aircraft, it will make the whole thing so much more realistic, and LiveTraffic works perfectly with it..

I don't see the FSX/P3D 9-second "flashes" any more with the new release, by the way..no doubt intentional..

Cheers

Britjet
Moderator
Registered: May 2009
Posts: 5140
In PSX the traffic never lands, that's why this ground check hasn't been a requirement until now.

I'll add this check to 10.0.2.


|-|
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
I have no idea why VisualPSX and all the other scenery injectors are not correcly showing the traffic. The TCAS in PSX is. And the traffic does get correctly re-broadcast as evidenced by my other program, the DFDR, correctly playing back traffic from DFDR files.

I've sent the details on how to implement even better traffic from the data RealTraffic provides, but I think Garry is away at the moment and can't work on it, and I haven't heard from the other ones.

Cheers

- Balt
Member
Registered: May 2009
Posts: 418
Location: Australia
The first thing to do is determine why PSX is not sending correct traffic data to addons when RealTraffic is injecting into it. Apparently there has been some improvement with your latest release. Try monitoring PSX output to confirm that all fields are being sent correctly. As you have noted, I can't check this myself for a while yet, but as nothing has changed in TrafficPSX there must be a glitch with PSX traffic output when RealTraffic is running.
_______________
Garry

Website: flightsim.garryric.com
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
Looking at the data is interesting. When PSX creates the traffic data, it sends a Qs450 every 5 seconds. Each of the airplane positions changes. If we're looking at this from the recorded data, that's what it looks like:


Qs450=0.6549857109708508;-2.134206123095403;59276;31357;0.653265667228483;-2.1474918018750317;60427;6470;0.6495558449936808;-2.139686180255598;42274;1753;0.6505521338880729;-2.1381692556528193;58059;1048;0.6482496279859017;-2.1319077039460144;62277;33782;0.6590267191943513;-2.1277241401414333;52371;25668;0.6514053660412621;-2.13673783233455;61115;120;
t=0.012s
Qs450=0.6549857109708508;-2.134206123095403;59276;31357;0.653265667228483;-2.1474918018750317;60427;6470;0.6495558449936808;-2.139686180255598;42274;1753;0.6505521338880729;-2.1381692556528193;58059;1048;0.6482496279859017;-2.1319077039460144;62277;33782;0.6590267191943513;-2.1277241401414333;52371;25668;0.6514053660412621;-2.13673783233455;61115;120;
t=2.626s
Qs450=0.6550748175729859;-2.134324208522493;59264;31357;0.6532911813013398;-2.1474238002396264;60415;6470;0.6496129139109835;-2.1396635359266956;42261;1753;0.6506182204419384;-2.1381538828084246;58047;1048;0.6483046464585882;-2.1319358424272563;62264;33782;0.6590108808819751;-2.127808801677147;52359;25668;0.6514647263532861;-2.136736257038234;61103;120;
t=7.656s
Qs450=0.6552462472208882;-2.1345514124451324;59241;31357;0.6533402670976561;-2.147292970098574;60392;6470;0.6497227071722795;-2.1396199683873673;42238;1753;0.6507453624768887;-2.1381243052565244;58024;1048;0.6484104949279826;-2.1319899805471767;62241;33782;0.6589804100043127;-2.127971676668487;52335;25668;0.6515789279635275;-2.1367332261700307;61079;120;
t=12.710s
Qs450=0.6554180518363079;-2.1347791433710164;59218;31357;0.6533894602590554;-2.1471618488582864;60368;6470;0.6498327405857601;-2.1395763019053753;42215;1753;0.6508727826112912;-2.1380946601361606;58000;1048;0.6485165749210091;-2.1320442414410223;62218;33782;0.6589498724758203;-2.1281349040618363;52312;25668;0.651693379368502;-2.1367301884074594;61056;120;
t=17.727s
Qs450=0.6555895837457529;-2.1350065428289637;59194;31357;0.6534385753360022;-2.1470309308204536;60345;6470;0.6499425993430206;-2.139532701092425;42191;1753;0.651000000491506;-2.1380650592014288;57977;1048;0.6486224865330795;-2.1320984205585756;62194;33782;0.6589193834194916;-2.1282978685131173;52288;25668;0.6518076491045817;-2.1367271552021254;61032;120;
t=22.744s
Qs450=0.6557606725152342;-2.1352333846839944;59171;31357;0.6534875635281054;-2.1469003461020897;60322;6470;0.6500521742841902;-2.1394892092947355;42168;1753;0.6511268897087932;-2.1380355318827657;57954;1048;0.6487281245265075;-2.132152464038108;62171;33782;0.6588889731341427;-2.1284604081197323;52265;25668;0.6519216236287043;-2.136724129569581;61009;120;
t=27.775s
Qs450=0.6559320680750724;-2.1354606632532445;59147;31357;0.6535366395639528;-2.1467695223086602;60298;6470;0.6501619457134651;-2.1394456358745026;42145;1753;0.6512540064619748;-2.1380059487529692;57930;1048;0.6488339519482926;-2.1322066087686906;62148;33782;0.658858508315658;-2.1286232353518697;52242;25668;0.6520358025303342;-2.1367210982475546;60986;120;


On the other hand when RealTraffic injects the data, PSX seems to echo the data twice (why is it doing that?) and it only updates every 9 seconds (whenever RealTraffic injects new positions).


t=0.023s
Qs450=0.6564757875813882;-2.136118063742696;0;27753;0.6564483348564225;-2.136070920296789;0;20577;0.656563194;-2.135968845;0;10847;0.6565560725870722;-2.1359415686449825;0;25442;0.6600121571120922;-2.135806699505176;105377;33780;0.658179034402288;-2.133286014521878;-6;31073;0.6582720267832636;-2.133149650668699;0;11707;
Qs450=0.6564757875813882;-2.136118063742696;0;27753;0.6564483348564225;-2.136070920296789;0;20577;0.656563194;-2.135968845;0;10847;0.6565560725870722;-2.1359415686449825;0;25442;0.6600121571120922;-2.135806699505176;105377;33780;0.658179034402288;-2.133286014521878;-6;31073;0.6582720267832636;-2.133149650668699;0;11707;

t=7.384s
Qs450=0.660080032;-2.135836200;105750;33800;0.656475928;-2.136117198;0;24100;0.656446257;-2.136071820;0;20300;0.656563194;-2.135968845;0;25500;0.656557958;-2.135937429;0;26100;0.657373027;-2.135066510;18200;4300;0.658181114;-2.133289765;0;30900;
Qs450=0.660080032;-2.135836200;105750;33800;0.656475928;-2.136117198;0;24100;0.656446257;-2.136071820;0;20300;0.656563194;-2.135968845;0;25500;0.656557958;-2.135937429;0;26100;0.657373027;-2.135066510;18200;4300;0.658181114;-2.133289765;0;30900;

t=16.469s
Qs450=0.660310416;-2.135932193;109250;34300;0.656465456;-2.136111962;0;17100;0.656442766;-2.136073565;0;19800;0.656563194;-2.135968845;0;7400;0.656557958;-2.135935684;0;25500;0.657456803;-2.134984479;19890;4200;0.658195077;-2.133310709;0;31200;
Qs450=0.660310416;-2.135932193;109250;34300;0.656465456;-2.136111962;0;17100;0.656442766;-2.136073565;0;19800;0.656563194;-2.135968845;0;7400;0.656557958;-2.135935684;0;25500;0.657456803;-2.134984479;19890;4200;0.658195077;-2.133310709;0;31200;

t=25.432s
Qs450=0.660399428;-2.135956628;111000;34700;0.656465456;-2.136111962;0;17100;0.656563194;-2.135968845;0;25500;0.656439276;-2.136071820;0;16400;0.656557958;-2.135933939;0;24400;0.657456803;-2.134984479;19890;4200;0.658200313;-2.133315945;0;31500;
Qs450=0.660399428;-2.135956628;111000;34700;0.656465456;-2.136111962;0;17100;0.656563194;-2.135968845;0;25500;0.656439276;-2.136071820;0;16400;0.656557958;-2.135933939;0;24400;0.657456803;-2.134984479;19890;4200;0.658200313;-2.133315945;0;31500;


I have upped the refresh rate of the RealTraffic data to 5 seconds for testing earlier, but that didn't make a difference, traffic still didn't show up via VisualPSX. I suspect the double sending of the data might be tricking VisualPSX into thinking the traffic isn't moving? Just a wild guess.

Cheers

- Balt
Moderator
Registered: May 2009
Posts: 5140
Hi Balt, what do you mean by "to echo"? Where is that "echo"?


|-|
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
The DFDR is recording everything PSX sends. When PSX makes its own traffic, the Qs450 strings are sent once every 5 seconds, as per above. But when RealTraffic is connected and injecting traffic, two copies of identical Qs450 string are sent separated by less than 10ms (the timing resolution I have arbitrarily chosen in DFDR to mark timestamps) and a maximum of 23ms. This looks like an "echo" to me. Maybe echo is the wrong word... it looks like PSX retransmits the traffic messages twice.

Cheers

- Balt
Moderator
Registered: May 2009
Posts: 5140
Balt wrote
two copies of identical Qs450 string are sent

Sent to which program?

To the DFDR?

Are you sure the double injection is generated by PSX and not by RealTraffic?


|-|
« Last edit by Hardy Heinlin on Wed, 28 Jan 2015 10:21:31 +0000. »
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
Sorry I thought that was evident... let me explain:

PSX has one client always connected for these tests: DFDR. DFDR records everything sent to it, and if the time elapsed between messages is larger than 10ms, it records a timestamp as well. That's how I'm timing the Qs450 messages being received by DFDR above.

When PSX generates its own traffic, one Qs450 message is received every 5 seconds.

When RealTraffic is connected, DFDR receives two identical Qs450 strings every 9 seconds, the injection interval of RealTraffic.

I just saw your edit, and that's a good question. I can't imagine why I'd be sending two traffic strings. I'll double check.

Cheers

- Balt
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
Hardy, I just had a look. RealTraffic positively sends the Qs450 string only once per 9 seconds.

Cheers

- Balt
Moderator
Registered: May 2009
Posts: 5140
I think I have found the cause of the double ejection, and it should be eliminated now in 10.0.2.

This double effect was in TfcPos and also in TfcVel.


Cheers,

|-|ardy


A minor problem in RealTraffic 1.0 beta: When the server disconnects or quits, and restarts, RealTraffic cannot reconnect until RealTraffic is relaunched.
Member
Registered: Jan 2013
Posts: 318
Location: YSSY
RealTraffic 1.1.14 is now out. It automatically reconnects now when PSX goes away, or when PSX is not there when it starts.

Hardy: This is the second production release, i.e. no longer beta.

Cheers

- Balt
Moderator
Registered: May 2009
Posts: 5140
Balt, I'll put a link to your add-ons on the Aerowinx site as soon as my head is free :-)


Cheers,

|-|ardy

Page: « < 1 2 3 4 5 6 7 > »

Old 744 Forum is powered by UseBB 1 Forum Software