3 import "goby/protobuf/option_extensions.proto";
5 import "goby/middleware/protobuf/app_config.proto";
6 import "goby/middleware/protobuf/serial_config.proto";
7 import "goby/middleware/protobuf/pty_config.proto";
9 package goby.apps.middleware.protobuf;
11 message SerialMuxConfig
13 optional goby.middleware.protobuf.AppConfig app = 1;
14 required goby.middleware.protobuf.SerialConfig primary_serial = 2
15 [(goby.field).description =
16 "Primary serial port to multiplex. This is typically a real "
17 "serial port (but could connect to a pty)"];
21 required goby.middleware.protobuf.PTYConfig pty = 1
22 [(goby.field).description = "Pseudoterminal (PTY) to create"];
23 optional bool allow_write = 2 [
25 (goby.field).description =
26 "If true, sends data written to the PTY to the primary serial "
27 "port. If false, writes are discarded."
31 repeated SecondaryPTY secondary = 3
32 [(goby.field).description =
33 "Multiple secondary pseudoterminals (PTYs) to create. Each PTY "
34 "will receive a copy of all data read from the primary serial "
35 "port. All data written to PTYs where 'allow_write = true' will "
36 "be multiplexed and sent out the primary serial port."];