Skip to content

Personal technology roadmap · 2026–2029

Graduate roadmap for robotics systems software

Focus on robotics systems software, progressing through capability expansion, stabilization, measured bottlenecks, and targeted technology adoption. Complete Cyber AMR in year one, then Cyber Arm, and build a stable, measurable, recoverable Cyber Mobile Manipulator in year two.

Develop an integrated robotics skill set spanning embedded firmware, Linux C++ drivers, ROS 2, localization, navigation, manipulation, and task execution. Final results must include hardware demonstrations, repeated trials, quantitative metrics, failure analysis, automatic recovery, complete documentation, and research findings.

Learning stages
10
Subtasks
231
Completed
0
Overall progress
0%

Checking session…

Published records loaded · Changes save automatically

Robotics systems track

Cyber AMR → Cyber Arm → Cyber Mobile Manipulator

Cyber AMR → Cyber Arm → Cyber Mobile Manipulator: STM32 / FreeRTOS → C++23 / Linux → ROS 2 / ros2_control → state estimation and autonomous navigation → MoveIt 2 / RGB-D → mobile manipulation and task recovery

Industrial-control track

Industrial real-time and motion-control foundations

Industrial real-time and motion-control foundations: real-time Linux → EtherCAT → CiA 402 → trajectory planning → single-axis servo control and fault safety. Develop supporting capabilities without creating another project of equal scale.

Research track

Localization, navigation, and manipulation reliability for mobile manipulators

Research on a physical mobile manipulator: prioritize vision-based station alignment and grasp compensation under navigation error; alternatives include multisensor localization and robust navigation in degraded or dynamic environments. Ultimately investigate one central problem in depth.

Semester plans and progress

Learning stages

Year 1 · Fall · 2026.09—2027.01

Prioritize coursework and establish modern C++, Linux, STM32, and ROS 2 hardware integration foundations. Defer physical-arm deployment, VLA, 3DGS, and other advanced features.

Stage milestone: Cyber AMR v0.5: complete STM32 → C++ Driver → ros2_control integration

Robotics 70% · Motion control 5% · Research 25%

Strengthen modern C++ and Linux engineering foundations0%

Establish consistent, maintainable, testable engineering practices for all subsequent robotics modules.

C++23CMakeLinuxGitGoogleTestGDB
Master RAII, smart pointers, move semantics, common STL facilities, and error handling

Master RAII, smart pointers, move semantics, common STL facilities, and error handling

Master threads, mutex, condition_variable, atomic, and common concurrency issues

Master threads, mutex, condition_variable, atomic, and common concurrency issues

Master targets, library organization, transitive dependencies, install / export, and find_package

Master targets, library organization, transitive dependencies, install / export, and find_package

Build GoogleTest unit tests and connect them to basic CI

Build GoogleTest unit tests and connect them to basic CI

Use GDB, sanitizers, logs, and core dumps to diagnose memory and concurrency problems

Use GDB, sanitizers, logs, and core dumps to diagnose memory and concurrency problems

Refactor the STM32 firmware for Cyber AMR0%

Build stable, safe, measurable four-motor control firmware.

STM32FreeRTOSPIDEncoderUARTCAN
Redesign FreeRTOS tasks, priorities, interrupts, and control periods

Redesign FreeRTOS tasks, priorities, interrupts, and control periods

Implement encoder acquisition and wheel-speed calculation; verify units and directions

Implement encoder acquisition and wheel-speed calculation; verify units and directions

Implement four-motor speed PID, output limiting, anti-windup, and basic feedforward

Implement four-motor speed PID, output limiting, anti-windup, and basic feedforward

Acceptance: Retain plots for step response, steady-state error, load disturbance, and wheel consistency

Add target-speed ramps to prevent abrupt command changes

Add target-speed ramps to prevent abrupt command changes

Implement communication-timeout stopping, watchdogs, fault states, emergency stops, and safe startup

Implement communication-timeout stopping, watchdogs, fault states, emergency stops, and safe startup

Build a cross-platform Robot Protocol0%

Share the same protocol core between STM32 and Linux while separating protocol logic from transport.

C++23CRC16std::arraystd::span
Define frame header, version, length, sequence number, CMD, payload, CRC, and trailer

Define frame header, version, length, sequence number, CMD, payload, CRC, and trailer

Implement encoding and decoding interfaces without dynamic-memory dependencies

Implement encoding and decoding interfaces without dynamic-memory dependencies

Implement a streaming frame parser for partial, concatenated, fragmented, and multiple frames, with resynchronization

Implement a streaming frame parser for partial, concatenated, fragmented, and multiple frames, with resynchronization

Keep the protocol core independent of ROS 2, Boost.Asio, STM32 HAL, and FreeRTOS

Keep the protocol core independent of ROS 2, Boost.Asio, STM32 HAL, and FreeRTOS

Test boundary conditions and malformed input for CRC, codec, and parser

Test boundary conditions and malformed input for CRC, codec, and parser

Complete the standalone C++ Linux driver for Cyber AMR0%

Encapsulate serial communication, device state, and fault handling in a driver independent of ROS 2.

C++23Boost.AsioGoogleTest
Implement asynchronous serial I/O and threading with Boost.Asio

Implement asynchronous serial I/O and threading with Boost.Asio

Implement disconnect detection, automatic reconnection, timeouts, and heartbeat

Implement disconnect detection, automatic reconnection, timeouts, and heartbeat

Define interfaces for motor, encoder, IMU, fault, and driver state

Define interfaces for motor, encoder, IMU, fault, and driver state

Define DriverConfig / SerialConfig; let the caller determine configuration sources

Define DriverConfig / SerialConfig; let the caller determine configuration sources

Test serial faults, malformed frames, MCU restarts, and the driver lifecycle

Test serial faults, malformed frames, MCU restarts, and the driver lifecycle

Integrate Cyber AMR with ros2_control0%

Establish the robot's production hardware interface, using ROS 2 as an adapter around the driver.

ROS 2ros2_controlpluginlibTF2
Implement ros2_control SystemInterface, lifecycle management, read(), and write()

Implement ros2_control SystemInterface, lifecycle management, read(), and write()

Export wheel-speed command interfaces and joint-state interfaces

Export wheel-speed command interfaces and joint-state interfaces

Integrate controller_manager, joint_state_broadcaster, and the mecanum-wheel controller

Integrate controller_manager, joint_state_broadcaster, and the mecanum-wheel controller

Configure hardware and controller parameters through URDF / YAML / launch

Configure hardware and controller parameters through URDF / YAML / launch

Provide one-command bringup and verify the complete ROS 2 → Driver → STM32 chain

Provide one-command bringup and verify the complete ROS 2 → Driver → STM32 chain

Build the mathematical foundations for state estimation and SLAM0%

Develop the theory needed to read papers, understand EKF, and diagnose engineering problems.

Linear AlgebraProbabilitySO(3)SE(3)EKF
Review linear algebra, least squares, and Jacobians

Review linear algebra, least squares, and Jacobians

Master Gaussian distributions, covariance, and Bayesian estimation

Master Gaussian distributions, covariance, and Bayesian estimation

Master quaternions, rotation matrices, SO(3), SE(3), and coordinate transforms

Master quaternions, rotation matrices, SO(3), SE(3), and coordinate transforms

Derive and implement a small EKF example

Derive and implement a small EKF example

Acceptance: Explain states, prediction, observation, Q, and R

Key milestones

  1. 2027.01

    Cyber AMR v0.5: complete STM32 → C++ Driver → ros2_control integration

  2. 2027.02

    Cyber AMR v0.5 Stable: reliability and real-time baselines established

  3. 2027.07

    Cyber AMR v1.0: stable EKF + 2D SLAM + Nav2 on hardware

  4. 2027.09

    Cyber AMR v1.0 Release + Cyber Arm v0.5 Simulation

  5. 2028.01

    Cyber Mobile Manipulator v0.5: physical-arm vision grasping + fine alignment + FAST-LIO2

  6. 2028.02

    Research experiment pipeline and failure taxonomy completed

  7. 2028.07

    Cyber Mobile Manipulator v1.0: navigate → align → grasp → transport → place → recover

  8. 2028.09

    At least 50 end-to-end trials and a frozen autumn recruiting portfolio

  9. 2028.12

    Secure a target offer and complete 70–80% of the thesis

  10. 2029.03

    Finalize the thesis and enter blind review

  11. 2029.06

    Thesis defense, graduation, and final archiving of the Cyber projects