(void *)(intptr_t)power_level);
}
-/* called every second */
+/* called every second to decide which power should be used */
static void compute_best_power(void)
{
int8_t best_power_level = -1;
power_level_global = best_power_level;
}
-static uint8_t get_best_power(void)
+/* return the best power level, or -1 if best power level computation is
+ * disabled. */
+static int8_t get_best_power(void)
{
+ if ((rc_proto_flags & RC_PROTO_FLAGS_COMPUTE_BEST_POW) == 0)
+ return -1;
+
/* special values */
if (power_level_global == -1) {
power_level_global = -4;
}
/* send stats to peer every second */
- diff = t - prev_compute_pow;
- if (diff >= 1000) {
- compute_best_power();
- prev_compute_pow = t;
+ if (rc_proto_flags & RC_PROTO_FLAGS_COMPUTE_BEST_POW) {
+ diff = t - prev_compute_pow;
+ if (diff >= 1000) {
+ compute_best_power();
+ prev_compute_pow = t;
+ }
}
/* send stats to peer every second */
printf_P(PSTR(" servo_tx: %"PRIu32"\r\n"), peer_stats.servo_tx);
printf_P(PSTR(" stats_rx: %"PRIu32"\r\n"), peer_stats.stats_rx);
printf_P(PSTR(" stats_tx: %"PRIu32"\r\n"), peer_stats.stats_tx);
- if (stats.echo_ans_rx != 0) {
+ if (peer_stats.echo_ans_rx != 0) {
printf_P(PSTR(" echo_ans_latency_ms: %"PRIu32"\r\n"),
peer_stats.echo_ans_latency_sum / peer_stats.echo_ans_rx);
}