diff --git a/package-lock.json b/package-lock.json
index 82d123f..7a960a2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -43,7 +43,7 @@
"mui-tel-input": "^7.0.0",
"notistack": "^3.0.1",
"openweathermap-ts": "^1.2.10",
- "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#staging",
+ "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#bus_chip",
"query-string": "^9.2.1",
"react": "^18.3.1",
"react-beautiful-dnd": "^13.1.1",
@@ -11967,7 +11967,7 @@
},
"node_modules/protobuf-ts": {
"version": "1.0.0",
- "resolved": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#080793fb450e5721fefd7a6f6f28df98e810ba90",
+ "resolved": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#dbe6d5a395c8fe8a098574e645aa14a99cdd7c85",
"dependencies": {
"protobufjs": "^6.8.8"
}
diff --git a/package.json b/package.json
index 90ac71b..9470353 100644
--- a/package.json
+++ b/package.json
@@ -55,7 +55,7 @@
"mui-tel-input": "^7.0.0",
"notistack": "^3.0.1",
"openweathermap-ts": "^1.2.10",
- "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#staging",
+ "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#bus_chip",
"query-string": "^9.2.1",
"react": "^18.3.1",
"react-beautiful-dnd": "^13.1.1",
diff --git a/src/device/DeviceOverview.tsx b/src/device/DeviceOverview.tsx
index 0170bde..0115568 100644
--- a/src/device/DeviceOverview.tsx
+++ b/src/device/DeviceOverview.tsx
@@ -1,5 +1,5 @@
import { Chip, Grid2 as Grid, Theme, Tooltip, Skeleton } from "@mui/material";
-import { DataUsage, SimCard, Launch } from "@mui/icons-material";
+import { DataUsage, SimCard, Launch, DeviceHub } from "@mui/icons-material";
import StatusChip from "common/StatusChip";
import DeviceTags from "device/DeviceTags";
import VersionChip from "device/VersionChip";
@@ -233,6 +233,17 @@ export default function DeviceOverview(props: Props) {
)}
+ {device.settings.needsBusControl && (
+
+
+ }
+ />
+
+
+ )}
{}
);
diff --git a/src/device/DeviceSettings.tsx b/src/device/DeviceSettings.tsx
index dea3cc7..a9277f5 100644
--- a/src/device/DeviceSettings.tsx
+++ b/src/device/DeviceSettings.tsx
@@ -235,6 +235,12 @@ export default function DeviceSettings(props: Props) {
setDeviceForm(updatedForm);
};
+ const toggleBusRequired = (event: any) => {
+ let updatedForm = Device.clone(deviceForm);
+ updatedForm.settings.needsBusControl = event.target.checked;
+ setDeviceForm(updatedForm);
+ };
+
const toggleSleeps = (event: any) => {
let updatedForm = Device.clone(deviceForm);
let updatedSleeps = event.target.checked;
@@ -500,7 +506,8 @@ export default function DeviceSettings(props: Props) {
)}
{user.hasAdmin() && (
-
+
+
+
+
+ }
+ disabled={!canEdit}
+ label="I2C Bus Required"
+ labelPlacement="end"
+ />
+
+
)}