@blueyerobotics/protocol-definitions 3.2.0-43e7a52a → 3.2.0-457224af

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/control.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
2
2
  import { SetAquaTrollConnectionStatus, SetAquaTrollParameterUnit } from "./aquatroll";
3
- import { AutoAltitudeState, AutoDepthState, AutoHeadingState, AutoPilotHeaveState, AutoPilotSurgeYawState, ConnectionDuration, GenericServo, GripperVelocities, GuestPortRestartInfo, Laser, LatLongPosition, Lights, MotionInput, MultibeamConfig, MultibeamServo, PingerConfiguration, RecordOn, ResetPositionSettings, StationKeepingState, StorageLocation, SystemTime, TiltStabilizationState, TiltVelocity, WaterDensity, WeatherVaningState } from "./message_formats";
3
+ import { AutoAltitudeState, AutoDepthState, AutoHeadingState, AutoPilotHeaveState, AutoPilotSurgeYawState, CameraPanTiltZoom, ConnectionDuration, FilterMessage, GenericServo, GripperVelocities, GuestPortRestartInfo, Laser, LatLongPosition, Lights, MotionInput, MultibeamConfig, MultibeamServo, OperatorInfo, PingerConfiguration, RecordOn, ResetPositionSettings, StationKeepingState, StorageLocation, SystemTime, TiltStabilizationState, TiltVelocity, WaterDensity, WeatherVaningState } from "./message_formats";
4
4
  /**
5
5
  * Control
6
6
  *
@@ -200,6 +200,8 @@ export interface DeactivateMultibeamCtrl {
200
200
  * at which point the user entered the dive view.
201
201
  */
202
202
  export interface StartDiveCtrl {
203
+ /** Optional information about the operator who started the dive. */
204
+ operatorInfo: OperatorInfo | undefined;
203
205
  }
204
206
  /**
205
207
  * Message sent when the user hits the end dive button in the app.
@@ -219,6 +221,26 @@ export interface EndDiveCtrl {
219
221
  */
220
222
  export interface FormatRemovableStorageDeviceCtrl {
221
223
  }
224
+ /** Message sent when the user wants to set turbidity filter settings. */
225
+ export interface SetTurbidityFilterCtrl {
226
+ /** Message with the turbidity filter settings to set. */
227
+ turbidityFilter: FilterMessage | undefined;
228
+ }
229
+ /**
230
+ * Issue a command to set the digital pan, tilt, and zoom of the main camera.
231
+ *
232
+ * Only supported on X3 Ultra.
233
+ */
234
+ export interface CameraPanTiltZoomCtrl {
235
+ /** The desired pan, tilt, and zoom state. */
236
+ cameraPanTiltZoom: CameraPanTiltZoom | undefined;
237
+ }
238
+ /** Message sent to start streaming log entries to the client. */
239
+ export interface StartLogStreamingCtrl {
240
+ }
241
+ /** Message sent to stop streaming log entries to the client. */
242
+ export interface StopLogStreamingCtrl {
243
+ }
222
244
  export declare const MotionInputCtrl: MessageFns<MotionInputCtrl>;
223
245
  export declare const TiltVelocityCtrl: MessageFns<TiltVelocityCtrl>;
224
246
  export declare const LightsCtrl: MessageFns<LightsCtrl>;
@@ -262,6 +284,10 @@ export declare const DeactivateMultibeamCtrl: MessageFns<DeactivateMultibeamCtrl
262
284
  export declare const StartDiveCtrl: MessageFns<StartDiveCtrl>;
263
285
  export declare const EndDiveCtrl: MessageFns<EndDiveCtrl>;
264
286
  export declare const FormatRemovableStorageDeviceCtrl: MessageFns<FormatRemovableStorageDeviceCtrl>;
287
+ export declare const SetTurbidityFilterCtrl: MessageFns<SetTurbidityFilterCtrl>;
288
+ export declare const CameraPanTiltZoomCtrl: MessageFns<CameraPanTiltZoomCtrl>;
289
+ export declare const StartLogStreamingCtrl: MessageFns<StartLogStreamingCtrl>;
290
+ export declare const StopLogStreamingCtrl: MessageFns<StopLogStreamingCtrl>;
265
291
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
266
292
  type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
267
293
  [K in keyof T]?: DeepPartial<T[K]>;
package/dist/control.js CHANGED
@@ -5,7 +5,7 @@
5
5
  // protoc v3.21.12
6
6
  // source: control.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.FormatRemovableStorageDeviceCtrl = exports.EndDiveCtrl = exports.StartDiveCtrl = exports.DeactivateMultibeamCtrl = exports.ActivateMultibeamCtrl = exports.SetMultibeamConfigCtrl = exports.SetAquaTrollConnectionStatusCtrl = exports.SetAquaTrollParameterUnitCtrl = exports.RestartGuestPortsCtrl = exports.ActivateGuestPortsCtrl = exports.DeactivateGuestPortsCtrl = exports.MultibeamServoCtrl = exports.GenericServoCtrl = exports.GripperCtrl = exports.SystemTimeCtrl = exports.PingerConfigurationCtrl = exports.WaterDensityCtrl = exports.TiltStabilizationCtrl = exports.CalibrateDvlGyroCtrl = exports.ResetOdometerCtrl = exports.ResetPositionCtrl = exports.ClearMissionCtrl = exports.PauseMissionCtrl = exports.RunMissionCtrl = exports.AutoPilotHeaveCtrl = exports.AutoPilotSurgeYawCtrl = exports.WeatherVaningCtrl = exports.StationKeepingCtrl = exports.AutoAltitudeCtrl = exports.AutoDepthCtrl = exports.AutoHeadingCtrl = exports.FinishCalibrationCtrl = exports.CancelCalibrationCtrl = exports.StartCalibrationCtrl = exports.TakePictureCtrl = exports.RecordCtrl = exports.WatchdogCtrl = exports.PilotGPSPositionCtrl = exports.LaserCtrl = exports.GuestportLightsCtrl = exports.LightsCtrl = exports.TiltVelocityCtrl = exports.MotionInputCtrl = void 0;
8
+ exports.StopLogStreamingCtrl = exports.StartLogStreamingCtrl = exports.CameraPanTiltZoomCtrl = exports.SetTurbidityFilterCtrl = exports.FormatRemovableStorageDeviceCtrl = exports.EndDiveCtrl = exports.StartDiveCtrl = exports.DeactivateMultibeamCtrl = exports.ActivateMultibeamCtrl = exports.SetMultibeamConfigCtrl = exports.SetAquaTrollConnectionStatusCtrl = exports.SetAquaTrollParameterUnitCtrl = exports.RestartGuestPortsCtrl = exports.ActivateGuestPortsCtrl = exports.DeactivateGuestPortsCtrl = exports.MultibeamServoCtrl = exports.GenericServoCtrl = exports.GripperCtrl = exports.SystemTimeCtrl = exports.PingerConfigurationCtrl = exports.WaterDensityCtrl = exports.TiltStabilizationCtrl = exports.CalibrateDvlGyroCtrl = exports.ResetOdometerCtrl = exports.ResetPositionCtrl = exports.ClearMissionCtrl = exports.PauseMissionCtrl = exports.RunMissionCtrl = exports.AutoPilotHeaveCtrl = exports.AutoPilotSurgeYawCtrl = exports.WeatherVaningCtrl = exports.StationKeepingCtrl = exports.AutoAltitudeCtrl = exports.AutoDepthCtrl = exports.AutoHeadingCtrl = exports.FinishCalibrationCtrl = exports.CancelCalibrationCtrl = exports.StartCalibrationCtrl = exports.TakePictureCtrl = exports.RecordCtrl = exports.WatchdogCtrl = exports.PilotGPSPositionCtrl = exports.LaserCtrl = exports.GuestportLightsCtrl = exports.LightsCtrl = exports.TiltVelocityCtrl = exports.MotionInputCtrl = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  const aquatroll_1 = require("./aquatroll");
@@ -1999,10 +1999,13 @@ exports.DeactivateMultibeamCtrl = {
1999
1999
  },
2000
2000
  };
2001
2001
  function createBaseStartDiveCtrl() {
2002
- return {};
2002
+ return { operatorInfo: undefined };
2003
2003
  }
2004
2004
  exports.StartDiveCtrl = {
2005
- encode(_, writer = new wire_1.BinaryWriter()) {
2005
+ encode(message, writer = new wire_1.BinaryWriter()) {
2006
+ if (message.operatorInfo !== undefined) {
2007
+ message_formats_1.OperatorInfo.encode(message.operatorInfo, writer.uint32(10).fork()).join();
2008
+ }
2006
2009
  return writer;
2007
2010
  },
2008
2011
  decode(input, length) {
@@ -2012,6 +2015,13 @@ exports.StartDiveCtrl = {
2012
2015
  while (reader.pos < end) {
2013
2016
  const tag = reader.uint32();
2014
2017
  switch (tag >>> 3) {
2018
+ case 1: {
2019
+ if (tag !== 10) {
2020
+ break;
2021
+ }
2022
+ message.operatorInfo = message_formats_1.OperatorInfo.decode(reader, reader.uint32());
2023
+ continue;
2024
+ }
2015
2025
  }
2016
2026
  if ((tag & 7) === 4 || tag === 0) {
2017
2027
  break;
@@ -2020,18 +2030,24 @@ exports.StartDiveCtrl = {
2020
2030
  }
2021
2031
  return message;
2022
2032
  },
2023
- fromJSON(_) {
2024
- return {};
2033
+ fromJSON(object) {
2034
+ return { operatorInfo: isSet(object.operatorInfo) ? message_formats_1.OperatorInfo.fromJSON(object.operatorInfo) : undefined };
2025
2035
  },
2026
- toJSON(_) {
2036
+ toJSON(message) {
2027
2037
  const obj = {};
2038
+ if (message.operatorInfo !== undefined) {
2039
+ obj.operatorInfo = message_formats_1.OperatorInfo.toJSON(message.operatorInfo);
2040
+ }
2028
2041
  return obj;
2029
2042
  },
2030
2043
  create(base) {
2031
2044
  return exports.StartDiveCtrl.fromPartial(base ?? {});
2032
2045
  },
2033
- fromPartial(_) {
2046
+ fromPartial(object) {
2034
2047
  const message = createBaseStartDiveCtrl();
2048
+ message.operatorInfo = (object.operatorInfo !== undefined && object.operatorInfo !== null)
2049
+ ? message_formats_1.OperatorInfo.fromPartial(object.operatorInfo)
2050
+ : undefined;
2035
2051
  return message;
2036
2052
  },
2037
2053
  };
@@ -2109,6 +2125,192 @@ exports.FormatRemovableStorageDeviceCtrl = {
2109
2125
  return message;
2110
2126
  },
2111
2127
  };
2128
+ function createBaseSetTurbidityFilterCtrl() {
2129
+ return { turbidityFilter: undefined };
2130
+ }
2131
+ exports.SetTurbidityFilterCtrl = {
2132
+ encode(message, writer = new wire_1.BinaryWriter()) {
2133
+ if (message.turbidityFilter !== undefined) {
2134
+ message_formats_1.FilterMessage.encode(message.turbidityFilter, writer.uint32(10).fork()).join();
2135
+ }
2136
+ return writer;
2137
+ },
2138
+ decode(input, length) {
2139
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
2140
+ const end = length === undefined ? reader.len : reader.pos + length;
2141
+ const message = createBaseSetTurbidityFilterCtrl();
2142
+ while (reader.pos < end) {
2143
+ const tag = reader.uint32();
2144
+ switch (tag >>> 3) {
2145
+ case 1: {
2146
+ if (tag !== 10) {
2147
+ break;
2148
+ }
2149
+ message.turbidityFilter = message_formats_1.FilterMessage.decode(reader, reader.uint32());
2150
+ continue;
2151
+ }
2152
+ }
2153
+ if ((tag & 7) === 4 || tag === 0) {
2154
+ break;
2155
+ }
2156
+ reader.skip(tag & 7);
2157
+ }
2158
+ return message;
2159
+ },
2160
+ fromJSON(object) {
2161
+ return {
2162
+ turbidityFilter: isSet(object.turbidityFilter) ? message_formats_1.FilterMessage.fromJSON(object.turbidityFilter) : undefined,
2163
+ };
2164
+ },
2165
+ toJSON(message) {
2166
+ const obj = {};
2167
+ if (message.turbidityFilter !== undefined) {
2168
+ obj.turbidityFilter = message_formats_1.FilterMessage.toJSON(message.turbidityFilter);
2169
+ }
2170
+ return obj;
2171
+ },
2172
+ create(base) {
2173
+ return exports.SetTurbidityFilterCtrl.fromPartial(base ?? {});
2174
+ },
2175
+ fromPartial(object) {
2176
+ const message = createBaseSetTurbidityFilterCtrl();
2177
+ message.turbidityFilter = (object.turbidityFilter !== undefined && object.turbidityFilter !== null)
2178
+ ? message_formats_1.FilterMessage.fromPartial(object.turbidityFilter)
2179
+ : undefined;
2180
+ return message;
2181
+ },
2182
+ };
2183
+ function createBaseCameraPanTiltZoomCtrl() {
2184
+ return { cameraPanTiltZoom: undefined };
2185
+ }
2186
+ exports.CameraPanTiltZoomCtrl = {
2187
+ encode(message, writer = new wire_1.BinaryWriter()) {
2188
+ if (message.cameraPanTiltZoom !== undefined) {
2189
+ message_formats_1.CameraPanTiltZoom.encode(message.cameraPanTiltZoom, writer.uint32(10).fork()).join();
2190
+ }
2191
+ return writer;
2192
+ },
2193
+ decode(input, length) {
2194
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
2195
+ const end = length === undefined ? reader.len : reader.pos + length;
2196
+ const message = createBaseCameraPanTiltZoomCtrl();
2197
+ while (reader.pos < end) {
2198
+ const tag = reader.uint32();
2199
+ switch (tag >>> 3) {
2200
+ case 1: {
2201
+ if (tag !== 10) {
2202
+ break;
2203
+ }
2204
+ message.cameraPanTiltZoom = message_formats_1.CameraPanTiltZoom.decode(reader, reader.uint32());
2205
+ continue;
2206
+ }
2207
+ }
2208
+ if ((tag & 7) === 4 || tag === 0) {
2209
+ break;
2210
+ }
2211
+ reader.skip(tag & 7);
2212
+ }
2213
+ return message;
2214
+ },
2215
+ fromJSON(object) {
2216
+ return {
2217
+ cameraPanTiltZoom: isSet(object.cameraPanTiltZoom)
2218
+ ? message_formats_1.CameraPanTiltZoom.fromJSON(object.cameraPanTiltZoom)
2219
+ : undefined,
2220
+ };
2221
+ },
2222
+ toJSON(message) {
2223
+ const obj = {};
2224
+ if (message.cameraPanTiltZoom !== undefined) {
2225
+ obj.cameraPanTiltZoom = message_formats_1.CameraPanTiltZoom.toJSON(message.cameraPanTiltZoom);
2226
+ }
2227
+ return obj;
2228
+ },
2229
+ create(base) {
2230
+ return exports.CameraPanTiltZoomCtrl.fromPartial(base ?? {});
2231
+ },
2232
+ fromPartial(object) {
2233
+ const message = createBaseCameraPanTiltZoomCtrl();
2234
+ message.cameraPanTiltZoom = (object.cameraPanTiltZoom !== undefined && object.cameraPanTiltZoom !== null)
2235
+ ? message_formats_1.CameraPanTiltZoom.fromPartial(object.cameraPanTiltZoom)
2236
+ : undefined;
2237
+ return message;
2238
+ },
2239
+ };
2240
+ function createBaseStartLogStreamingCtrl() {
2241
+ return {};
2242
+ }
2243
+ exports.StartLogStreamingCtrl = {
2244
+ encode(_, writer = new wire_1.BinaryWriter()) {
2245
+ return writer;
2246
+ },
2247
+ decode(input, length) {
2248
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
2249
+ const end = length === undefined ? reader.len : reader.pos + length;
2250
+ const message = createBaseStartLogStreamingCtrl();
2251
+ while (reader.pos < end) {
2252
+ const tag = reader.uint32();
2253
+ switch (tag >>> 3) {
2254
+ }
2255
+ if ((tag & 7) === 4 || tag === 0) {
2256
+ break;
2257
+ }
2258
+ reader.skip(tag & 7);
2259
+ }
2260
+ return message;
2261
+ },
2262
+ fromJSON(_) {
2263
+ return {};
2264
+ },
2265
+ toJSON(_) {
2266
+ const obj = {};
2267
+ return obj;
2268
+ },
2269
+ create(base) {
2270
+ return exports.StartLogStreamingCtrl.fromPartial(base ?? {});
2271
+ },
2272
+ fromPartial(_) {
2273
+ const message = createBaseStartLogStreamingCtrl();
2274
+ return message;
2275
+ },
2276
+ };
2277
+ function createBaseStopLogStreamingCtrl() {
2278
+ return {};
2279
+ }
2280
+ exports.StopLogStreamingCtrl = {
2281
+ encode(_, writer = new wire_1.BinaryWriter()) {
2282
+ return writer;
2283
+ },
2284
+ decode(input, length) {
2285
+ const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
2286
+ const end = length === undefined ? reader.len : reader.pos + length;
2287
+ const message = createBaseStopLogStreamingCtrl();
2288
+ while (reader.pos < end) {
2289
+ const tag = reader.uint32();
2290
+ switch (tag >>> 3) {
2291
+ }
2292
+ if ((tag & 7) === 4 || tag === 0) {
2293
+ break;
2294
+ }
2295
+ reader.skip(tag & 7);
2296
+ }
2297
+ return message;
2298
+ },
2299
+ fromJSON(_) {
2300
+ return {};
2301
+ },
2302
+ toJSON(_) {
2303
+ const obj = {};
2304
+ return obj;
2305
+ },
2306
+ create(base) {
2307
+ return exports.StopLogStreamingCtrl.fromPartial(base ?? {});
2308
+ },
2309
+ fromPartial(_) {
2310
+ const message = createBaseStopLogStreamingCtrl();
2311
+ return message;
2312
+ },
2313
+ };
2112
2314
  const gt = (() => {
2113
2315
  if (typeof globalThis !== "undefined") {
2114
2316
  return globalThis;
@@ -184,6 +184,8 @@ export declare enum Model {
184
184
  MODEL_X3 = 3,
185
185
  /** MODEL_X3_ULTRA - Blueye X3 Ultra. */
186
186
  MODEL_X3_ULTRA = 6,
187
+ /** MODEL_X7 - Blueye X7. */
188
+ MODEL_X7 = 7,
187
189
  /** MODEL_NEXT - Blueye ? */
188
190
  MODEL_NEXT = 5,
189
191
  UNRECOGNIZED = -1
@@ -218,11 +220,18 @@ export declare enum Resolution {
218
220
  RESOLUTION_FULLHD_1080P = 1,
219
221
  /** RESOLUTION_UHD_4K - 4K Ultra HD (3840x2160, Only supported on X3 Ultra). */
220
222
  RESOLUTION_UHD_4K = 3,
223
+ /** RESOLUTION_QHD_2K - 2K QHD (2560x1440, Only supported on X3 Ultra). */
224
+ RESOLUTION_QHD_2K = 5,
221
225
  UNRECOGNIZED = -1
222
226
  }
223
227
  export declare function resolutionFromJSON(object: any): Resolution;
224
228
  export declare function resolutionToJSON(object: Resolution): string;
225
- /** Available camera frame rates. */
229
+ /**
230
+ * Available camera frame rates.
231
+ *
232
+ * If the requested frame rate is higher than what is supported at the current resolution,
233
+ * the frame rate will be reduced while the resolution is respected.
234
+ */
226
235
  export declare enum Framerate {
227
236
  /** FRAMERATE_UNSPECIFIED - Framerate not specified. */
228
237
  FRAMERATE_UNSPECIFIED = 0,
@@ -230,6 +239,8 @@ export declare enum Framerate {
230
239
  FRAMERATE_FPS_30 = 1,
231
240
  /** FRAMERATE_FPS_25 - 25 frames per second. (Only supported on Pioneer/Pro/X1/X3) */
232
241
  FRAMERATE_FPS_25 = 2,
242
+ /** FRAMERATE_FPS_60 - 60 frames per second. (Only supported on X3 Ultra at QHD, 1080p and 720p) */
243
+ FRAMERATE_FPS_60 = 3,
233
244
  UNRECOGNIZED = -1
234
245
  }
235
246
  export declare function framerateFromJSON(object: any): Framerate;
@@ -257,6 +268,18 @@ export declare enum StreamingProtocol {
257
268
  }
258
269
  export declare function streamingProtocolFromJSON(object: any): StreamingProtocol;
259
270
  export declare function streamingProtocolToJSON(object: StreamingProtocol): string;
271
+ /** Recording video codec. */
272
+ export declare enum RecordingCodec {
273
+ /** RECORDING_CODEC_UNSPECIFIED - Use platform default (H.264). */
274
+ RECORDING_CODEC_UNSPECIFIED = 0,
275
+ /** RECORDING_CODEC_H264 - H.264/AVC codec. Wider compatibility with players/editors. */
276
+ RECORDING_CODEC_H264 = 1,
277
+ /** RECORDING_CODEC_H265 - H.265/HEVC codec. Better compression, limited compatibility. Ultra only. */
278
+ RECORDING_CODEC_H265 = 2,
279
+ UNRECOGNIZED = -1
280
+ }
281
+ export declare function recordingCodecFromJSON(object: any): RecordingCodec;
282
+ export declare function recordingCodecToJSON(object: RecordingCodec): string;
260
283
  /** Available temperature units. */
261
284
  export declare enum TemperatureUnit {
262
285
  /** TEMPERATURE_UNIT_UNSPECIFIED - Temperature unit not specified. */
@@ -425,6 +448,8 @@ export declare enum GuestPortDeviceID {
425
448
  GUEST_PORT_DEVICE_ID_BLUEYE_MULTIBEAM_SERVO_V2 = 46,
426
449
  /** GUEST_PORT_DEVICE_ID_CERULEAN_OMNISCAN_450_COMPACT - Cerulean Omniscan 450 Compact. */
427
450
  GUEST_PORT_DEVICE_ID_CERULEAN_OMNISCAN_450_COMPACT = 47,
451
+ /** GUEST_PORT_DEVICE_ID_BLUEYE_SCALING_LASER - Blueye Scaling Laser. */
452
+ GUEST_PORT_DEVICE_ID_BLUEYE_SCALING_LASER = 48,
428
453
  UNRECOGNIZED = -1
429
454
  }
430
455
  export declare function guestPortDeviceIDFromJSON(object: any): GuestPortDeviceID;
@@ -510,6 +535,18 @@ export declare enum MultibeamFrequencyMode {
510
535
  }
511
536
  export declare function multibeamFrequencyModeFromJSON(object: any): MultibeamFrequencyMode;
512
537
  export declare function multibeamFrequencyModeToJSON(object: MultibeamFrequencyMode): string;
538
+ /** Thermal zone identifiers. */
539
+ export declare enum ThermalZoneId {
540
+ /** THERMAL_ZONE_ID_UNSPECIFIED - Unspecified thermal zone. */
541
+ THERMAL_ZONE_ID_UNSPECIFIED = 0,
542
+ /** THERMAL_ZONE_ID_TJ - Junction temperature (Tj). */
543
+ THERMAL_ZONE_ID_TJ = 1,
544
+ /** THERMAL_ZONE_ID_CANISTER - Canister temperature. */
545
+ THERMAL_ZONE_ID_CANISTER = 2,
546
+ UNRECOGNIZED = -1
547
+ }
548
+ export declare function thermalZoneIdFromJSON(object: any): ThermalZoneId;
549
+ export declare function thermalZoneIdToJSON(object: ThermalZoneId): string;
513
550
  /**
514
551
  * Wrapper message for each entry in the drone telemetry logfile.
515
552
  *
@@ -778,8 +815,12 @@ export interface RecordState {
778
815
  multibeamSeconds: number;
779
816
  /** Multibeam record fps. */
780
817
  multibeamFps: number;
781
- /** Storage location used for recording. */
782
- storageLocation: StorageLocation;
818
+ /** Storage location used for main camera recording. */
819
+ mainStorageLocation: StorageLocation;
820
+ /** Storage location used for guestport camera recording. */
821
+ guestportStorageLocation: StorageLocation;
822
+ /** Storage location used for multibeam recording. */
823
+ multibeamStorageLocation: StorageLocation;
783
824
  }
784
825
  /** Time-lapse state published if time-lapse mission is running. */
785
826
  export interface TimeLapseState {
@@ -825,7 +866,7 @@ export interface WaterTemperature {
825
866
  /** Water temperature (°C). */
826
867
  value: number;
827
868
  }
828
- /** CPU temperature. */
869
+ /** CPU temperature (deprecated, use SystemPerformanceInfo.thermal_zones instead). */
829
870
  export interface CPUTemperature {
830
871
  /** CPU temperature (°C). */
831
872
  value: number;
@@ -1297,10 +1338,12 @@ export declare enum RemovableStorageDevice_Status {
1297
1338
  STATUS_UNSPECIFIED = 0,
1298
1339
  /** STATUS_READY - The storage device is valid and ready for use. */
1299
1340
  STATUS_READY = 1,
1300
- /** STATUS_FORMATTING - The storage device is being formatted */
1341
+ /** STATUS_FORMATTING - The storage device is being formatted. */
1301
1342
  STATUS_FORMATTING = 2,
1302
1343
  /** STATUS_ERROR - The storage device is in an error state. */
1303
1344
  STATUS_ERROR = 3,
1345
+ /** STATUS_UNPLUGGED - The storage device is not present. */
1346
+ STATUS_UNPLUGGED = 4,
1304
1347
  UNRECOGNIZED = -1
1305
1348
  }
1306
1349
  export declare function removableStorageDevice_StatusFromJSON(object: any): RemovableStorageDevice_Status;
@@ -1567,6 +1610,19 @@ export interface CameraParameters {
1567
1610
  framerate: Framerate;
1568
1611
  /** Which camera the parameters belong to. */
1569
1612
  camera: Camera;
1613
+ /**
1614
+ * Network MTU (Maximum Transmission Unit) size for video streaming in bytes (68..65535).
1615
+ * If 0 or unset, the system will use a default of 1400.
1616
+ * The Blueye App allows users to set values between 500 and 1460.
1617
+ */
1618
+ mtuSize: number;
1619
+ /** Recording video codec. If unset, uses platform default. */
1620
+ recordingCodec: RecordingCodec;
1621
+ /**
1622
+ * Recording bitrate in bits/sec. If 0 or unset, a default is computed based
1623
+ * on resolution, framerate, and encoding. Set explicitly to override.
1624
+ */
1625
+ recordingBitrate: number;
1570
1626
  }
1571
1627
  /**
1572
1628
  * Overlay parameters.
@@ -1932,7 +1988,7 @@ export interface PersistentStorageSettings {
1932
1988
  accCalibration: boolean;
1933
1989
  }
1934
1990
  /**
1935
- * CPU information.
1991
+ * CPU information (deprecated, use SystemPerformanceInfo instead).
1936
1992
  *
1937
1993
  * Contains information about the CPU load and memory usage of the drone.
1938
1994
  */
@@ -1948,6 +2004,119 @@ export interface CPUInfo {
1948
2004
  /** Communication queue load (0..1). */
1949
2005
  commQueueLoad: number;
1950
2006
  }
2007
+ /** Per-core CPU utilization. */
2008
+ export interface CpuCoreLoad {
2009
+ /** Core index (0-based). */
2010
+ coreIndex: number;
2011
+ /** Core load (0..1). */
2012
+ load: number;
2013
+ /** Current clock frequency (MHz). */
2014
+ frequencyMhz: number;
2015
+ }
2016
+ /** GPU utilization and status. */
2017
+ export interface GpuInfo {
2018
+ /** GPU load (0..1). */
2019
+ load: number;
2020
+ /** Current GPU clock frequency (MHz). */
2021
+ frequencyMhz: number;
2022
+ }
2023
+ /**
2024
+ * Deep Learning Accelerator (DLA) utilization.
2025
+ *
2026
+ * Jetson Orin NX has two DLA engines used for inference offload.
2027
+ */
2028
+ export interface DlaInfo {
2029
+ /** DLA engine index (0-based). */
2030
+ engineIndex: number;
2031
+ /** DLA engine load (0..1). */
2032
+ load: number;
2033
+ /** Core clock frequency (MHz). 0 when disabled. */
2034
+ frequencyMhz: number;
2035
+ /** True when the DLA engine is actively processing. */
2036
+ enabled: boolean;
2037
+ /** Falcon microcontroller clock frequency (MHz). 0 when disabled. */
2038
+ falconFrequencyMhz: number;
2039
+ }
2040
+ /** System memory information. */
2041
+ export interface MemoryInfo {
2042
+ /** Total RAM (bytes). */
2043
+ totalBytes: number;
2044
+ /** Used RAM (bytes). */
2045
+ usedBytes: number;
2046
+ /** Cached RAM (bytes). */
2047
+ cachedBytes: number;
2048
+ /** Memory bus utilization (0..1). i.MX only. */
2049
+ busLoad: number;
2050
+ }
2051
+ /** Thermal zone reading. */
2052
+ export interface ThermalZone {
2053
+ /** Thermal zone identifier. */
2054
+ zone: ThermalZoneId;
2055
+ /** Temperature (°C). */
2056
+ temperature: number;
2057
+ }
2058
+ /** Video codec engine status. */
2059
+ export interface VideoCodecInfo {
2060
+ /** Jetson only (NVENC/NVDEC/NVJPG/VIC devfreq). */
2061
+ encoderActive: boolean;
2062
+ /** Video encoder clock frequency (MHz). */
2063
+ encoderFrequencyMhz: number;
2064
+ /** Video decoder (NVDEC) is active. */
2065
+ decoderActive: boolean;
2066
+ /** Video decoder clock frequency (MHz). */
2067
+ decoderFrequencyMhz: number;
2068
+ /** JPEG engine (NVJPG) is active. */
2069
+ nvjpgActive: boolean;
2070
+ /** JPEG engine clock frequency (MHz). */
2071
+ nvjpgFrequencyMhz: number;
2072
+ /** Video Image Compositor (VIC) is active. */
2073
+ vicActive: boolean;
2074
+ /** VIC clock frequency (MHz). */
2075
+ vicFrequencyMhz: number;
2076
+ /** i.MX only (CODA VPU). */
2077
+ vpuActive: boolean;
2078
+ /** VPU AXI clock frequency (MHz). */
2079
+ vpuFrequencyMhz: number;
2080
+ /** Cumulative VPU_CODEC_IRQ count. */
2081
+ vpuCodecIrqCount: number;
2082
+ /** Cumulative VPU_JPG_IRQ count. */
2083
+ vpuJpgIrqCount: number;
2084
+ }
2085
+ /**
2086
+ * System performance information.
2087
+ *
2088
+ * Comprehensive performance metrics for the drone's compute platform.
2089
+ * Covers CPU, GPU, DLA, memory, thermals, and video codec utilization.
2090
+ * Fields not applicable to a platform are left at their zero/empty defaults.
2091
+ */
2092
+ export interface SystemPerformanceInfo {
2093
+ /** Per-core CPU utilization. */
2094
+ cpuCores: CpuCoreLoad[];
2095
+ /** Mean CPU utilization across all cores (0..1). */
2096
+ cpuUtilization: number;
2097
+ /** GPU utilization. */
2098
+ gpu: GpuInfo | undefined;
2099
+ /** DLA engine utilization (Jetson only). */
2100
+ dlaEngines: DlaInfo[];
2101
+ /** RAM usage. */
2102
+ memory: MemoryInfo | undefined;
2103
+ /** All thermal zone readings. */
2104
+ thermalZones: ThermalZone[];
2105
+ /** Video encoder/decoder status. */
2106
+ videoCodec: VideoCodecInfo | undefined;
2107
+ /** Main queue load (0..1). */
2108
+ mainQueueLoad: number;
2109
+ /** Guestport queue load (0..1). */
2110
+ guestportQueueLoad: number;
2111
+ /** Communication queue load (0..1). */
2112
+ commQueueLoad: number;
2113
+ /** Camera queue load (0..1). */
2114
+ cameraQueueLoad: number;
2115
+ /** Overlay queue load (0..1). */
2116
+ overlayQueueLoad: number;
2117
+ /** Position observer queue load (0..1). */
2118
+ positionObserverQueueLoad: number;
2119
+ }
1951
2120
  /**
1952
2121
  * Surface Unit battery information.
1953
2122
  *
@@ -1979,6 +2148,78 @@ export interface SurfaceUnitVersionInfo {
1979
2148
  /** Surface Unit firmware version (x.y.z). */
1980
2149
  version: string;
1981
2150
  }
2151
+ /**
2152
+ * Bounding box for object detection.
2153
+ *
2154
+ * Coordinates are in pixels relative to the camera image,
2155
+ * where (x, y) is the top-left corner of the bounding box.
2156
+ */
2157
+ export interface BoundingBox {
2158
+ /** Horizontal offset of the top-left corner (px). */
2159
+ x: number;
2160
+ /** Vertical offset of the top-left corner (px). */
2161
+ y: number;
2162
+ /** Width of the bounding box (px). */
2163
+ width: number;
2164
+ /** Height of the bounding box (px). */
2165
+ height: number;
2166
+ }
2167
+ /** A single object detection from a computer vision model. */
2168
+ export interface ObjectDetection {
2169
+ /** Bounding box of the detected object. */
2170
+ boundingBox: BoundingBox | undefined;
2171
+ /** Detection confidence score (0..1). */
2172
+ confidence: number;
2173
+ /** Numeric class identifier from the model. */
2174
+ classId: number;
2175
+ /** Human-readable class name. */
2176
+ className: string;
2177
+ /** Unique ID for tracking the same object across frames. */
2178
+ trackingId: number;
2179
+ }
2180
+ /** A list of object detections from a single video frame. */
2181
+ export interface ObjectDetections {
2182
+ /** List of detections in the frame. */
2183
+ detections: ObjectDetection[];
2184
+ /** Which camera the detections are from. */
2185
+ camera: Camera;
2186
+ /** Width of the source image (px). */
2187
+ imageWidth: number;
2188
+ /** Height of the source image (px). */
2189
+ imageHeight: number;
2190
+ }
2191
+ /** Generic filter settings. */
2192
+ export interface FilterMessage {
2193
+ /** If the filter is enabled. */
2194
+ enabled: boolean;
2195
+ /** Intensity of the filter (0..1). */
2196
+ intensity: number;
2197
+ }
2198
+ /**
2199
+ * Digital pan, tilt, and zoom state for the main camera.
2200
+ *
2201
+ * Only supported on X3 Ultra. Controls digital (not mechanical) zoom.
2202
+ */
2203
+ export interface CameraPanTiltZoom {
2204
+ /** Horizontal pan (-1.0..1.0), where 0.0 is center. */
2205
+ pan: number;
2206
+ /** Vertical tilt (-1.0..1.0), where 0.0 is center. */
2207
+ tilt: number;
2208
+ /** Zoom level (0.0..1.0), where 0.0 is no zoom and 1.0 is maximum zoom. */
2209
+ zoom: number;
2210
+ }
2211
+ /**
2212
+ * Information about the operator controlling the drone.
2213
+ *
2214
+ * Used to identify who started a dive, for reporting and when importing
2215
+ * dives to Blueye Cloud.
2216
+ */
2217
+ export interface OperatorInfo {
2218
+ /** Full name of the operator. */
2219
+ name: string;
2220
+ /** E-mail address of the operator. */
2221
+ email: string;
2222
+ }
1982
2223
  export declare const BinlogRecord: MessageFns<BinlogRecord>;
1983
2224
  export declare const LogEntry: MessageFns<LogEntry>;
1984
2225
  export declare const KernelLogEntry: MessageFns<KernelLogEntry>;
@@ -2068,8 +2309,21 @@ export declare const MultibeamFrameOffset: MessageFns<MultibeamFrameOffset>;
2068
2309
  export declare const MutltibeamRecordingIndex: MessageFns<MutltibeamRecordingIndex>;
2069
2310
  export declare const PersistentStorageSettings: MessageFns<PersistentStorageSettings>;
2070
2311
  export declare const CPUInfo: MessageFns<CPUInfo>;
2312
+ export declare const CpuCoreLoad: MessageFns<CpuCoreLoad>;
2313
+ export declare const GpuInfo: MessageFns<GpuInfo>;
2314
+ export declare const DlaInfo: MessageFns<DlaInfo>;
2315
+ export declare const MemoryInfo: MessageFns<MemoryInfo>;
2316
+ export declare const ThermalZone: MessageFns<ThermalZone>;
2317
+ export declare const VideoCodecInfo: MessageFns<VideoCodecInfo>;
2318
+ export declare const SystemPerformanceInfo: MessageFns<SystemPerformanceInfo>;
2071
2319
  export declare const SurfaceUnitBatteryInfo: MessageFns<SurfaceUnitBatteryInfo>;
2072
2320
  export declare const SurfaceUnitVersionInfo: MessageFns<SurfaceUnitVersionInfo>;
2321
+ export declare const BoundingBox: MessageFns<BoundingBox>;
2322
+ export declare const ObjectDetection: MessageFns<ObjectDetection>;
2323
+ export declare const ObjectDetections: MessageFns<ObjectDetections>;
2324
+ export declare const FilterMessage: MessageFns<FilterMessage>;
2325
+ export declare const CameraPanTiltZoom: MessageFns<CameraPanTiltZoom>;
2326
+ export declare const OperatorInfo: MessageFns<OperatorInfo>;
2073
2327
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
2074
2328
  type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
2075
2329
  [K in keyof T]?: DeepPartial<T[K]>;