Goby3 3.2.3
2025.05.13
Loading...
Searching...
No Matches
popoto_driver.proto
Go to the documentation of this file.
1/* Copyright (c) 2020 mission systems pty ltd */
2
3syntax = "proto2";
4import "goby/protobuf/option_extensions.proto";
5import "dccl/option_extensions.proto";
6import "goby/acomms/protobuf/driver_base.proto"; // load up message DriverBaseConfig
7import "goby/acomms/protobuf/modem_message.proto";
8
9package goby.acomms.popoto.protobuf;
10message ModemAddress
11 {
12 required string ip = 2 [default = "127.0.0.1"];
13 required string port = 3 [default = "17000"];
14 }
15
16message Config
17{
18 optional int32 start_timeout = 1 [
19 default = 30,
20 (goby.field).description =
21 "Number of seconds to initialize the modem before giving up"
22 ];
23
24 optional int32 payload_mode = 2 [
25 default = 0,
26 (dccl.field).min = 0,
27 (dccl.field).max = 5,
28 (goby.field).description =
29 "The modulation rate of the payload portion of the waveform, 0-5"
30 ];
31
32 optional double modem_power = 3 [
33 default = 1,
34 (dccl.field).min = 0.1,
35 (dccl.field).max = 100,
36 (dccl.field).precision = 2,
37 (goby.field).description = "Modem Tx strength 1-100W"
38 ];
39
40 optional ModemAddress local = 4 [(goby.field).description =
41 "The IP and port of the local modem "
42 "(default port is 17000)"];
43
44 optional int32 application_type = 5 [
45 default = 0,
46 (dccl.field).min = 0,
47 (dccl.field).max = 5,
48 (goby.field).description =
49 "Application type for JANUS message"
50 ];
51}
52// added 1442 in modem driver
53extend goby.acomms.protobuf.DriverConfig
54{
55 optional Config config = 1442;
56}
57
58enum TransmissionType
59{
60 BASE_TYPE = 0;
61 POPOTO_TWO_WAY_PING = 1; // modem 1 interrogates modem 2; modem 2 replies
62 // and modem 1 computes one way travel time
63 POPOTO_PLAY_FILE = 2;
64 POPOTO_TWO_WAY_RANGE = 3;
65 POPOTO_DEEP_SLEEP = 4;
66 POPOTO_WAKE = 5;
67 POPOTO_SET_TX = 6;
68}
69message RangingReply
70{
71 required double one_way_travel_time = 1
72 [(dccl.field).units.unit = "si::second"];
73}
74message Transmission
75{
76 optional TransmissionType type = 1 [
77 (goby.field).description =
78 "Type of transmission if base `type` == DRIVER_SPECIFIC",
79 default = BASE_TYPE
80 ];
81 optional RangingReply ranging_reply = 3;
82 optional string file_location = 4;
83 optional double transmit_power = 5;
84}
85
86extend goby.acomms.protobuf.ModemTransmission
87{
88 optional Transmission transmission = 1441;
89}