Development Status
simple-ros is under active development. Not every tutorial on this site is runnable end-to-end yet. This page is the ground truth for what actually works today, kept current as new pieces land, so you don’t have to guess whether a stuck command is your mistake or a feature we haven’t built.
Area: ROS-framework | Content-type: reference | Experience: beginner
What works today
Topics, services, and parameters are fully implemented, on top of a working turtlesim (a real tkinter window) and the simple-ros2 command line tool. Concretely: nodes can publish and subscribe to topics, offer and call services, and declare/get/set parameters, all discovered peer-to-peer with no background daemon, exactly as described in the tutorials.
Platform support
Linux only, for now. macOS is untested but has no known blocker. Windows genuinely does not work: every node crashes on startup (the registry’s socket-path fallback calls os.getuid(), which doesn’t exist on Windows), and turtle_teleop_key fails to even import (it uses the POSIX-only termios/tty modules for raw keyboard input). Neither is a deliberately-scoped-out feature the way, say, actions are; they’re just unaddressed.
Tutorial-by-tutorial status
Page |
Status |
Notes |
|---|---|---|
Works |
||
Partial |
Turtle control, spawn/kill, and pen/teleport services all work. The |
|
Works |
||
Partial |
|
|
Works |
||
Partial |
|
|
Not yet |
Actions aren’t implemented at all: no action server/client, no |
|
Not yet |
|
|
Not yet |
|
|
Not yet |
|
|
Not yet |
|
|
Not yet |
Depends on |
|
Not yet |
|
|
Not yet |
|
|
Partial |
The |
|
Partial |
Same as above: the |
|
Partial |
Same as above: parameter declaration/access works as a script, not yet as a workspace package. |
CLI verb gaps
Within verb groups that otherwise work, a few individual verbs are still missing:
topic hz,topic bw,topic findservice find,service echoparam dump,param loadinterface show
Entire command groups not yet built: action *, launch, bag, doctor, simple-colcon, simple-rosdep (not even a stub yet), and all of simple-rqt/simple-rqt-graph/simple-rqt-console.
Known cosmetic gaps
Service request/response
__repr__shows the internal generated class name (e.g._SpawnRequest) instead of matching real ROS 2’sturtlesim_msgs.srv.Spawn_Requeststyle./parameter_eventsand/rosoutaren’t implemented, sotopic listshows fewer topics than real ROS 2’s sample tutorial output.
Where to go from here
If a tutorial’s status above is “Works,” it should behave exactly as written. If it’s “Partial,” expect a specific step to fail where noted above. If it’s “Not yet,” treat it as reading material until that milestone lands.