diff --git a/src/drivers/distance_sensor/broadcom/afbrs50/AFBRS50.cpp b/src/drivers/distance_sensor/broadcom/afbrs50/AFBRS50.cpp index ecd6fd8543..3e272f10b9 100644 --- a/src/drivers/distance_sensor/broadcom/afbrs50/AFBRS50.cpp +++ b/src/drivers/distance_sensor/broadcom/afbrs50/AFBRS50.cpp @@ -281,7 +281,6 @@ void AFBRS50::Run() status_t status = Argus_TriggerMeasurement(_hnd, measurementReadyCallback); if (status != STATUS_OK) { - // PX4_ERR("Argus_TriggerMeasurement status not okay: %i", (int)status); perf_count(_not_ready_perf); // Reschedule another trigger _state = STATE::TRIGGER; @@ -305,6 +304,7 @@ void AFBRS50::Run() if (elapsed > _measurement_inverval) { ScheduleNow(); + } else { ScheduleDelayed(_measurement_inverval - elapsed); } diff --git a/src/drivers/distance_sensor/broadcom/afbrs50/API/Src/s2pi.cpp b/src/drivers/distance_sensor/broadcom/afbrs50/API/Src/s2pi.cpp index 126b657a71..ca3ce1857e 100644 --- a/src/drivers/distance_sensor/broadcom/afbrs50/API/Src/s2pi.cpp +++ b/src/drivers/distance_sensor/broadcom/afbrs50/API/Src/s2pi.cpp @@ -70,6 +70,8 @@ private: }; AFBRS50_SPI::AFBRS50_SPI(): + // WARNING: SPI0 only exists for nxp and raspberry pi, so we hijack it here + // NOTE: we use SPI0 WQ since it is the 2nd highest priority thread (behind rate_ctrl). // TODO: we should fix how SPI comms work. Async SPI comms is // undesirable. We should use SPI TX DMA complete callback