From 7eedec46e94755c6d4be6a6f0b3b9b1372a77956 Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Sun, 26 Oct 2025 22:50:21 -0400 Subject: [PATCH 1/9] Update dead-wheels.rst with odometry pod details Added pros and cons for Wwo-Wheel Odometry Pods and goBILDA Pinpoint Fusion. --- source/docs/common-mechanisms/dead-wheels.rst | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index 0168a29f..aae5a4c8 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -62,6 +62,20 @@ Three-Wheel Odometry Pods - Quite pricey - Tuning of the heading is very important +Wwo-Wheel Odometry Pods + goBILDA Pinpoint Fusion +-------------------------- + +- **Pros**: + + - Reduced Development Time + - Plug and play odometry pod imu fusion + - Very compact form factor + - Very accurate tracking with a very fast update rate +- **Cons**: + + - Requires configuration on your dead wheel (ticks/mm) + - Deppendent on an external coprocessor and I²C + Encoders -------- From 7453840ab25ed619624de576a5fdd5af33786ddb Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:05:50 -0400 Subject: [PATCH 2/9] Fix title and clarify Two-Wheel Odometry Pods details Corrected the title and added a note about the Two-Wheel Odometry Pods. --- source/docs/common-mechanisms/dead-wheels.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index aae5a4c8..faf758d5 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -62,9 +62,9 @@ Three-Wheel Odometry Pods - Quite pricey - Tuning of the heading is very important -Wwo-Wheel Odometry Pods + goBILDA Pinpoint Fusion +Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion -------------------------- - +.. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical meaasuring, one for horizontal measurauring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit - **Pros**: - Reduced Development Time From 9472d18f69cd376ffb2bd4dfc4a9ead32723c663 Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:09:44 -0400 Subject: [PATCH 3/9] Fix typos in dead-wheels documentation --- source/docs/common-mechanisms/dead-wheels.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index faf758d5..a31b652a 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -64,7 +64,7 @@ Three-Wheel Odometry Pods Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion -------------------------- -.. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical meaasuring, one for horizontal measurauring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit +.. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical measuring, one for horizontal measuring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit - **Pros**: - Reduced Development Time @@ -74,7 +74,8 @@ Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion - **Cons**: - Requires configuration on your dead wheel (ticks/mm) - - Deppendent on an external coprocessor and I²C + - Dependent on an external coprocessor and I²C + Encoders -------- From 3346d4215fe5c33b919b6b33d6eb04eb0d2c9431 Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Sun, 26 Oct 2025 23:31:59 -0400 Subject: [PATCH 4/9] Update dead-wheels.rst --- source/docs/common-mechanisms/dead-wheels.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index a31b652a..2573f438 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -74,7 +74,7 @@ Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion - **Cons**: - Requires configuration on your dead wheel (ticks/mm) - - Dependent on an external coprocessor and I²C + - Dependent on an external coprocessor and I2C Encoders From 77a3073b0a03dd9502e4403a61d39ebd0b6610ca Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Mon, 27 Oct 2025 00:16:58 -0400 Subject: [PATCH 5/9] Update dead-wheels.rst --- source/docs/common-mechanisms/dead-wheels.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index 2573f438..cfb8e1df 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -63,7 +63,7 @@ Three-Wheel Odometry Pods - Tuning of the heading is very important Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion --------------------------- +------------------------------------------------- .. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical measuring, one for horizontal measuring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit - **Pros**: From 0b48a9c874659f6d8b7f30424f9b175b5300fb2b Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Mon, 27 Oct 2025 18:08:41 -0400 Subject: [PATCH 6/9] Update dead-wheels.rst --- source/docs/common-mechanisms/dead-wheels.rst | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index cfb8e1df..a0feddb9 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -16,7 +16,7 @@ The term dead wheels, tracking wheels, odometry pods, and odometry are often con Usually, there will be two or three wheels - one or two on the x and y axis each to track the front-back and left-right position relative to the starting point. Generally, odometry wheels are sprung so that the wheel is in contact with the floor tiles at all times to ensure accuracy. -Odometry refers to the use of motion sensors for localization. Localization is a means for being able to locate the position of the bot at some point in time. Localization is crucial in path following and advanced autonomous modes as one needs to know where they are to generate the necessary movements needed to reach a desired destination. :doc:`Localization software ` plays a major role in odometry; however, in order to produce accurate results, reliable and accurate hardware design is a necessity. + Odometry refers to the use of motion sensors for localization. Localization is a means for being able to locate the position of the bot at some point in time. Localization is crucial in path following and advanced autonomous modes as one needs to know where they are to generate the necessary movements needed to reach a desired destination. :doc:`Localization software ` plays a major role in odometry; however, in order to produce accurate results, reliable and accurate hardware design is a necessity. The simplest form of odometry is drive encoder localization. This is the use of encoders measuring the rotation of motors that power the drive train. One is able to read the encoder data and feed it through the kinematic equation for that specific drive train to derive the body's velocity. Drive encoder localization is generally quite simple and easy to setup as almost all of the FTC legal motors have built-in encoders. Getting drive encoder localization setup is simply a matter of plugging in wires, no additional hardware needed. @@ -62,21 +62,6 @@ Three-Wheel Odometry Pods - Quite pricey - Tuning of the heading is very important -Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion -------------------------------------------------- -.. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical measuring, one for horizontal measuring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit -- **Pros**: - - - Reduced Development Time - - Plug and play odometry pod imu fusion - - Very compact form factor - - Very accurate tracking with a very fast update rate -- **Cons**: - - - Requires configuration on your dead wheel (ticks/mm) - - Dependent on an external coprocessor and I2C - - Encoders -------- From cef84d9b1995e3401e1be2d4a4245a0f46db4c72 Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Mon, 27 Oct 2025 21:00:41 -0400 Subject: [PATCH 7/9] Update dead-wheels.rst --- source/docs/common-mechanisms/dead-wheels.rst | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index a0feddb9..71bcb907 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -62,6 +62,21 @@ Three-Wheel Odometry Pods - Quite pricey - Tuning of the heading is very important +Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion +------------------------------------------------- + +.. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical measuring, one for horizontal measuring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit +- **Pros**: + + - Reduced Development Time + - Plug and play odometry pod imu fusion + - Very compact form factor + - Very accurate tracking with a very fast update rate +- **Cons**: + + - Requires configuration on your dead wheel (ticks/mm) + - Dependent on an external coprocessor and I2C + Encoders -------- From 0a175048b01fae03a775aa95775682afc1cf0566 Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Mon, 27 Oct 2025 21:06:11 -0400 Subject: [PATCH 8/9] Update dead-wheels.rst --- source/docs/common-mechanisms/dead-wheels.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index 71bcb907..eae27c51 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -15,7 +15,6 @@ The term dead wheels, tracking wheels, odometry pods, and odometry are often con A small unpowered wheel (usually an :term:`omni wheel `) that tracks the distance the robot has traveled through the encoder attached to the wheel's axle. Usually, there will be two or three wheels - one or two on the x and y axis each to track the front-back and left-right position relative to the starting point. Generally, odometry wheels are sprung so that the wheel is in contact with the floor tiles at all times to ensure accuracy. - Odometry refers to the use of motion sensors for localization. Localization is a means for being able to locate the position of the bot at some point in time. Localization is crucial in path following and advanced autonomous modes as one needs to know where they are to generate the necessary movements needed to reach a desired destination. :doc:`Localization software ` plays a major role in odometry; however, in order to produce accurate results, reliable and accurate hardware design is a necessity. The simplest form of odometry is drive encoder localization. This is the use of encoders measuring the rotation of motors that power the drive train. One is able to read the encoder data and feed it through the kinematic equation for that specific drive train to derive the body's velocity. Drive encoder localization is generally quite simple and easy to setup as almost all of the FTC legal motors have built-in encoders. Getting drive encoder localization setup is simply a matter of plugging in wires, no additional hardware needed. @@ -66,6 +65,7 @@ Two-Wheel Odometry Pods + goBILDA Pinpoint Fusion ------------------------------------------------- .. note:: The Two-Wheel Odometry Pods + GoBILDA Pinpoint uses one Odometry Pod for vertical measuring, one for horizontal measuring, and instead of using another one for rotation it uses the pinpoint's own IMU or Inertial Measurement Unit + - **Pros**: - Reduced Development Time From fd98ab6e59575bbccffb4a030f6a22f75805aa3d Mon Sep 17 00:00:00 2001 From: Alex <47759254+acurra3398@users.noreply.github.com> Date: Mon, 27 Oct 2025 21:10:10 -0400 Subject: [PATCH 9/9] Update dead-wheels.rst --- source/docs/common-mechanisms/dead-wheels.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/docs/common-mechanisms/dead-wheels.rst b/source/docs/common-mechanisms/dead-wheels.rst index eae27c51..cb74bdee 100644 --- a/source/docs/common-mechanisms/dead-wheels.rst +++ b/source/docs/common-mechanisms/dead-wheels.rst @@ -15,12 +15,12 @@ The term dead wheels, tracking wheels, odometry pods, and odometry are often con A small unpowered wheel (usually an :term:`omni wheel `) that tracks the distance the robot has traveled through the encoder attached to the wheel's axle. Usually, there will be two or three wheels - one or two on the x and y axis each to track the front-back and left-right position relative to the starting point. Generally, odometry wheels are sprung so that the wheel is in contact with the floor tiles at all times to ensure accuracy. - Odometry refers to the use of motion sensors for localization. Localization is a means for being able to locate the position of the bot at some point in time. Localization is crucial in path following and advanced autonomous modes as one needs to know where they are to generate the necessary movements needed to reach a desired destination. :doc:`Localization software ` plays a major role in odometry; however, in order to produce accurate results, reliable and accurate hardware design is a necessity. + +Odometry refers to the use of motion sensors for localization. Localization is a means for being able to locate the position of the bot at some point in time. Localization is crucial in path following and advanced autonomous modes as one needs to know where they are to generate the necessary movements needed to reach a desired destination. :doc:`Localization software ` plays a major role in odometry; however, in order to produce accurate results, reliable and accurate hardware design is a necessity. The simplest form of odometry is drive encoder localization. This is the use of encoders measuring the rotation of motors that power the drive train. One is able to read the encoder data and feed it through the kinematic equation for that specific drive train to derive the body's velocity. Drive encoder localization is generally quite simple and easy to setup as almost all of the FTC legal motors have built-in encoders. Getting drive encoder localization setup is simply a matter of plugging in wires, no additional hardware needed. Many teams in the community have converged on a unique solution that isn't seen very much outside of FTC: the use of "dead wheels," "tracking wheels," or "odometry pods" (these terms are all synonymous). These refer to small "dead" or non-driven (not powered by a motor) wheels attached to an `encoder sensor <#encoders>`_. Two or three dead wheel pods are often sprung to the ground to ensure accurate tracking. The two-wheel design utilizes one parallel and one perpendicular pod (parallel and perpendicular with respect to the drive wheel axis), measuring x and y movement respectively. Change in heading is measured via a gyroscope. The three-wheel design utilizes two parallel and one perpendicular pod, measuring x and y movement respectively. However, this design forgoes the gyroscope and instead measures heading via the difference with the two parallel wheels. This is often more accurate in the context of the FTC control system because the BNO055 IMU (used for the gyroscope in the two-wheel design) utilizes I2C which is slower than the rest of the I/O on the REV Hub and cannot be bulk read. These two issues lead to minute drift issues which can compound over time, thus leading to a more inaccurate localization system when using the two-wheel design. - However, designing consistently accurate dead wheels proves to be a difficult design challenge. It is often quite pricey. A set of three dead wheels will cost a minimum of $100 for the encoders alone, prior to any hardware. Let's go through the advantages and disadvantages of each system.