From 27f9288a0fbe171b02b0ac0300cd7b16bf2fec23 Mon Sep 17 00:00:00 2001 From: FrogAi <91348155+FrogAi@users.noreply.github.com> Date: Fri, 5 Jul 2024 16:06:22 -0700 Subject: [PATCH] FrogPilot setup - FrogPilot functions --- .../controls/lib/frogpilot_functions.py | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/selfdrive/frogpilot/controls/lib/frogpilot_functions.py b/selfdrive/frogpilot/controls/lib/frogpilot_functions.py index 1c8a6a86a..94626a8ae 100644 --- a/selfdrive/frogpilot/controls/lib/frogpilot_functions.py +++ b/selfdrive/frogpilot/controls/lib/frogpilot_functions.py @@ -1,12 +1,43 @@ import filecmp +import http.client import os import shutil +import socket import subprocess +import threading +import time +import urllib.error +import urllib.request from openpilot.common.basedir import BASEDIR +from openpilot.common.numpy_fast import clip, interp, mean from openpilot.common.params_pyx import Params, UnknownKeyName from openpilot.system.hardware import HARDWARE +def delete_file(file): + try: + os.remove(file) + print(f"Deleted file: {file}") + except FileNotFoundError: + print(f"File not found: {file}") + except Exception as e: + print(f"An error occurred: {e}") + +def is_url_pingable(url, timeout=5): + try: + urllib.request.urlopen(url, timeout=timeout) + return True + except (http.client.IncompleteRead, http.client.RemoteDisconnected, socket.gaierror, socket.timeout, urllib.error.HTTPError, urllib.error.URLError): + return False + +def update_frogpilot_toggles(): + def update_params(): + params_memory = Params("/dev/shm/params") + params_memory.put_bool("FrogPilotTogglesUpdated", True) + time.sleep(1) + params_memory.put_bool("FrogPilotTogglesUpdated", False) + threading.Thread(target=update_params).start() + def run_cmd(cmd, success_msg, fail_msg): try: subprocess.check_call(cmd)