diff --git a/photon-client/src/components/settings/NetworkingCard.vue b/photon-client/src/components/settings/NetworkingCard.vue index e13da815c2..ed373271c6 100644 --- a/photon-client/src/components/settings/NetworkingCard.vue +++ b/photon-client/src/components/settings/NetworkingCard.vue @@ -106,27 +106,36 @@ const saveGeneralSettings = () => { The NetworkTables Server Address is not set or is invalid. NetworkTables is unable to connect. + + Advanced Networking + > calibrations; public boolean isFovConfigurable = true; } - - @Override - public String toString() { - return "PhotonConfiguration [hardwareConfig=" - + hardwareConfig - + ", hardwareSettings=" - + hardwareSettings - + ", networkConfig=" - + networkConfig - + ", cameraConfigurations=" - + cameraConfigurations - + "]"; - } } diff --git a/photon-core/src/main/java/org/photonvision/common/configuration/SqlConfigProvider.java b/photon-core/src/main/java/org/photonvision/common/configuration/SqlConfigProvider.java index cad4325c4b..e9957eb161 100644 --- a/photon-core/src/main/java/org/photonvision/common/configuration/SqlConfigProvider.java +++ b/photon-core/src/main/java/org/photonvision/common/configuration/SqlConfigProvider.java @@ -62,7 +62,6 @@ static class TableKeys { private static final String dbName = "photon.sqlite"; private final String dbPath; - private PhotonConfiguration config; private final Object m_mutex = new Object(); private final File rootFolder; diff --git a/photon-core/src/main/java/org/photonvision/common/networking/NetworkManager.java b/photon-core/src/main/java/org/photonvision/common/networking/NetworkManager.java index 9fde92cc94..b35f180160 100644 --- a/photon-core/src/main/java/org/photonvision/common/networking/NetworkManager.java +++ b/photon-core/src/main/java/org/photonvision/common/networking/NetworkManager.java @@ -38,9 +38,10 @@ public static NetworkManager getInstance() { } private boolean isManaged = false; + public boolean networkingIsDisabled = false; // Passed in via CLI public void initialize(boolean shouldManage) { - isManaged = shouldManage; + isManaged = shouldManage && !networkingIsDisabled; if (!isManaged) { return; } diff --git a/photon-server/src/main/java/org/photonvision/Main.java b/photon-server/src/main/java/org/photonvision/Main.java index 7e363ac8c5..e4b0410def 100644 --- a/photon-server/src/main/java/org/photonvision/Main.java +++ b/photon-server/src/main/java/org/photonvision/Main.java @@ -80,6 +80,12 @@ private static boolean handleArgs(String[] args) throws ParseException { "ignore-cameras", true, "Ignore cameras that match a regex. Uses camera name as provided by cscore."); + options.addOption("n", "disable-networking", false, "Disables control device network settings"); + options.addOption( + "c", + "clear-config", + false, + "Clears PhotonVision pipeline and networking settings. Preserves log files"); CommandLineParser parser = new DefaultParser(); CommandLine cmd = parser.parse(options, args); @@ -109,6 +115,14 @@ private static boolean handleArgs(String[] args) throws ParseException { VisionSourceManager.getInstance() .setIgnoredCamerasRegex(cmd.getOptionValue("ignore-cameras")); } + + if (cmd.hasOption("disable-networking")) { + NetworkManager.getInstance().networkingIsDisabled = true; + } + + if (cmd.hasOption("clear-config")) { + ConfigManager.getInstance().clearConfig(); + } } return true; } @@ -313,9 +327,11 @@ public static void main(String[] args) { } try { - LibCameraJNI.forceLoad(); + if (Platform.isRaspberryPi()) { + LibCameraJNI.forceLoad(); + } } catch (IOException e) { - logger.error("Failed to load native libraries!", e); + logger.error("Failed to load libcamera-JNI!", e); } try {