Goby3 3.3.0
2025.07.10
Loading...
Searching...
No Matches
frontseat.proto
Go to the documentation of this file.
1syntax = "proto2";
2import "goby/middleware/protobuf/frontseat_data.proto";
3
4package goby.middleware.frontseat.protobuf;
5
6enum InterfaceState
7{
8 INTERFACE_STANDBY = 1;
9 INTERFACE_LISTEN = 2;
10 INTERFACE_COMMAND = 3;
11 INTERFACE_HELM_ERROR = 4;
12 INTERFACE_FS_ERROR = 5;
13}
14
15enum FrontSeatState
16{
17 FRONTSEAT_NOT_CONNECTED = 0;
18 FRONTSEAT_IDLE = 1;
19 FRONTSEAT_ACCEPTING_COMMANDS = 2;
20 FRONTSEAT_IN_CONTROL = 3;
21}
22
23enum HelmState
24{
25 HELM_NOT_RUNNING = 0;
26 HELM_DRIVE = 1;
27 HELM_PARK = 2;
28}
29
30message HelmStateReport
31{
32 required HelmState state = 1;
33}
34
35enum HelmError
36{
37 ERROR_HELM_NONE = 0;
38 ERROR_HELM_NOT_RUNNING = 1;
39 ERROR_HELM_PARKED = 2;
40}
41
42enum FrontSeatError
43{
44 ERROR_FRONTSEAT_NONE = 0;
45 ERROR_FRONTSEAT_NOT_CONNECTED = 1;
46 ERROR_FRONTSEAT_NOT_PROVIDING_DATA = 2;
47 ERROR_FRONTSEAT_IGNORING_COMMANDS = 3;
48}
49
50message InterfaceStatus
51{
52 optional InterfaceState state = 1;
53 optional FrontSeatState frontseat_state = 2;
54 optional HelmState helm_state = 3;
55 optional HelmError helm_error = 4;
56 optional FrontSeatError frontseat_error = 5;
57 optional bool frontseat_providing_data = 6;
58}
59
60message CommandRequest
61{
62 optional DesiredCourse desired_course = 1;
63 optional bool response_requested = 10 [default = false];
64 optional int32 request_id = 11;
65
66 optional int32 cancel_request_id =
67 20; // if possible, tell the driver to stop trying to process this
68 // command
69
70 extensions 1000 to max;
71 // 1000 - Bluefin
72 // 1001 - Iver
73}
74
75message CommandResponse
76{
77 optional bool request_successful = 10;
78 optional int32 request_id = 11;
79 optional int32 error_code = 20 [default = 0];
80 optional string error_string = 21;
81
82 extensions 1000 to max;
83}
84
85message InterfaceData
86{
87 optional NodeStatus node_status = 1;
88 optional CTDSample ctd_sample = 2;
89 optional bytes dccl_message = 3;
90
91 extensions 1000 to max;
92 // 1000 - Bluefin
93 // 1001 - Iver
94}
95
96message Raw
97{
98 optional bytes raw = 1;
99 enum RawType
100 {
101 RAW_ASCII = 1;
102 RAW_BINARY = 2;
103 }
104 optional RawType type = 2 [default = RAW_ASCII];
105 optional string description = 3;
106
107 extensions 1000 to max;
108}