1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  3. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  4. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules

Question Expected update rate on UDP

Discussion in 'SimTools Pro & Entertainment Version' started by Bjarte Myklebust, Oct 2, 2020.

  1. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Hi,

    Simulator
    1. DIY
    2. DOF (Number of axles ): 6
    3. Actuators (DIY, SCN5 etc.): Omron servoes
    4. Interface (Arduino, SCN, Mega, DIY etc. ): Omron motion controller @2ms cycle time

    SimTools
    1. Version: 2.4
    2. Game Plugin: Assetto Corsa/Assetto Corsa Competizione
    3. Settings (Relevant ones)
    4. SimTools Licence type: (should be Pro) Pro

    I'm getting an update rate of 67 hz or 67 packets/s. (15ms between each UDP packet) from Simtools game engine.
    Even if I set the update rate to 7ms.
    Each dof is set up to one axis with 100%. (No mixing, and no filters)
    The kinematic is programmed in the motion controller.

    The interface output: <Axis1a>;<Axis2a>;<Axis3a>;<Axis4a>;<Axis5a>;<Axis6a>;

    When measuring the time between each packet in the motion controller, it is steady at 15ms between each packet received. Also measuring the average over 1s. It does not matter if the game is in "idle" or in full action.

    So it does not look like a performance issue.

    Its quite annoying, since it does result in jerky movements in the rig.
    The servoes are quite dynamic, and are tuned quite stiff.
    The gears are also quite dynamic. (Planetery gears from Apex)

    PC spec: AMD Ryzen 9 3950x, 32Gb ram @3600MHz, RTX 2060 Super (Waiting for RTX 3090)
    (This computer is brand new and Windows 10/64 bit fresh install)

    Have the same results with this PC spec: Intel I7-8700, 32Gb ram @2600MHz, RTX 2080TI.

    Question: How can I improve the packet rate?

    Best Regards, Bjarte Myklebust
  2. SeatTime

    SeatTime Well-Known Member

    Joined:
    Dec 27, 2013
    Messages:
    2,574
    Occupation:
    Retired
    Location:
    Brisbane Australia
    Balance:
    28,370Coins
    Ratings:
    +2,844 / 39 / -0
    My Motion Simulator:
    AC motor, Motion platform
    Not that it really helps your situation, but I have not heard of any one with a similar issue. Just to clarify, you are using game data to test and not simtools 'output testing'?
  3. SeatTime

    SeatTime Well-Known Member

    Joined:
    Dec 27, 2013
    Messages:
    2,574
    Occupation:
    Retired
    Location:
    Brisbane Australia
    Balance:
    28,370Coins
    Ratings:
    +2,844 / 39 / -0
    My Motion Simulator:
    AC motor, Motion platform
    Also, I'm guessing that the interface output Ie. <Axis1a>;<Axis2a>;<Axis3a>;<Axis4a>;<Axis5a>;<Axis6a>; is as required by the Omron controller? Actually, a screen shot of your simtools interface settings my help.
    • Agree Agree x 1
  4. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Using game data to test yes. But have tested with simtools 'output testing' with same result.
  5. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    I'm using socket service in the Omron motion controller, so I do have full control of how to decode the data.

    Attaching a picture of the interface settings with 1ms update rate. Does not matter if I put any number from 1ms to 15ms. The packet interval is still 15ms, InterfaceSettings.PNG
  6. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,575Coins
    Ratings:
    +1,831 / 32 / -1
    I don't see how your output string could work when using decimal without delimiters. Hard to analyze though when you don't say what your controller model # is.

    Edit: Didn't notice ; as your delimiter on my small phone screen.
    Last edited: Oct 2, 2020
  7. Thanos

    Thanos Building the Future one AC Servo at a time... or 6

    Joined:
    Jul 6, 2017
    Messages:
    1,347
    Occupation:
    Electronics Engineer
    Location:
    United States
    Balance:
    2,699Coins
    Ratings:
    +1,043 / 9 / -0
    My Motion Simulator:
    AC motor, Motion platform, 4DOF, 6DOF
    UDP is packetized and of course a bit slower, its also affected by the network traffic from the PC itself...
  8. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Yes, but based on experience it should be no problem to transfer an UDP packet every 2-4 ms on an average computer. And since the behavoiur are similar on 2 quite different computers, it is not limited by processing power itself.
  9. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Have now tested with X-SIM, and there is no problem to get a packet each 5ms. (200 packets/s).
    I do like simtools as a software much more than X-SIM, but if nobody can help me to speed up the packet rate, I'm forced to select X-SIM.
  10. SeatTime

    SeatTime Well-Known Member

    Joined:
    Dec 27, 2013
    Messages:
    2,574
    Occupation:
    Retired
    Location:
    Brisbane Australia
    Balance:
    28,370Coins
    Ratings:
    +2,844 / 39 / -0
    My Motion Simulator:
    AC motor, Motion platform
    I don't use UDP only serial, so not a issue for me . Have you tried FlyPT -Mover? It also has UDP output.
  11. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Hi, thank you for suggesting FlyPT Mover. It does put out a high framerate if needed. Tested with 1000 packets/s with no problem. I will investigate further. The only concern is that FlyPT does use broadcast on UDP packets, so the packets will fly on all ethernet wires in the house.
  12. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    1,869
    Location:
    Portugal
    Balance:
    14,210Coins
    Ratings:
    +2,185 / 16 / -0
    My Motion Simulator:
    6DOF
    Hi,
    I have some people with this concern.
    Is it really important to control it? Could we notice severe slow downs on the network?
    I'm not using it right now, so I don't have experience there.
    I can add an IP.
    Right now, the broadcast is made to all the networks connected to the PC (more than one network board).
    And to all IP's.
  13. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Hi, would be perfect to be able to specify an IP address. Then the packets will go only between the gaming computer and the motion controller.
    • Like Like x 1
    • Agree Agree x 1
  14. yobuddy

    yobuddy Well-Known Member Staff Member Moderator SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Feb 9, 2007
    Messages:
    5,166
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    48,214Coins
    Ratings:
    +5,038 / 16 / -0
    • Like Like x 1
    • Informative Informative x 1
  15. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Thank you yobuddy!

    I have now tested with X-Sim, and FlyPT Mover.
    Even though I'm able to get a higher packet rate on both of them, it does not help much.
    It does look like the update rate of gamedata from AC and ACC is around 30-45ms. So the experienced delay is most likely in that end.
    It does not help to send several packets if the data in the packets are identical. I do not know why the data from AC and ACC is not updated more frequently.

    BR, Bjarte
  16. yobuddy

    yobuddy Well-Known Member Staff Member Moderator SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Feb 9, 2007
    Messages:
    5,166
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    48,214Coins
    Ratings:
    +5,038 / 16 / -0
    I think AC and ACC use memory mapped files, so they should get updated more than that?
  17. Bjarte Myklebust

    Bjarte Myklebust New Member

    Joined:
    Jul 18, 2019
    Messages:
    24
    Balance:
    46Coins
    Ratings:
    +7 / 0 / -0
    My Motion Simulator:
    6DOF
    Thank you for V2.5 update yobuddy!

    Fixed the jerky movement of the rig, and I have now tested with 10ms updaterate.
    Getting 100 packets/s so spot on.
    The values in each packet had also different values in each packet, so it has also fixed the update rate between Assetto Corsa and Simtools!

    Thanks again for the best software for motion platforms :)

    BR, Bjarte
    • Like Like x 2