// Found a stable signal, so stop scanning.
is_mode_scanning[card_index] = false;
} else {
// Found a stable signal, so stop scanning.
is_mode_scanning[card_index] = false;
} else {
steady_clock::time_point now = steady_clock::now();
double sec_since_last_switch = duration<double>(steady_clock::now() - last_mode_scan_change[card_index]).count();
if (sec_since_last_switch > switch_time_s) {
steady_clock::time_point now = steady_clock::now();
double sec_since_last_switch = duration<double>(steady_clock::now() - last_mode_scan_change[card_index]).count();
if (sec_since_last_switch > switch_time_s) {