JaiaBot  1.20.0
JaiaBot micro-AUV software
Timing Intervals

This following table summarizes the time intervals for things like polling, logging, and communications at various points in the JaiaBot architecture.

Name Description Timing Path
Central Command Poll app.py for BotStatus 0.5 s interval src/web/central_command/client/components/CentralCommand.jsx
Send Mission to app.py ASAP
Engineering Interface Send/Poll to app.py 0.1 s interval src/web/engineering/script.js
app.py Send/Receive UDP to jaiabot_web_portal on same device "Instantly" src/web/server/app.py
Send/Receive UDP to jaiabot_web_portal across network Depends on network latency
jaiabot_web_portal Send/Receive via intervehicle to jaiabot_mission_manager or jaiabot_engineering Depends on XBee radio latency src/bin/
jaiabot_driver_arduino Send/Receive ArduinoCommand via serial (each loop steps the motor throttle) 10 s loop interval src/bin/drivers/arduino/app.cpp
jaiabot_runtime Arduino app ESC control loop 0.1 s loop interval src/arduino/jaiabot_runtime/jaiabot_runtime.ino
jaiabot_adafruit_BNO055 app Publish Query for data loop 0.1 s loop interval src/bin/drivers/adafruit_BNO055/app.cpp
jaiabot_atlas_scientific_ezo_ec app Publish Query for data loop 0.1 s loop interval src/bin/drivers/atlas_scientific_ezo_ec/app.cpp
jaiabot_bluerobotics_pressure_sensor app Publish Query for data loop 0.1 s loop interval src/bin/drivers/bluerobotics_pressure_sensor/app.cpp
jaiabot_fusion app loop 0.2 s loop interval src/bin/fusion/fusion.cpp
jaiabot_health app loop 1 s loop interval src/bin/health/app.cpp
arduino_thread (health) loop (issue_status_summary) 15 s loop interval src/bin/health/arduino_thread.cpp
helm_ivp_thread (health) loop (issue_status_summary) 15 s loop interval src/bin/health/helm_ivp_thread.cpp
linux_hardware_thread (health) loop (issue_status_summary) 60 s loop interval src/bin/health/linux_hardware_thread.cpp
time_thread (health) loop (issue_status_summary) 60 s loop interval src/bin/health/time_thread.cpp
jaiabot_hub_manager app Publish hub status loop 1 s loop interval src/bin/hub_manager/hub_manager.cpp
jaiabot_engineering app Publish Engineering status loop 1 s loop interval src/bin/jaiabot_engineering/app.cpp
jaiabot_metadata app No loop interval No loop interval src/bin/jaiabot_metadata/app.cpp
jaiabot_pid_control app Publish low control loop 1 s loop interval src/bin/jaiabot_pid_control/app.cpp
jaiabot_mission_manager app Mission Report loop 1 s loop interval src/bin/mission_manager/app.cpp
jaiabot_web_portal app loop 2 s loop interval src/bin/web_portal/app.cpp
jaiabot_moos_gateway app BHV Updates Depends goby::moos::FrontSeatTranslation src/lib/jaiabot_moos_gateway/app.cpp
jaiabot_goby_laiason app Publish low_control 0.05 s loop interval src/lib/laiason/laiason_jaiabot.cpp
jaiabot_adafruit_BNO055_py adafruit_BNO055 Sensor Updates Depends jaiabot_adafruit_BNO055 src/python/adafruit/jaiabot_imu.py
jaiabot_adafruit_BNO085_py adafruit_BNO085 Sensor Updates Depends jaiabot_adafruit_BNO085 src/python/adafruit/jaiabot_imu.py
jaiabot_atlas_scientific_ezo_ec_py atlas_scientific_ezo_ec Sensor Updates Depends jaiabot_atlas_scientific_ezo_ec src/python/atlas_scientific_ezo_ec/jaiabot_as-ezo-ec.py
jaiabot_pressure_sensor_py Pressure Sensor Updates Depends jaiabot_bluerobotics_pressure_sensor src/python/pressure_sensor/jaiabot_pressure_sensor.py