gitextract_eu8r6t07/ ├── .gitignore ├── LICENSE ├── README.md ├── doc/ │ ├── DominoRobotControllerFlowchart.drawio │ ├── DominoRobotSoftwareArchitecture.drawio │ ├── KukaPsuedoCode.txt │ ├── MassAndPowerCalcs.xlsx │ ├── NetworkPrototcols.txt │ ├── SpeedConversions.ods │ ├── SubsystemDiagram.drawio │ ├── SwClassHeirarchy.txt │ └── clearcore_api.txt ├── experimental_testing/ │ ├── ImageParser.py │ ├── RobotArduinoTesting/ │ │ ├── StepperDriverMotion_4Motor_Accel/ │ │ │ └── StepperDriverMotion_4Motor_Accel.ino │ │ ├── TestMotor/ │ │ │ └── TestMotor.ino │ │ ├── WifiServerWithESP/ │ │ │ ├── RobotServer.cpp │ │ │ ├── RobotServer.h │ │ │ └── WifiServerWithESP.ino │ │ ├── WifiTesting/ │ │ │ └── WifiTesting.ino │ │ ├── all_motors/ │ │ │ └── all_motors.ino │ │ ├── all_motors_speed_control/ │ │ │ ├── Motor.cpp │ │ │ ├── Motor.h │ │ │ └── all_motors_speed_control.ino │ │ ├── kalman_test/ │ │ │ ├── KalmanFilter.cpp │ │ │ ├── KalmanFilter.h │ │ │ └── kalman_test.ino │ │ ├── lifter_nano_test/ │ │ │ └── lifter_nano_test.ino │ │ ├── motor_driver_test_script/ │ │ │ └── motor_driver_test_script.ino │ │ ├── new_dc_motor_tuning/ │ │ │ ├── Motor.cpp │ │ │ ├── Motor.h │ │ │ ├── constants.h │ │ │ └── new_dc_motor_tuning.ino │ │ ├── single_motor_speed_control/ │ │ │ ├── Motor.cpp │ │ │ ├── Motor.h │ │ │ └── single_motor_speed_control.ino │ │ ├── stepper_nano_test/ │ │ │ └── stepper_nano_test.ino │ │ └── test_encoders/ │ │ └── test_encoders.ino │ ├── TrajGen.py │ └── TrajGenv2.py └── src/ ├── master/ │ ├── DominoDesign-Questions.psd │ ├── DominoDesign.psd │ ├── FieldPlanner.py │ ├── MarvelMindHandler.py │ ├── MasterMain.py │ ├── README.md │ ├── RobotClient.py │ ├── Runtime.py │ ├── Utils.py │ ├── __init__.py │ ├── camera_utils.py │ ├── config.py │ ├── plans/ │ │ ├── AccuracyTesting_1x3_withdistance.p │ │ ├── AccuracyTesting_1x3_withdistance086.p │ │ ├── AccuracyTesting_2x2.p │ │ ├── AccuracyTesting_3x3_withdistance_2axis.p │ │ ├── DockingTest1.p │ │ ├── DockingTest2.p │ │ ├── FullPlan_DominoBros.p │ │ ├── FullTest1.p │ │ ├── HackyTestPlan.p │ │ ├── LargeScale1_5x5.p │ │ ├── LargeScale2_5x5.p │ │ ├── VisionAccuracyTesting_2x2_SmallTestArea.p │ │ ├── autosaved.p │ │ ├── plan.p │ │ ├── plan2.p │ │ ├── vision_offsets small_testing_area.csv │ │ └── vision_offsets_full_plan.csv │ ├── plot_logs2.py │ └── requirements.txt ├── robot/ │ ├── Makefile │ ├── README.md │ ├── src/ │ │ ├── KalmanFilter.cpp │ │ ├── KalmanFilter.h │ │ ├── Localization.cpp │ │ ├── Localization.h │ │ ├── MarvelmindWrapper.cpp │ │ ├── MarvelmindWrapper.h │ │ ├── RobotController.cpp │ │ ├── RobotController.h │ │ ├── RobotServer.cpp │ │ ├── RobotServer.h │ │ ├── SmoothTrajectoryGenerator.cpp │ │ ├── SmoothTrajectoryGenerator.h │ │ ├── StatusUpdater.cpp │ │ ├── StatusUpdater.h │ │ ├── TrayController.cpp │ │ ├── TrayController.h │ │ ├── camera_tracker/ │ │ │ ├── CameraPipeline.cpp │ │ │ ├── CameraPipeline.h │ │ │ ├── CameraTracker.cpp │ │ │ ├── CameraTracker.h │ │ │ ├── CameraTrackerBase.h │ │ │ ├── CameraTrackerFactory.cpp │ │ │ ├── CameraTrackerFactory.h │ │ │ └── CameraTrackerMock.h │ │ ├── constants.cfg │ │ ├── constants.h │ │ ├── main.cpp │ │ ├── robot.cpp │ │ ├── robot.h │ │ ├── robot_controller_modes/ │ │ │ ├── RobotControllerModeBase.cpp │ │ │ ├── RobotControllerModeBase.h │ │ │ ├── RobotControllerModePosition.cpp │ │ │ ├── RobotControllerModePosition.h │ │ │ ├── RobotControllerModeStopFast.cpp │ │ │ ├── RobotControllerModeStopFast.h │ │ │ ├── RobotControllerModeVision.cpp │ │ │ └── RobotControllerModeVision.h │ │ ├── serial/ │ │ │ ├── MockSerialComms.cpp │ │ │ ├── MockSerialComms.h │ │ │ ├── SerialComms.cpp │ │ │ ├── SerialComms.h │ │ │ ├── SerialCommsBase.cpp │ │ │ ├── SerialCommsBase.h │ │ │ ├── SerialCommsFactory.cpp │ │ │ └── SerialCommsFactory.h │ │ ├── sockets/ │ │ │ ├── ClientSocket.cpp │ │ │ ├── ClientSocket.h │ │ │ ├── MockSocketMultiThreadWrapper.cpp │ │ │ ├── MockSocketMultiThreadWrapper.h │ │ │ ├── README.md │ │ │ ├── ServerSocket.cpp │ │ │ ├── ServerSocket.h │ │ │ ├── Socket.cpp │ │ │ ├── Socket.h │ │ │ ├── SocketException.h │ │ │ ├── SocketMultiThreadWrapper.cpp │ │ │ ├── SocketMultiThreadWrapper.h │ │ │ ├── SocketMultiThreadWrapperBase.h │ │ │ ├── SocketMultiThreadWrapperFactory.cpp │ │ │ ├── SocketMultiThreadWrapperFactory.h │ │ │ └── SocketTimeoutException.h │ │ ├── utils.cpp │ │ └── utils.h │ └── test/ │ ├── CameraPipeline_Test.cpp │ ├── CameraTracker_Test.cpp │ ├── Localization_Test.cpp │ ├── RobotController_Test.cpp │ ├── RobotServer_Test.cpp │ ├── Robot_Test.cpp │ ├── SanityCheckTest.cpp │ ├── SmoothTrajectoryGenerator_Test.cpp │ ├── SocketWrapper_Test.cpp │ ├── StatusUpdater_Test.cpp │ ├── TrayController_Test.cpp │ ├── test-main.cpp │ ├── test-utils.h │ ├── test_constants.cfg │ └── utils_Test.cpp ├── robot_motor_driver/ │ ├── SerialComms.cpp │ ├── SerialComms.h │ └── robot_motor_driver.ino └── tools/ ├── 80-domino-bot.rules ├── IR_calibration_1.yml ├── IR_calibration_2.yml ├── camera_calibration.py ├── motor_test_script.py └── plot_logs.py