Jump to content
The simFlight Network Forums

delay in serial communication.


Recommended Posts

This is not really a big problem. I am more looking for adviced..  if it is posible.

I am using an arduino to control yoke, throttle, rudder, brake axis. 

I send the data to lua script, that uses ipc.control  commands to drive them.

I use regular intervals of time to send the data, if there is value change ( 50ms for yoke, 100ms for throttle...).

There is no problem while fps in simulator is above  aprox 20-25fps

If fps falls below 20fps,  the axis movement start to work with delay. I supose the serial buffer is being full and it is fps dependent.

 

I think in some solutions:

1.- Use  bigger delays in arduino code always. Somthing that works from 10fps... so never will be a problem. But I will have low axis update frequency .

2.- Send the actual framerate value to arduino, an make the delays dependent on this value. Is there an fps offset I can send to arduino? I cant find it in the offsets list.

3.- use arduino as a windows joystick, so I don't have to send any value. Only setup the axis in the simulator. 

 

What route should  I follow?

What people usually do? 🙂

Thanks in advanced.

Arturo.

 

 

Edited by alioth
Link to comment
Share on other sites

11 minutes ago, alioth said:

If fps falls below 20fps,  the axis movement start to work with delay. I supose the serial buffer is being full and it is fps dependent.

What version of FS or P3D? How many cores do you have on your Processor? Are they all enabled for the Sim (i.e. no "AffinityMask"?

FSUIPC does everything it can to get things running, but it will always give the flight sim priority. It would not be right for FSUIPC to make the Simulation performance worse. The whole point of flight simulation is to simulate smooth flight, after all!

15 minutes ago, alioth said:

What route I should follow?

Whichever works best for you. For the fps, check the offsets list -- it is there. I don't recall the actuall address. It isn't a plain number, you have to divide it into another number. Details are in the offsets list in your FSUIPC Documents folder.

16 minutes ago, alioth said:

What usually people do?

Best to adjust your sim settings so that frame rates never go below 20 fps. After all, below that it isn't a good experience, is it?

Pete

 

Link to comment
Share on other sites

Pete, you are faster than mi processor!

Quote

What version of FS or P3D? How many cores do you have on your Processor? Are they all enabled for the Sim (i.e. no "AffinityMask"?

P3D v4.3      Processor is  i7 2700k  4 cores, 8 threads with hyperthreading enabled.   The last time I edited something about AffinityMask was in FSX times. So It should be as default in p3d.

For your words I feel that my thoughts about the delays make sense. And everything is working as it should. So, I am happy for this.

Quote

Best to adjust your sim settings so that frame rates never go below 20 fps. After all, below that it isn't a good experience, is it?

True. But If I can make something just in case fps drops for something like  Orbx..  or worse.. Orbx + heavy weather..

I have found the offset,  0x0274.  I will try the second solution.

Thanks. 

Arturo.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.