{"version":1,"pages":[{"id":"aXBWj2iG9VwPjZmgTRzy","title":"Welcome to Yet Another Swerve Document","pathname":"/","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"Brought to you by Yet Another Generic Swerve Library (YAGSL)"},{"id":"gR7789RKPOm3Xvxvpb9u","title":"Resources","pathname":"/readme/resources","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Welcome to Yet Another Swerve Document"}]},{"id":"Eo0x9R4IZpCWP54FIcRY","title":"What we do","pathname":"/overview/what-we-do","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"We make your swerve drive run!","breadcrumbs":[{"label":"Overview"}]},{"id":"ekJEbS9pqnX1qSfWLDvO","title":"Our Features","pathname":"/overview/our-features","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Overview"}]},{"id":"XETdMK3BqzxmjTPloGOA","title":"Telemetry","pathname":"/overview/our-features/telemetry","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"U7B2OQQnIMu3ATKRCvdQ","title":"Simulation","pathname":"/overview/our-features/simulation","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"YAGSL-Example provides simulation out of the box!","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"unNCMsuIuiqmcplWfWdZ","title":"Lock Pose","pathname":"/overview/our-features/lock-pose","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"YAGSL has a helper for that!","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"Ve6F6aOigGfC4FL9QpNu","title":"Max Speed","pathname":"/overview/our-features/max-speed","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"This one is a bit complicated","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"yoRF5M3uMfwYAIxaWhUo","title":"Chassis Speed Discretization","pathname":"/overview/our-features/chassis-speed-discretization","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"More math...","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"BepT3QE4Iuf0Uqo0VlU8","title":"Vision Odometry","pathname":"/overview/our-features/vision-odometry","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"YAGSL handles odometry for you and extends it so you can add whatever data you want!","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"fngyUxM1kZf4guqWVq4r","title":"Heading Correction","pathname":"/overview/our-features/heading-correction","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"pMzADbjrmOyneqFQ4QvT","title":"Auto-centering Modules","pathname":"/overview/our-features/auto-centering-modules","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"Auto-centering modules could cause some unwanted jitter which is why it is disabled by default!","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"pzTHBGynOcJkqOvWnQap","title":"Offset Offloading","pathname":"/overview/our-features/offset-offloading","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"This is only supported on some motor controllers!","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"bgl8RjZMgQBQK8SXibXX","title":"Cosine Compensation","pathname":"/overview/our-features/cosine-compensation","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"This is helpful, sometimes","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"i0oiNZZdxgGxsFDGSDmh","title":"Module Auto-synchronization","pathname":"/overview/our-features/module-auto-synchronization","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"09KRUfBp3c9uiFfdrUpK","title":"Angular Velocity Compensation","pathname":"/overview/our-features/angular-velocity-compensation","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Overview"},{"label":"Our Features"}]},{"id":"BnMM4kJ17vpfNnBtddb7","title":"Changelog","pathname":"/overview/changelog","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Overview"}]},{"id":"D5xvmPe1bVVsYaLqSO5E","title":"Swerve Drive","pathname":"/fundamentals/swerve-drive","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"How does Swerve Drive work?","breadcrumbs":[{"label":"Fundamentals"}]},{"id":"95zjYx8yJSQbEIBMHmsD","title":"Swerve Modules","pathname":"/fundamentals/swerve-modules","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"What is a Swerve Module?","breadcrumbs":[{"label":"Fundamentals"}]},{"id":"p8g3mslDJ3V6NsFmGGex","title":"Preface","pathname":"/bringing-up-swerve/preface","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Bringing up swerve"}]},{"id":"C7Mm003wBkBrhjweZjYA","title":"Swerve Information","pathname":"/bringing-up-swerve/swerve-information","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Bringing up swerve"}]},{"id":"T4blRbDbSIdWGgywJVVW","title":"Check your gyroscope","pathname":"/bringing-up-swerve/check-your-gyroscope","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Bringing up swerve"}]},{"id":"apwOdho2Oe1LzkmNL4Vx","title":"Check your motors","pathname":"/bringing-up-swerve/check-your-motors","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Bringing up swerve"}]},{"id":"0ATvD3u6SM5aYUYQB3LX","title":"Creating your first configuration","pathname":"/bringing-up-swerve/creating-your-first-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Bringing up swerve"}]},{"id":"IeWJFACdM0bYN3LieVow","title":"Getting to know your robot","pathname":"/configuring-yagsl/getting-to-know-your-robot","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"QUqPvwCGZKBFZhILge5W","title":"Dependency Installation","pathname":"/configuring-yagsl/dependency-installation","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"WJRI5H83jYTyRUEQIGkC","title":"Configuration","pathname":"/configuring-yagsl/configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"EYcxiaXekjdbWHED4ljG","title":"Swerve Drive Configuration","pathname":"/configuring-yagsl/configuration/swerve-drive-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"}]},{"id":"FAx0EzGgOAY6VQJsDIvT","title":"Physical Properties Configuration","pathname":"/configuring-yagsl/configuration/physical-properties-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"}]},{"id":"Zo1VMpJo8VBgZgeDR5ok","title":"PIDF Properties Configuration","pathname":"/configuring-yagsl/configuration/pidf-properties-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"}]},{"id":"Ja1beMrVXmc35dxwJduZ","title":"PIDF","pathname":"/configuring-yagsl/configuration/pidf-properties-configuration/pidf","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"},{"label":"PIDF Properties Configuration"}]},{"id":"TJpe8Qf9AQ0FLtO2E5Yz","title":"Swerve Module Configuration","pathname":"/configuring-yagsl/configuration/swerve-module-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"}]},{"id":"bEWO0Nx0RT2J9Y6iXBi6","title":"Controller Properties Configuration","pathname":"/configuring-yagsl/configuration/controller-properties-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"}]},{"id":"NHdK5C1e6NmAvU877s6W","title":"Device Configuration","pathname":"/configuring-yagsl/configuration/device-configuration","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"},{"label":"Configuration"}]},{"id":"aaewQlTScHJ8rUZ72KNi","title":"Code Setup","pathname":"/configuring-yagsl/code-setup","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"1kIahCLnMRIoLGUr41kf","title":"Standard Conversion Factors","pathname":"/configuring-yagsl/standard-conversion-factors","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"VtknoISnWaA6f3JmlJqj","title":"How to tune PIDF","pathname":"/configuring-yagsl/how-to-tune-pidf","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"KIfk1x9xyk2YXYEXjCez","title":"When to invert?","pathname":"/configuring-yagsl/when-to-invert","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"hiBpLEVrEdRLd040Myhg","title":"Flowcharts","pathname":"/configuring-yagsl/flowcharts","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"Kueclwq1SBb8RENwxbmz","title":"The eight steps","pathname":"/configuring-yagsl/the-eight-steps","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"FjJ0rjiJ4IQuWIwi4y7h","title":"Swerve Drive Drift","pathname":"/configuring-yagsl/swerve-drive-drift","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"Drift can be caused by anything and everything in a swerve drive...","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"YFoaYcLypYsbUkxcWTxJ","title":"SparkMax and SparkFlex Common Problems","pathname":"/configuring-yagsl/sparkmax-common-problems","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"These usually show up in MAXSwerve robots..","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"w8kwUWepBhhCiFLsVjBu","title":"Verifying your Module Locations","pathname":"/configuring-yagsl/verifying-your-module-locations","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"Your front may not be what you think it is on a robot.","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"opJ7sUAdzs99GP9TMwMl","title":"Tuning out Drift","pathname":"/configuring-yagsl/tuning-out-drift","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Configuring YAGSL"}]},{"id":"nEGjJWQbq59bdD018IBm","title":"Gyroscope","pathname":"/devices/gyroscope","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Devices"}]},{"id":"Yaj7BTqf4ZIBhFlVtjB1","title":"NavX","pathname":"/devices/gyroscope/navx","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"Calibrating a NavX 2","breadcrumbs":[{"label":"Devices"},{"label":"Gyroscope"}]},{"id":"jNKPqSUclIFBUc6SYGJ2","title":"Pigeon","pathname":"/devices/gyroscope/pigeon","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Devices"},{"label":"Gyroscope"}]},{"id":"yyOUVRxZ2CVoOzZzgWDb","title":"Pigeon 2.0","pathname":"/devices/gyroscope/pigeon-2.0","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Devices"},{"label":"Gyroscope"}]},{"id":"Hig7LhutAHIrizYoU7pt","title":"ADXRS450","pathname":"/devices/gyroscope/adxrs450","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Devices"},{"label":"Gyroscope"}]},{"id":"N0eKs0nfAoE49DXjlXtV","title":"ADIS16448","pathname":"/devices/gyroscope/adis16448","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Devices"},{"label":"Gyroscope"}]},{"id":"iLDaMqcS6mTaFk6txtlq","title":"ADIS16470","pathname":"/devices/gyroscope/adis16470","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Devices"},{"label":"Gyroscope"}]},{"id":"Uxpevbhfh3qJnv5KKSAx","title":"Motor Controllers","pathname":"/devices/motor-controllers","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Devices"}]},{"id":"ajubuyDs0qBW8uIGcPNC","title":"SparkMAX","pathname":"/devices/motor-controllers/sparkmax","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Devices"},{"label":"Motor Controllers"}]},{"id":"aKK2XNlwDMi9ytbTkCpq","title":"SparkFlex","pathname":"/devices/motor-controllers/sparkflex","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Devices"},{"label":"Motor Controllers"}]},{"id":"97iFa6w6XdTFSieMTFu6","title":"TalonFX","pathname":"/devices/motor-controllers/talonfx","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Devices"},{"label":"Motor Controllers"}]},{"id":"cvukjHkcjufr6BOm0AFh","title":"Absolute Encoders","pathname":"/devices/absolute-encoders","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"","breadcrumbs":[{"label":"Devices"}]},{"id":"JNooHpgiUyIwlalE302w","title":"FRC Web Components","pathname":"/analytics-and-debugging/frc-web-components","siteSpaceId":"sitesp_RbiLG","lang":"en","breadcrumbs":[{"label":"Analytics and Debugging"}]},{"id":"drF3bI7ZzTuui1wGB3qe","title":"Advantage Scope","pathname":"/analytics-and-debugging/advantage-scope","siteSpaceId":"sitesp_RbiLG","lang":"en","description":"Advantage Scope is a data visualization tool, courtesy of team 6328 Mechanical Advantage, which can visualize the Swerve Drive to give you feedback for debugging.","breadcrumbs":[{"label":"Analytics and Debugging"}]}]}