• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

SimConnect question...

  • Thread starter Thread starter ayk
  • Start date Start date

ayk

Messages
4
Hi,

just a "little" question: Is it possible to receive and send data to FSX without events? Just want to send Data periodely... all 10ms for example!? Need a DLL, which handles four functions: Open, Close, Read and Write... think funcnames discribe themselves... and now, for example import the dll in matlab and recall "Read" every 10ms. It worked well with FSUIPC-SDK, but wanna use SimConnect on a FPGA.

Any help? Thx a lot!
 
You can ask the data by period

RequestDataOnSimObject(DATA_REQUESTS.FLIGHT_DATA_VALUES, DEFINE_ID.FLIGHT_DATA_VALUES, SimConnect.SIMCONNECT_OBJECT_ID_USER, SIMCONNECT_PERIOD.SECOND, 0, 0, 10, 0) // every 10 second

However it will rise an event and received in an handler. In that handler you can send the data. It is not exactly what you want but it is very similar.

José
 
Thx 4 reply!

I need a function which ill call myself in a while-loop. This function has to return the, for example, "elevator position". Need this function, cause want to build a DLL which will be included into labview. Just tried with callbacks and without, got bad lags.
 
Just looked again to the original question and you stated 10ms that is 100 Hz try with 20 Hz. What happens when you put all simconnect related operation in a separated thread?
 
Don't forget that in FS2004 and bellow, fsuipc went to the FS inners to get the vars. Now FSUIPC also relies in Simconnect and all is based in TCPIP. I believe that in FS2004 FSUIPC update frequency was FPS related but Pete can confirm that.
 
Don't forget that in FS2004 and bellow, fsuipc went to the FS inners to get the vars. Now FSUIPC also relies in Simconnect and all is based in TCPIP. I believe that in FS2004 FSUIPC update frequency was FPS related but Pete can confirm that.

WideFS update frequency was related to the FPS, yes, but for FSUIPC itself it varied according to the data in question. Some was related to the visual frame rate, some to the simulation engine cycle rate, and some were just direct memory accesses so were independent of rate. The IPC polling from clients could of course occur at almost any time, but tended to be regulated by the fact that they go through the main FS window processing routine, so are subject to when that gets time to handle them.

However, for most purposes and best (least jerky) results, it is best always for the applications to attempt to synchronise their polling with the FS visual frame rate. A suitable way to do that, generally, is to set the frame rate limiter to something sensible, like 20 or 25 fps, and set the application polling interval to achieve the same, i.e. 50 or 40 mSecs.

Incidentally, for local SimConnect clients such as FSUIPC, the default interchange method will be Named Pipes in FSX Acceleration Pack and SP2. It is much more efficient than TCP/IP and I am getting good results now. When used on the same PC, I think named pipes effectively use the same memory-sharing system as FSUIPC3, DDE and so on. Named Pipes can be used over a Network too, but then it is carried by TCP/IP so no improvement is offered for remote SimConnect clients -- possibly the reverse in fact with another Windows layer to get through.

Regards

Pete
 
At least the firewall problem for localhost is gone. Can't understand why in a network the named pipes are carried over tcp/ip since they can be carried over SMB with no problems, except that the standard ports 138/139 are usually closed by firewalls. Have to investigate if they are carried by SMB over TCP/IP.
 
At least the firewall problem for localhost is gone. Can't understand why in a network the named pipes are carried over tcp/ip since they can be carried over SMB with no problems, except that the standard ports 138/139 are usually closed by firewalls. Have to investigate if they are carried by SMB over TCP/IP.

I don't know the term "SMB" I'm afraid. I don't know much about "Named Pipes", only what the Simconnect guy in the FS team told me. ;-)

Pete
 
Back
Top