added logging to ControlLoop's use of sensor_generation
diff --git a/aos/common/control_loop/ControlLoop-tmpl.h b/aos/common/control_loop/ControlLoop-tmpl.h
index 4e1999c..032d5fc 100644
--- a/aos/common/control_loop/ControlLoop-tmpl.h
+++ b/aos/common/control_loop/ControlLoop-tmpl.h
@@ -42,12 +42,18 @@
::bbb::sensor_generation.FetchLatest();
if (::bbb::sensor_generation.get() == nullptr) {
+ LOG_INTERVAL(no_sensor_generation_);
ZeroOutputs();
return;
}
if (!has_sensor_reset_counters_ ||
::bbb::sensor_generation->reader_pid != reader_pid_ ||
::bbb::sensor_generation->cape_resets != cape_resets_) {
+ char buffer[128];
+ size_t characters = ::bbb::sensor_generation->Print(buffer, sizeof(buffer));
+ LOG(INFO, "new sensor_generation message %.*s\n",
+ static_cast<int>(characters), buffer);
+
reader_pid_ = ::bbb::sensor_generation->reader_pid;
cape_resets_ = ::bbb::sensor_generation->cape_resets;
has_sensor_reset_counters_ = true;
diff --git a/aos/common/control_loop/ControlLoop.h b/aos/common/control_loop/ControlLoop.h
index c9e3381..9dde589 100644
--- a/aos/common/control_loop/ControlLoop.h
+++ b/aos/common/control_loop/ControlLoop.h
@@ -164,6 +164,9 @@
SimpleLogInterval driver_station_old_ =
SimpleLogInterval(kStaleLogInterval, ERROR,
"driver station packet is too old");
+ SimpleLogInterval no_sensor_generation_ =
+ SimpleLogInterval(kStaleLogInterval, ERROR,
+ "no sensor_generation message");
};
} // namespace control_loops