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 Pneumatic G Seat

Discussion in 'DIY Motion Simulator Projects' started by Turbo Tim, Dec 29, 2021.

Tags:
  1. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Thanks Racingmat. Very interesting link you attached and good advice. Will have a look at aliexpress. Thanks again
  2. Jumping Coin

    Jumping Coin Member

    Joined:
    Aug 7, 2020
    Messages:
    93
    Balance:
    70Coins
    Ratings:
    +54 / 0 / -0
    You might have already figured it out the code part, but in case you still have questions about code, I adapted the servo code slightly to make it easy to update (just update the variables in the update section). Also, the code allows for setting a servo to operate on either the entire dof (i.e. -100 to 100) or just one side of a dof (i.e. -100 to 0 or 0 to 100). You can find the code in the first post in my build thread:
    https://www.xsimulator.net/communit...ct-for-beginners-no-power-tools-needed.15307/

    In case it helps, I've used servos to actually have a bit of movement as well using the same code base. In fact, I'm finishing up a 6ish dof gseat. It's a bit gimmicky but still very immersive. Hoping to post soon!
    • Like Like x 1
  3. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Thanks Jumping Coin. Noorbeast got me sorted on the code. Have had a look at your code always good to learn. Have read your post, good job I have picked up a few ideas from your project. Thanks again for your support. Will post more when I get my project finished.
    • Like Like x 1
  4. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Bought a simtools licence today. Whenever I try and register my email and reg key I get an error saying email or key not recognized. Is there a delay between buying and the registration working. Or have I a bigger problem?
  5. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Sorry not reg key. Licence key
  6. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Ignore my last got sorted. To embarrassed to admit what I did lol.
    • Like Like x 1
  7. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Hi guys. Progress, bought a simtool and plugin licence. Happy to support you guys and the great work you do. I am running dcs flight sim and have settings for heave and surge. Because I am using servos to compress a bladder I want the servos normal or start position to be fully deflected one way. I altered the arduino code to have there start position at 180 degrees which worked, however as soon as i launched simtools and dcs the servos went back to there mid position. I have searched the forum and cannot find or dont understand a solution. Any ideas. On the plus side I only have one bladder working as I am waiting for more servos to arrive. However even with one working the added sensation of climbing i.e. positive g is impressive. Thanks
  8. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,153
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    148,604Coins
    Ratings:
    +10,909 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    A couple of things you can try in the FAQs, to prevent negative values and movement take @yobuddy's advice and allocate a '0' for the min value for the likes of Sway and Roll.

    And there is @Jumping Coin's modified code.
    • Like Like x 1
  9. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Thanks noorbeast. I now have a better understanding of what jumping coins code does. Still getting my head round the terminology. After having a whiskey I wonder am I trying to solve a problem that isnt a problem. If the servos start from the midpoint I get a negative and positive g response. Makes it real easy to know if you are flying level. Thanks guys.
  10. MarkusB

    MarkusB Well-Known Member Gold Contributor

    Joined:
    Jun 30, 2015
    Messages:
    552
    Location:
    Germany
    Balance:
    4,213Coins
    Ratings:
    +596 / 2 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Arduino, Motion platform
    The solution of this is the „Map“ function in your Arduino code, which maps the [min/max] input values that your servo gets to the [min/max] output values, which define the actual servo rotation. Look for this function im your code and modify the parameters, so that they fit your needs.
    • Like Like x 1
  11. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Thanks for the replys guys. Used jumping coins code to get full travel from 0 to 180. Got surge pretty well dialled in using the gain adjustment in simtools. Struggling a bit to get heave working to simulate g in a banked turn (pulling back on the stick). I am getting full deflection on the servo at about 2g was trying to adjust this to get full deflection at about 7g. Am i correct in trying to adjust this with the gain adjustment in sim tools? Anyway making progress and learning as I go. Couldnt do this without you. Thanks again for all the support.
    • Like Like x 3
  12. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,153
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    148,604Coins
    Ratings:
    +10,909 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    It would likely help if you post pictures of your settings and outline what you are trying to do.

    Generally Gain is how much the rig will react to changes in the input from the game. But when you say 'full deflection' it sounds more like an issue with axis range, is that what you mean? If so that is likely a combination of Axis Allocation and Tuning Center settings, not Gain.
  13. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Fair point noorbeast. Heading to bed. Will give it a lash tomorrow and provide more definition. Thanks again.
  14. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    So reference previous post. I am starting off very simply. Trying to Replicate positive g and acceleration in DCS flight sim. Axis assignments are as shown below.
    upload_2022-1-11_16-23-7.png

    Am i correct in using heave to replicate positive g force i.e. pulling hard into a turn or loop and surge for acceleration?

    Changed the filter settings for axis 2a surge as below, this got me from hardly any movement in the servo to
    something that is ok for now.

    upload_2022-1-11_16-25-13.png

    My problem is in axis 1a Heave, as soon as i pull back on the stick at all, the servo deflects to its full range of motion 180 degrees of travel. Tried changing the gain for this axis to .5 this however just made the servo deflect to half its range under the same g condition in the game.
    So my question is how do I make the heave servo respond more proportionally to g load i.e full deflection of the servo at about 7g not 2g.
    Hope this make sense. Let me know if I need to clarify anything.
    Thanks Guys
  15. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Sorry noorbeast didnt answer your question.
    " But when you say 'full deflection' it sounds more like an issue with axis range, is that what you mean?"
    I dont really understand what you mean by axis range, when I say full deflection I mean if a servo has an operating sweep of 180 degrees travel it moves from 0 to 180 degrees which i would understand as the physical axis range. Not sure if that helped.
  16. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Disregard when I said "Changed the filter settings for axis 2a surge as below, this got me from hardly any movement in the servo to something that is ok for now." Its not correct either. I am getting this servo operating when I am pulling G and not accelerating.
  17. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,153
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    148,604Coins
    Ratings:
    +10,909 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    That is what I thought, what you describe as full deflection is the physical axis range from 0 to 180 degrees.

    Grab a copy of the SmTools manual and keep it handy for reference: https://www.xsimulator.net/community/faq/rtfm-start-with-the-official-simtools-documentation.117/

    Then see the motion profile tuning tips in the FAQs: https://www.xsimulator.net/community/faq/steps-to-create-a-motion-profile.228/

    Keep in mind that the purpose of a motion rig is not really to try and recreate all real world forces, but rather to exploit physiological and psychological processing weaknesses by supplying enough believable cues to have the brain accept something as real, even though you know it is not, with the brain itself filling in gaps that a rig actually can't provide.

    Perceptual context matters. For example IRL if an aircraft is in long sustained dive any unconstrained passengers will experience that as weightlessness, while the strapped in pilot will have the tactile sensation of aircraft movement relative to the seat and harness.

    I say that because your rig can't actually produce 2Gs, let alone sustain 7Gs. But what you can do is trigger cues relating to a gentle turn Vs a sharp turn. Those cues can include mixing roll, pitch, sway, surge and heave within a single axis range (0 to 180 degrees). Fortunately SimTools can mix those on the fly, what matters is refining the motion profile for your rig and you do that by tuning each individually, then turning them all on and tweaking from there. Keep in mind the limits of a single axis range (0 to 180 degrees) may actually be shared between roll, pitch, sway, surge and heave

    You can cheat a bit, even more so for a flight game, by allocating a % total for the axis range that is more than 100% of the actual physical range (0 to 180 degrees), that is because, say for general aviation, it is very unlikely all the mixed axis forces would be at their full % allocated of the actual range at the same time. If you do over allocate an axis range too far SimTools will clip motion, much like a FFB steering wheel will clip feedback if over saturated.

    In some ways building a rig is the easy part, as refining a good motion profile is part science and part art, the latter often influenced by personal preferences, given a motion rig can't actually recreate all real world forces, particularly those that are sustained, and instead must trick the user's brain to fill in the gaps with cleverly crafted cues.
    • Like Like x 1
  18. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    Thanks for your response noorbeast. I was in the middle of rereading the user manual as you posted. Had a look at the virtual axis screen was getting max deflection in the heave axis with very little stick movement which backed up what i am seeing. Very little movement in the surge axis which also is what i am seeing, so that was good learning. Ran the tuning center and took off with full burner then pulled max g etc. This improved things however I have now gone the other way in heave and cant get full deflection under max g. So making some progress. I take it you cannot manually tweek settings in the tuning center?
    Thanks again for your help. Makes all the difference.
    Cheers mate have a good one.
  19. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,153
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    148,604Coins
    Ratings:
    +10,909 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    You can and where necessary should manually tweak TC values, in some case you may want a different Max than Min value for particular types of effects.

    See p.79 of the manual, with the TC check box selecting “green” (Balance also default) makes your max value equal to the opposite min value, selecting “blue” (Capture) captures the max/min values coming from the game, select “red” (Off) if you do not want to change the DOF while capturing live data, or manually set values.

    The higher a TC value the gentler the response, over a greater range, the smaller the value the more aggressive the response, but over less of a movement range.
  20. Turbo Tim

    Turbo Tim Member

    Joined:
    Dec 26, 2021
    Messages:
    38
    Balance:
    159Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    Arduino
    That worked a treat noorbeast. After much reading up on the tuning center from your links I ended up with the settings as shown below. Might be a good starting point for the next person trying this type of g seat set up.
    Thanks again guys for all your help. Will hopefully finish up the build over the next few days and will post some pics. Even in this lashed together state of build it is impressive the amount of immersion this adds.
    upload_2022-1-12_17-53-43.png

    Obviously am only using and have tested the Heave and Surge settings
    upload_2022-1-12_17-54-30.png