Skip to content

Commit 67d299c

Browse files
Spot SDK 5.1.4 Update (#18)
* Release v5.1.1 of Boston Dynamics Spot SDK * Release v5.1.4 of Boston Dynamics Spot SDK * update cmake version number --------- Co-authored-by: Boston Dynamics SDK Publisher <53276189+bd-sdk-publisher@users.noreply.github.com>
1 parent 97e6e2d commit 67d299c

10 files changed

Lines changed: 55 additions & 4 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ The official Spot SDK documentation also contains information relevant to the C+
2121
- [Payload developer documentation](https://dev.bostondynamics.com/docs/payload/readme). Payloads add additional sensing, communication, and control capabilities beyond what the base platform provides. The Payload ICD covers the mechanical, electrical, and software interfaces that Spot supports.
2222
- [Spot API protocol definition](https://dev.bostondynamics.com/docs/protos/readme). This reference guide covers the details of the protocol applications used to communicate to Spot. Application developers who wish to use a language other than Python can implement clients that speak the protocol.
2323

24-
This is version 5.1.0 of the C++ SDK. Please review the [Release Notes](docs/cpp_release_notes.md) to see what has changed.
24+
This is version 5.1.4 of the C++ SDK. Please review the [Release Notes](docs/cpp_release_notes.md) to see what has changed.
2525

2626
## Contents
2727

cpp/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
# This file is autogenerated.
88

99
cmake_minimum_required (VERSION 3.10.2)
10-
project (bosdyn VERSION 5.1.0)
10+
project (bosdyn VERSION 5.1.4)
1111

1212
# Dependencies:
1313
find_package(Protobuf REQUIRED)

cpp/bosdyn/client/data_acquisition/data_acquisition_client.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ DataAcquisitionGetStatusResultType DataAcquisitionClient::GetStatus(
8484
return GetStatusAsync(request, parameters).get();
8585
}
8686

87+
8788
void DataAcquisitionClient::OnGetStatusComplete(
8889
MessagePumpCallBase* call, const ::bosdyn::api::GetStatusRequest& request,
8990
::bosdyn::api::GetStatusResponse&& response, const grpc::Status& status,

cpp/bosdyn/client/data_acquisition/data_acquisition_client.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ class DataAcquisitionClient : public ServiceClient {
6767
::bosdyn::api::CancelAcquisitionRequest& request,
6868
const RPCParameters& parameters = RPCParameters());
6969

70+
7071
// Asynchronous RPC to request live data for each capability.
7172
std::shared_future<DataAcquisitionLiveDataResultType> GetLiveDataAsync(
7273
::bosdyn::api::LiveDataRequest& request, const RPCParameters& parameters = RPCParameters());
@@ -120,6 +121,7 @@ class DataAcquisitionClient : public ServiceClient {
120121
::bosdyn::api::LiveDataResponse&& response, const grpc::Status& status,
121122
std::promise<DataAcquisitionLiveDataResultType> promise);
122123

124+
123125
std::unique_ptr<::bosdyn::api::DataAcquisitionService::StubInterface> m_stub;
124126

125127
// Default service name for the Data Acquisition service.

docs/cpp_release_notes.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,14 @@ Development Kit License (20191101-BDSDK-SL).
88

99
# Spot C++ SDK Release Notes
1010

11+
## Spot C++ SDK version 5.1.4 BETA
12+
13+
- No changes from 5.1.1
14+
15+
## Spot C++ SDK version 5.1.1 BETA
16+
17+
- No changes from 5.1.0
18+
1119
## Spot C++ SDK version 5.1.0 BETA
1220

1321
### Bug Fixes and Improvements

protos/bosdyn/api/basic_command.proto

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,14 @@ message StopCommand {
101101
// Freeze all joints at their current positions (no balancing control).
102102
message FreezeCommand {
103103
message Request {
104-
// Freeze command request takes no additional arguments.
104+
// Optional mode for freeze behavior.
105+
enum Mode {
106+
MODE_UNKNOWN = 0;
107+
MODE_DEFAULT = 1;
108+
// Freeze with higher joint gains to minimize deformation under external loads.
109+
MODE_STIFF = 2;
110+
}
111+
Mode mode = 1;
105112
}
106113

107114
message Feedback {

protos/bosdyn/api/mobility_command.proto

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ message MobilityCommand {
3535
StanceCommand.Request stance_request = 5;
3636
StopCommand.Request stop_request = 6;
3737
FollowArmCommand.Request follow_arm_request = 7;
38+
// Mobility freeze for cases where the user wants to freeze only the lower body, leaving
39+
// the arm free to move.
40+
FreezeCommand.Request freeze_request = 8;
3841

3942
}
4043

@@ -62,7 +65,7 @@ message MobilityCommand {
6265
StanceCommand.Feedback stance_feedback = 5;
6366
StopCommand.Feedback stop_feedback = 6;
6467
FollowArmCommand.Feedback follow_arm_feedback = 7;
65-
68+
FreezeCommand.Feedback freeze_feedback = 8;
6669
}
6770

6871
RobotCommandFeedbackStatus.Status status = 100;

protos/bosdyn/api/power.proto

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -272,3 +272,25 @@ message ResetSafetyStopResponse {
272272
// Current feedback of specified command.
273273
Status status = 3;
274274
}
275+
276+
// Request fan information from the robot.
277+
message GetFanInformationRequest {
278+
// Common request header.
279+
RequestHeader header = 1;
280+
}
281+
282+
message FanInformation {
283+
// Fan frequency in hertz.
284+
float frequency = 1;
285+
}
286+
287+
// Response with fan information from various robot components.
288+
message GetFanInformationResponse {
289+
// Common response header.
290+
ResponseHeader header = 1;
291+
292+
// Map of fan name to fan information. Each robot might have a different set of fans to report.
293+
// For example, Spot will report information for the fans "body_fan_0, body_fan_1, hips_fan_0,
294+
// hips_fan_1".
295+
map<string, FanInformation> fan_information = 2;
296+
}

protos/bosdyn/api/power_service.proto

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ service PowerService {
3030
rpc FanPowerCommandFeedback(FanPowerCommandFeedbackRequest)
3131
returns (FanPowerCommandFeedbackResponse) {}
3232

33+
// Get fan information.
34+
rpc GetFanInformation(GetFanInformationRequest) returns (GetFanInformationResponse) {}
35+
3336
// Reset the safety stop bit on SRSF-configured robots.
3437
rpc ResetSafetyStop(ResetSafetyStopRequest) returns (ResetSafetyStopResponse) {}
3538
}

protos/bosdyn/api/robot_state.proto

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -374,6 +374,11 @@ message BatteryState {
374374
// Temperatures may be measured in many locations across the battery.
375375
repeated double temperatures = 7;
376376

377+
// Measured battery communications loss percentage. Measured value from 0.0 to 100.0, where 0.0
378+
// means no communication loss and 100.0 means complete communication loss with the battery. If
379+
// there is no battery in the robot, this value may be 0.0 or left unset.
380+
google.protobuf.DoubleValue communications_loss_percent = 9;
381+
377382
enum Status {
378383
// The battery is in an unknown / unexpected state.
379384
STATUS_UNKNOWN = 0;

0 commit comments

Comments
 (0)