diff --git a/frogpilot/common/frogpilot_variables.py b/frogpilot/common/frogpilot_variables.py index 2355b651f..3a91ed6b3 100644 --- a/frogpilot/common/frogpilot_variables.py +++ b/frogpilot/common/frogpilot_variables.py @@ -62,6 +62,7 @@ THEME_SAVE_PATH = Path("/data/themes") ERROR_LOGS_PATH = Path("/data/error_logs") SCREEN_RECORDINGS_PATH = Path("/data/media/screen_recordings") VIDEO_CACHE_PATH = Path("/data/video_cache") +MODEL_MIGRATION_FLAG_PATH = Path("/data/params/d/ModelMigratedBd2ToSc") BACKUP_PATH = Path("/cache/on_backup") @@ -75,8 +76,8 @@ MAPD_PATH = Path("/data/media/0/osm/mapd") MAPS_PATH = Path("/data/media/0/osm/offline") NNFF_MODELS_PATH = Path(BASEDIR) / "frogpilot/assets/nnff_models" -DEFAULT_MODEL = "bd2" -DEFAULT_MODEL_NAME = "Firehose (Default) 👀📡" +DEFAULT_MODEL = "sc" +DEFAULT_MODEL_NAME = "South Carolina (Default) 👀📡" DEFAULT_MODEL_VERSION = "v11" BUTTON_FUNCTIONS = { @@ -534,6 +535,18 @@ class FrogPilotVariables: tuning_level = params.get_int("TuningLevel") if params.get_bool("TuningLevelConfirmed") else 3 + # One-time migration: move legacy bd2 selections to the new default sc model. + if not MODEL_MIGRATION_FLAG_PATH.is_file(): + if params.get("Model", encoding="utf-8") == "bd2": + params.put("Model", DEFAULT_MODEL) + params.put("ModelVersion", DEFAULT_MODEL_VERSION) + params_cache.put("Model", DEFAULT_MODEL) + params_cache.put("ModelVersion", DEFAULT_MODEL_VERSION) + try: + MODEL_MIGRATION_FLAG_PATH.touch(exist_ok=True) + except OSError: + pass + toggle.is_metric = params.get_bool("IsMetric") distance_conversion = 1 if toggle.is_metric else CV.FOOT_TO_METER small_distance_conversion = 1 if toggle.is_metric else CV.INCH_TO_CM diff --git a/frogpilot/tinygrad_modeld/models/driving_policy.onnx b/frogpilot/tinygrad_modeld/models/driving_policy.onnx index 3d4e8a131..706c95db9 100644 Binary files a/frogpilot/tinygrad_modeld/models/driving_policy.onnx and b/frogpilot/tinygrad_modeld/models/driving_policy.onnx differ diff --git a/frogpilot/tinygrad_modeld/models/driving_vision.onnx b/frogpilot/tinygrad_modeld/models/driving_vision.onnx index 36dfb4961..902f1dd34 100644 Binary files a/frogpilot/tinygrad_modeld/models/driving_vision.onnx and b/frogpilot/tinygrad_modeld/models/driving_vision.onnx differ diff --git a/frogpilot/tinygrad_modeld/tinygrad_modeld.py b/frogpilot/tinygrad_modeld/tinygrad_modeld.py index 61e7ca57e..df363fd1c 100755 --- a/frogpilot/tinygrad_modeld/tinygrad_modeld.py +++ b/frogpilot/tinygrad_modeld/tinygrad_modeld.py @@ -124,8 +124,8 @@ class ModelState: cloudlog.warning(f"ModelVersion parameter not available: {e}") model_dir = MODELS_PATH - # For the default "bd2" model, use built-in files from the models directory - if model_id == "bd2": + # For the default "sc" model, use built-in files from the models directory + if model_id == "sc": models_dir = Path(__file__).parent / "models" VISION_PKL_PATH = models_dir / "driving_vision_tinygrad.pkl" POLICY_PKL_PATH = models_dir / "driving_policy_tinygrad.pkl"