BridgeBox
API target version (defaults to the latest)
Transfer error type
Method action type
Payload
Vehicle interface provides a base interfaces for vehicle devices, including ROVs and crawlers.
Pan-Tilt Camera Head
Pan-Tilt Camera Head
Crawler Camera Head
Camera Head
📷 DT Cam
📷 4k UHD Camera
📷 Tamron-Harrier Zoom Camera
📷 Tamron-OClea Zoom Camera
📷 Zoom Camera
Device Version
Device Version is a base interface for hardware and software version sample payloads. -1 hardware versions and 0.0 software versions refer to not applicable
Device
Device interface is a base interface for interacting with derived device types such as vehicles, reels, cameras, etc. In order to properly parse and generate the derived interface data, an appropriate schema must be selected. This can be done by parsing the device's @param model and mapping the associated device schema.
IP address
Deep Trekker internal device model numbers. This can be used for selecting the associated device schema.
Version
Tilt Camera Head
📷 Camera
🔋 Battery
Battery charging state
Battery charge percentage
Battery voltage
BatteryDiagnostics
TODO: Add samples for all devices that use battery diagnostics
Average current (mA)
Average voltage (mV)
Estimated state of charge
Instant current (mA)
Instant voltage (mV)
Last full charge capacity (mAh)
Remaining capacity (mAh)
Reported charge cycles (charge cycles currently reported by the battery monitoring chip)
Time till empty (minutes)
Time till full (minutes)
Total charge cycles (charge cycles over the battery's lifetime)
Calibrated
Calibrator
Calibrator | Front-end (request) | Back-end (response) |
---|---|---|
true |
Calibrate | - |
false |
Cancel Calibration | - |
undefined |
- | - |
Motor Diagnostics
Motor Current (mA)
Failure Fault
Overcurrent Fault
Motor PWM (%)
RPM
Usage Time
The usage time of a device.
Current usage time in seconds.
Total usage time in seconds.
Grabber
Open Close motor
openCloseMotorDiagnostics
Rotation motor
rotateMotorDiagnostics
🔦 Laser
Laser Enabled
true
= enabledfalse
= disabledFrom ./dist/samples/json/requests/devices/vehicles/a200/cameraHead/a200CameraHead/lasers/a200A200CameraHeadLaserOnSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"devices": {
"3F19D320018C": {
"model": 19,
"cameraHead": {
"model": 106,
"lasers": {
"enabled": true
}
}
}
}
}
}
From ./dist/samples/json/requests/devices/vehicles/a200/cameraHead/a200CameraHead/lasers/a200A200CameraHeadLaserOffSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"devices": {
"9CF194F7FF51": {
"model": 19,
"cameraHead": {
"model": 106,
"lasers": {
"enabled": false
}
}
}
}
}
}
💡 Light
Light Intensity
Sonde Enabled
true
= enabledfalse
= disabledFrom ./dist/samples/json/requests/devices/vehicles/a200/peripherals/sonde/a200SondeDisabledSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"devices": {
"A28D86E2796B": {
"model": 19,
"sonde": {
"enabled": false
}
}
}
}
}
From ./dist/samples/json/requests/devices/vehicles/a200/peripherals/sonde/a200SondeEnabledSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"devices": {
"841856F0F4C6": {
"model": 19,
"sonde": {
"enabled": true
}
}
}
}
}
Tilt Grabber Arm
Tilt
Resting pivot tilt platform
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/pivotTiltPlatformRestingSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"D00F97787CF5": {
"model": 18,
"tiltPlatform": {
"tilt": 0
}
}
}
}
}
Tilt up
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/pivotTiltPlatformUpSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"7E1A07FED3A6": {
"model": 18,
"tiltPlatform": {
"tilt": 100
}
}
}
}
}
Tilt down
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/pivotTiltPlatformDownSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"B0F0C4BA16F1": {
"model": 18,
"tiltPlatform": {
"tilt": -100
}
}
}
}
}
Random tilt pivot tilt platform
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/pivotTiltPlatformRandomSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"3626CCA5B2CD": {
"model": 18,
"tiltPlatform": {
"tilt": -29
}
}
}
}
}
Tilt Motor Diagnostics
Resting pivot tilt platform diagnostic
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/motorDiagnostics/tilt/pivotTiltPlatformDiagnosticsRestingSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"01CF252EC910": {
"model": 18,
"tiltPlatform": {
"tiltMotorDiagnostics": {
"current": 1,
"overcurrent": false,
"pwm": 0,
"rpm": 1,
"failure": false
}
}
}
}
}
}
Tilt up pivot tilt platform diagnostic
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/motorDiagnostics/tilt/pivotTiltPlatformUpDiagnosticsSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"C82527371144": {
"model": 18,
"tiltPlatform": {
"tiltMotorDiagnostics": {
"current": 50,
"overcurrent": false,
"pwm": 53,
"rpm": 9
}
}
}
}
}
}
Tilt down pivot tilt platform diagnostic
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/motorDiagnostics/tilt/pivotTiltPlatformDownDiagnosticsSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"4FC8CBB2DF9E": {
"model": 18,
"tiltPlatform": {
"tiltMotorDiagnostics": {
"current": 48,
"overcurrent": false,
"pwm": -48,
"rpm": -10
}
}
}
}
}
}
Random tilt pivot tilt platform diagnostic
From ./dist/samples/json/requests/devices/vehicles/pivot/peripherals/tiltPlatform/motorDiagnostics/tilt/pivotTiltPlatformDiagnosticsRandomSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"devices": {
"1202DE4341ED": {
"model": 18,
"tiltPlatform": {
"tiltMotorDiagnostics": {
"current": 40,
"overcurrent": true,
"pwm": 27,
"rpm": -76,
"failure": false
}
}
}
}
}
}
Manual Reel
Powered Reel
A150 Class
A-150 vehicle type.
A200 Class
A-200 vehicle type.
📖 See extended definition Photon Class
📖 See extended definition Pivot Class
📖 See extended definition Revolution Class
📖 See extended definition Navigation type
Navigation Options
ROV Position
Rov Velocity
🦾 Elevating arm
BRIDGE Box represents the root of the API endpoint routing
TODO: Currently this is a pretty bare bones class, but in the future it will be extended to hold interfaces to other subsystems on the BRIDGE Box. These could include hardware access, storage devices, network interfaces, update system, etc...
Devices
This contains a list of devices and associated UUIDs for accessing connected devices, such as vehicles, reels, etc.
Fault Handler
Allows users to clear faults from all of their devices
From ./dist/samples/json/requests/devices/faults/clearFaults/clearFaultsSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"faults": {
"clear": true
}
}
}
NetworkDiagnostics
Record of known network interfaces on the bridgebox and their live performance diagnostics.
Multiple records may be correlated to a single interfaceName
. There will typically be two
records for a given interfaceName
to represent local and remote mac addresses of the
network connection. Records here are differentiated by the network card's unique MAC Address.
SerialDevices
This list contains all the serial devices that the backend can modify and communicate with.
It can be updated with a new key(generated by the frontend) to create a WebSerialDevice
From ./dist/samples/json/requests/bridgeBox/serialDevices/bridgeBoxSerialDevicesSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"serialDevices": {
"xHCI Host Controller 3": {
"deviceType": "Controller",
"baudRate": 115200,
"name": "Top USB Port"
},
"xHCI Host Controller 1": {
"deviceType": "Controller",
"baudRate": 115200,
"name": "Bottom USB Port",
"connectionId": "External GPS Source",
"connectionName": "GPS Source"
},
"External GPS Source": {
"deviceType": "Internal",
"baudRate": 115200,
"name": "External GPS",
"connectionId": "xHCI Host Controller 1",
"connectionName": "Bottom USB Port"
}
}
}
}
Sonar
This is the currently connected sonar device
SWUpdate
Check for offline updates
From ./dist/samples/json/requests/bridgeBox/swupdate/bridgeBoxCheckOfflineUpdatesSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"swupdate": {
"offlineUpdates": 3
}
}
}
Offline updates available
From ./dist/samples/json/requests/bridgeBox/swupdate/bridgeBoxOfflineUpdatesAvailableSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"swupdate": {
"offlineUpdates": 0
}
}
}
System up-to-date (No new offline updates available)
From ./dist/samples/json/requests/bridgeBox/swupdate/bridgeBoxNoOfflineUpdatesAvailableSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"swupdate": {
"offlineUpdates": 1
}
}
}
Start offline updates
From ./dist/samples/json/requests/bridgeBox/swupdate/bridgeBoxStartOfflineUpdatesSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "UPDATE",
"payload": {
"swupdate": {
"offlineUpdates": 4
}
}
}
SystemSettings
Version
The BridgeBox version will be incremented when backend services or operating system updates are available. This type should be checked against the BridgeBox version provided within the update package meta data.
Calibratable Rotary Joint
Allows specific calibration routines to be run on a rotary joint.
Camera Device Models
A collection of all used camera models
Cameras
A collection of all used camera types.
Changelog
An package containing information related to an update of one or more devices.
Client
Identify a client through its named and connection ids
Crawler drive
DateTime
An endpoint to facilitate requesting and adjusting the datetime of the BridgeBox.
Automatic Date Time Network Sync
Automatically sync date and time with the NTP server (requires a network connection with an NTP server to sync time)
Timestamp
Used to define the system time.
Formatted to ISO 8601/RFC 3339 (with time zone extension) spec
Note: The applied timestamp will not be persistent if the system's network time sync is enabled and there's an NTP server in the network. Use the networkTimeSync property to explicitly disable the network time sync before setting the timestamp.
Devices
This is a collection of all devices used.
Handles Clearing of all faults across all devices.
Non-gettable value that can be SET to true to clear all faults.
FileTransfer
Describe the meta data related to a generic file transfer.
File name
readyToTransfer
Checksum
File size
📖 See extended definition Rov Global Position
Latitude (in degrees decimal)
Longitude (in degrees decimal)
Uncertainty radius (in meters)
HardwareRevision
A list of software updates for specific hardware.
HardwareRevisions
A list of corresponding hardware revisions.
SdpMessage (used internally)
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
📖 See extended definition Rov Local Position
Uncertainty radius (in meters)
x (in meters)
y (in meters)
Indexed look up structure records
📖 See extended definition Navigation Options type
Dead Reckoning availability flag
Source of ROV position.
MAC of corresponding ethernet IFace behind VDSL
Hardware chipset name
The device firmware version
Mbps
Network interface name.
e.g. "ETH0", "ETH1", etc
CCO (Central Coordinator) or STA (Station)
Mbps
May be local or remote
A local address
Digital pan/tilt/zoom controls for the Oclea camera
Digital image panning
Region of interest (the region within the frame that's currently being viewed - after having zoomed in and changed pan)
Total height of area that can be panned to (panning might be limited to a slightly smaller portion of the frame to avoid showing warp on the edges)
Total width of area that can be panned to (panning might be limited to a slightly smaller portion of the frame to avoid showing warp on the edges)
Offset of the region of interest from the left edge of the frame
Offset of the region of interest from the top edge of the frame
Digital zoom control
OSD (On-screen Display)
Character limit
The character limit for the OSD. If the 'value' has more characters than charLimit, it will be truncated when displayed in the camera OSD.
Enabled
Toggles the on-screen display of the harrier camera.
Value
The OSD string text to be displayed.
📖 See extended definition Rov Position
Rate modifer
This is meant to be sent continuously in order to increment/decrement certain values.
Removable
Represents an object that can be removed.
Resolution, in pixels
Rotary Joint
This joint can rotate around.
Position
The rotary position in degrees.
Pivot rotary position
Joint Speed
Rov Drive
Modes are not mutually exclusive. Mode requests to the ROV are handled via the state-system
Thrust - forward, yaw, vertical and lateral
Rov Thrust
SWUpdate
An endpoint to facilitate the software update process.
File
Log
OfflineUpdates
Progress
ReleaseInfo
SdpMessage (used internally)
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
The baud rate for the serial device. This value is meaningless with deviceType::Web
The id of the device that this device is connected to. If null then this device is not connected to anything
The name of the device that this device is connected to. if null then this device is not connected to anything. This is purely provided for convenience. If a name change is required send an update to the actual device.
Indicates the type of device
The display name of this device
SoftwareUpdate
Describes a software update giving a release date and corresponding version notes.
Indicates if the device is currently sending frames to the web app when set to true the backend will create a datachannel called "SONAR_DATA_CHANNEL" to send sonar images
If true, then the sonar is actively sending data to the webapp. If false, the sonar is available on the network but isn't connected to the webapp specifically.
The frequency of the device
The gain of the sonar
The low power state of the device
Maximum range that the sonar can be configured to.
The model of the sonar
The pitch angle of the sonar in degrees
The range of the sonar
Camera stream
Stream active
Camera stream bitrate
Available bitrate options
Stream resolution
All available modes for this camera.
The currently active mode
SystemSettings
An endpoint to facilitate requesting and adjusting system settings.
Date Time
Date time settings for setting/getting the system time
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeNetworkTimeSyncEnabledSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"networkTimeSync": true
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeNetworkTimeSyncDisabledSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"networkTimeSync": false
}
}
}
}
References:
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeLocaleSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T21:19:25.693565687+00:00[UTC]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeUTCSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T21:19:25.71256571+00:00[UTC]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeGreenwichSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T21:19:25.687559645+00:00[UTC]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeLondonSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T21:19:25.695565693+00:00[Europe/London]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeLosAngelesSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T13:19:25.697565695-08:00[America/Los_Angeles]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeNewYorkSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T16:19:25.705565697-05:00[America/New_York]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeTokyoSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-21T06:19:25.708565705+09:00[Asia/Tokyo]"
}
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/dateTime/bridgeBoxSystemSettingsDateTimeTorontoSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"dateTime": {
"timestamp": "2024-12-20T16:19:25.710565708-05:00[America/Toronto]"
}
}
}
}
System of measurement
The system of measurement that the BridgeBox will use
From ./dist/samples/json/requests/bridgeBox/systemSettings/systemOfMeasurement/bridgeBoxSystemSettingsSystemOfMeasurementMetricSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"systemOfMeasurement": "METRIC"
}
}
}
From ./dist/samples/json/requests/bridgeBox/systemSettings/systemOfMeasurement/bridgeBoxSystemSettingsSystemOfMeasurementImperialSample.json
{
"$schema": "https://docs.api.deeptrekker.com/dist/schemas/schema.json",
"apiVersion": "0.58.9",
"method": "SET",
"payload": {
"systemSettings": {
"systemOfMeasurement": "IMPERIAL"
}
}
}
Error message from the Bridge Box
Error code, used only with ERROR method types
Error message
Turbidity Filter controls for the camera.
Strength
Controls the strength of the turbidity filter on the turbidity stream.
UpdatePackagePayload
An package containing information related to an update of one or more devices.
buildDate
Changelog
sha256
size
Charge Voltage
Input Voltage
📖 See extended definition ROV velocity
Scalar Magnitude of velocity components (forward, rightward and downward velocity)
VersionNote
Describes changes made in a software update, an array of improvements and bug fixes.
Zoom control
Zoom Ratio
Zoom Speed
Answer
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
IceCandidate
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
JoinSession
Join a session with a user.
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
LeaveSession
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
Offer
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
OnDisconnectAsync
See base method documentation on OnDisconnectAsync
RegisterSession
Creates a new session using a unique vehicle id.
Session
Sends a list of all the sessions currently authorized for use.
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
SessionCheck
Returns a list of all the sessions currently authorized for use.
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
Camera head joint 2 maximum rotation limit in degrees
Useful for front-end client to constrain UI limits of joint 2 position
Camera head joint 2 minimum rotation limit in degrees
Useful for front-end client to constrain UI limits of joint 2 position
Error messages
Position uncertainty limit.
RegisterSession
Creates a new session using a unique vehicle id.
Note 💡 Ensure the number-like property values are sent as strings when sent and are enclosed in quotes ""
TransferPayload
TransferPayload represents the payload structure that should be used via an API to send a payload with a specific load type.
From ./dist/samples/json/requests/errors/notAccepted405.json