Skip to content

Robot Localizer#3754

Open
Andrewyx wants to merge 38 commits into
UBC-Thunderbots:masterfrom
Andrewyx:Andrewyx/robot_localizer
Open

Robot Localizer#3754
Andrewyx wants to merge 38 commits into
UBC-Thunderbots:masterfrom
Andrewyx:Andrewyx/robot_localizer

Conversation

@Andrewyx

@Andrewyx Andrewyx commented May 29, 2026

Copy link
Copy Markdown
Contributor

Description

Completes the ported changes from #3716, and implements the robot localizer, its various interfaces, and completes refactoring on much of the thunderloop pipeline. Also sneaks in some QOL features to disable power/motor service when flashing to allow thunderloop to run without all connections.

Testing Done

Resolved Issues

Resolves #3725

Length Justification and Key Files to Review

  • thunderloop.cpp
  • primitive_executor.cpp
  • robot_localizer.cpp

Review Checklist

It is the reviewers responsibility to also make sure every item here has been covered

  • Function & Class comments: All function definitions (usually in the .h file) should have a javadoc style comment at the start of them. For examples, see the functions defined in thunderbots/software/geom. Similarly, all classes should have an associated Javadoc comment explaining the purpose of the class.
  • Remove all commented out code
  • Remove extra print statements: for example, those just used for testing
  • Resolve all TODO's: All TODO (or similar) statements should either be completed or associated with a github issue

Comment thread src/software/simulated_tests/simulated_test_fixture.py

@StarrryNight StarrryNight left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work! Added some comments.

Comment thread src/software/ai/navigator/trajectory/bang_bang_trajectory_1d.h Outdated
Comment thread src/software/ai/navigator/trajectory/bang_bang_trajectory_1d_angular.h Outdated
Comment thread src/software/ai/navigator/trajectory/trajectory.hpp Outdated
Comment thread src/software/ai/navigator/trajectory/trajectory_2d.h Outdated
Comment thread src/software/embedded/motion_control/pid_controller.h
Comment thread src/software/embedded/thunderloop.cpp
Comment thread src/software/ai/hl/stp/play/kickoff_friendly/kickoff_friendly_play_fsm.cpp Outdated
Comment thread src/software/embedded/motor_controller/stspin_motor_controller.cpp
Comment thread src/software/embedded/primitive_executor.cpp Outdated
Comment thread src/software/embedded/primitive_executor.cpp Outdated
@Andrewyx Andrewyx force-pushed the Andrewyx/robot_localizer branch from 849ef18 to f8d7a63 Compare June 2, 2026 23:28
@Andrewyx Andrewyx force-pushed the Andrewyx/robot_localizer branch from b01b4dc to 4b62eae Compare June 2, 2026 23:43
Andrewyx and others added 6 commits June 2, 2026 16:48
…rewyx/robot_localizer

# Conflicts:
#	src/software/embedded/primitive_executor.cpp
#	src/software/embedded/primitive_executor.h
#	src/software/embedded/thunderloop.cpp
#	src/software/simulation/er_force_simulator.cpp
#	src/software/simulation/er_force_simulator.h
Andrewyx and others added 14 commits June 10, 2026 11:45
Resolve conflicts from master's UBC-Thunderbots#3760 (new prim-exec logic using motion
controllers), UBC-Thunderbots#3769, and the field renames, which overlapped with this
branch's own controller/prim-exec rework.

Resolution:
- Adopt master's UBC-Thunderbots#3760 implementation for primitive_executor, thunderloop,
  and the motion controllers (PositionController/OrientationController,
  non-templated PidController + pid_controller.cpp). Drops the branch's
  parallel close-PID / start_angle / stall-detection variant.
- Take master's robot_constants field names (robot_trajectory_max_* ) and
  2026 tuning values (trajectory speed 2.5, decel 2.0).
- Take master's tbots_protobuf createAngularTrajectoryFromParams signature
  (uses params.start_angle()) and master's move_primitive.cpp.
- Keep robot_localizer.cpp/.h as a standalone library for separate
  re-integration; removed the now-unused thunderloop -> robot_localizer dep.

Verified building: proto translation, move_primitive, motion_control/...,
robot_localizer, primitive_executor, thunderloop.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement Robot Localizer

4 participants