Four levels of structured practice. Every lab ships with starter code, step-by-step instructions, hints, a collapsible solution, and a debug checklist. Open any lab in the Learning Hub.
Every level builds directly on the last. Students can enter at any level, but most find value in starting at Level 1 even if they already know Python.
Write your first ROS 2 node. Learn rclpy, Node, timer callbacks, and the logger. The node prints to screen on a 1-second loop.
Publish a JointState message to move the right shoulder joint. Learn radians, clamping, and the /swayform/joint_targets topic.
Build a state machine that cycles through arm positions to produce a wave. States, timers, and joint sequences.
Drive neck_yaw with a sine wave. Continuous oscillation, smooth motion, and understanding the 20Hz publish loop.
Terminal input() loop lets users type pose names. The node looks them up in a dictionary and publishes the angles.
Design 4+ custom keyframes with smoothstep interpolation. Multiple joints moving simultaneously with natural easing.
Final four Q1 labs building toward a complete head+arm+hand routine. Full content in the Learning Hub.
Subscribe to /swayform/joint_states and log real joint positions. Understand dead-band and how actual position differs from commanded.
Subscribe to the HC-SR04 range topic. Implement proximity zones with hysteresis so the robot reacts when someone walks up.
Read a GPIO button press, debounce it in software, and trigger a pose sequence on each press using event-driven publishing.
Seven more labs building toward a full reactive demo: distance + face detection + TTS + motion. Full content in Learning Hub.
Build a state machine with Happy, Thinking, Explaining, and Idle states. Each state triggers a pose + audio sequence. Transitions via ROS 2 String messages.
Nine labs covering advanced ROS 2 patterns, expressive motion design, and the Q3 midpoint interactive demo project.
Create a new ROS 2 package from scratch. Design the node graph, file structure, and topic list for a full original project. Write the project proposal document.
Nine labs taking the project from architecture through final showcase presentation and documentation.
These labs are designed for high school and community college programs. Contact us to request a demo or learn more.