This directory contains comprehensive tutorials explaining various ROS 2 features and concepts using rclnodejs. Each tutorial provides practical examples and best practices for building robust ROS 2 applications in JavaScript/Node.js.
If you're new to ROS 2, start with the Basic Concepts tutorial to understand fundamental communication patterns, then explore other tutorials based on your specific needs.
Introduction to fundamental ROS 2 communication patterns: Topics (publish/subscribe) and Services (request/response). Essential for beginners to understand the core building blocks of ROS 2 applications.
Learn about managed nodes with state machines for controlled startup, shutdown, and error handling. Covers lifecycle states, transitions, and implementing robust, production-ready nodes.
Dynamic configuration management using ROS 2 parameters. Covers parameter declaration, validation, runtime updates, and callbacks for building configurable applications.
Implement long-running, cancellable tasks with progress feedback using the ROS 2 action system. Learn to create action servers and clients for complex robot behaviors.
Debug and monitor service interactions in real-time. Learn to observe service calls, responses, and performance metrics for troubleshooting distributed systems.
Reduce network traffic and improve performance by filtering messages at the DDS middleware level using SQL-like expressions. Essential for high-frequency data streams.
Use RxJS Observables for reactive programming with ROS 2 subscriptions. Apply operators like throttleTime(), combineLatest(), and filter() to process message streams declaratively.
Introspect message and service types used by nodes at runtime. Learn to query type definitions, field descriptions, and dependencies for better system understanding.
These tutorials are part of the rclnodejs project. For the latest updates and more examples, visit the GitHub repository.