ExoStack / ROS 2 interfaces

Gait-event detector

One node per gait event: reads named channels and publishes a pulse when its plug-in fires.

Each detector passes the configured channels to its plug-in's detect() and publishes 1 when the event is confirmed by its confidence window (Fig. S1a in Configuration).

Node name<event>_event
Executablegait_event_detector via gait_event_detector_launch.py
Instances×E, one per entry of gait_events.yaml

Subscribed topics

TopicDescriptionMessage type
/<input_topic>the synchronized channels (normally /synced_sensors)std_msgs/Float32MultiArraysynchronized channels layout

Published topics

TopicDescriptionMessage type
/<output_topic>1 at each detected eventstd_msgs/Int32gait event layout

Configuration

The keys that name or shape the topics above; every key is explained in Configuration.

KeyMeaning
events.<event>.input_topictopic to read
events.<event>.sensors[hub, channel] pairs passed to the plug-in
events.<event>.algorithmplug-in in algo/gait_events/
events.<event>.parametersplug-in parameters, e.g. [threshold, fraction]
events.<event>.history_sizewindow length N, samples
events.<event>.output_topicevent topic; a planner's gait_event_topic