Skip to content

The Control API is used for real-time control of USV movement and behavior.

POST /api/v1/control/move

Request Body:

{
"device_id": "USV-2024-001",
"latitude": 31.2354,
"longitude": 121.4787,
"speed": 5,
"heading": 90
}

Response:

{
"success": true,
"data": {
"command_id": "cmd-001",
"status": "executing",
"eta": 180
}
}
POST /api/v1/control/stop

Request Body:

{
"device_id": "USV-2024-001",
"mode": "immediate"
}
POST /api/v1/control/return

Request Body:

{
"device_id": "USV-2024-001",
"speed": 8
}
POST /api/v1/control/manual

Request Body:

{
"device_id": "USV-2024-001",
"throttle": 0.7,
"rudder": 0.3
}

Parameter description:

  • throttle: Throttle (-1.0 to 1.0)
  • rudder: Rudder angle (-1.0 to 1.0)
POST /api/v1/control/mode

Request Body:

{
"device_id": "USV-2024-001",
"mode": "auto"
}

Supported modes:

  • auto - Auto navigation
  • manual - Manual control
  • waypoint - Waypoint navigation
  • hold - Hold position
from jhusv import Client
client = Client(api_key='your-api-key')
# Move to specified position
client.control.move_to(
device_id='USV-2024-001',
latitude=31.2354,
longitude=121.4787,
speed=5
)
# Stop
client.control.stop('USV-2024-001')
# Return home
client.control.return_home('USV-2024-001')

See more examples at API Overview.