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 {