else if(strcmp(subcmd, "resolution") == 0) uint8_t val = atoi(strtok(NULL, " ")); if(val <= 2) adaptive_bb_config.resolution = val; cliPrintLinef("Resolution set to %d", val);
if(subcmd == NULL) // Show status cliPrintLinef("Adaptive Blackbox Status:"); cliPrintLinef("Flash total: %u bytes", flash_status.total_bytes); cliPrintLinef("Free: %u bytes (%u%%)", flash_status.free_bytes, 100 - flash_status.percent_used); cliPrintLinef("Est. recording: %d seconds", flash_status.estimated_log_seconds); cliPrintLinef("Resolution: %s", adaptive_bb_config.resolution == 0 ? "Low" : adaptive_bb_config.resolution == 1 ? "Normal" : "High"); cliPrintLinef("Auto erase: %s", adaptive_bb_config.auto_erase ? "ON" : "OFF"); cliPrintLinef("Dynamic rate: %s", adaptive_bb_config.dynamic_rate ? "ON" : "OFF"); 2m flash - use fmuv3 firmware
Enter —a community-developed, open-source firmware fork that transforms these budget radios into serious VHF contest-grade tools. If you want to pull in weak APRS signals or hear that repeater 80 miles away, flashing FMUV3 is not optional; it is essential. else if(strcmp(subcmd, "resolution") == 0) uint8_t val =
#include <stdbool.h> #include <stdint.h> #include "platform.h" #include "drivers/flash.h" #include "drivers/flash_m25p16.h" #include "drivers/time.h" #include "build/build_config.h" If you want to pull in weak APRS