Robotics

Modeloop brings Simulink-style block diagrams to ROS 2 with node generation

Generate ROS 2 nodes from browser-based block diagrams — no compile step needed

Deep Dive

Modeloop is a browser-based, Simulink-style modeling environment that lets engineers design block diagrams, simulate dynamics, and generate ROS 2 nodes directly. The core modeling and simulation run entirely in the browser with a git-friendly text format, while a companion desktop app handles ROS 2 integration — necessary because browser sandboxes cannot communicate with DDS or live ROS graphs. The tool supports ROS 2 Humble, Iron, and Jazzy, imports existing .msg and .srv definitions, and generates standalone C++ (rclcpp) or Python (rclpy) nodes with configurable QoS profiles and lifecycle support. A standout feature is hardware-in-the-loop (HIL) debugging, where the model talks to a live ROS network or Gazebo simulation without a compile step, allowing rapid iteration against real sensor data.

Community feedback from a user highlighted challenges with physical anomalies like wheel slip or SLAM resets. Modeloop’s philosophy is based on separation of concerns: rather than hiding noise inside “magic” blocks, the architecture encourages building an Observer subsystem with a finite state machine (FSM) that monitors signal integrity. The FSM detects anomalies and transitions signal states between “valid” and “faulty,” allowing the observer to filter or reconstruct data. The main controller then consumes these cleaned values, abstracting physical irregularities. The developer is actively seeking feedback on whether this approach fits real-world robotics workflows and what features would make it worth adopting for production projects.

Key Points
  • Modeloop runs modeling/simulation in the browser; ROS 2 features require the desktop app for DDS communication.
  • Generates standalone ROS 2 nodes in C++ (rclcpp) or Python (rclpy) with QoS and lifecycle support.
  • Handles physical anomalies via observer subsystems and FSMs instead of magic blocks, maintaining separation of concerns.

Why It Matters

Accelerates robotics prototyping by enabling ROS 2 node generation and HIL testing without compilation.