diff --git a/admin.proto b/admin.proto index 9bf4dd9..1c8dac6 100644 --- a/admin.proto +++ b/admin.proto @@ -99,6 +99,11 @@ message AdminMessage { * TODO: REPLACE */ CANNEDMSG_CONFIG = 6; + + /* + * TODO: REPLACE + */ + AUDIO_CONFIG = 7; } /* diff --git a/config.proto b/config.proto index 04dbefe..64c23d9 100644 --- a/config.proto +++ b/config.proto @@ -249,23 +249,6 @@ message Config { */ message NetworkConfig { - enum WiFiMode { - /* - * This mode is used to connect to an external WiFi network - */ - CLIENT = 0; - - /* - * In this mode the node will operate as an AP (and DHCP server) - */ - ACCESS_POINT = 1; - - /* - * If set, the node AP will broadcast as a hidden SSID - */ - ACCESS_POINT_HIDDEN = 2; - } - enum EthMode { /* * obtain ip address via DHCP @@ -304,6 +287,7 @@ message Config { * Enable WiFi (disables Bluetooth) */ bool wifi_enabled = 1; + /* * If set, this node will try to join the specified wifi network and diff --git a/localonly.proto b/localonly.proto index f9a4bb7..cc77c3d 100644 --- a/localonly.proto +++ b/localonly.proto @@ -94,6 +94,11 @@ message LocalModuleConfig { */ ModuleConfig.CannedMessageConfig canned_message = 7; + /* + * The part of the config that is specific to the Audio module + */ + ModuleConfig.AudioConfig audio = 9; + /* * A version integer used to invalidate old save files when we make * incompatible changes This integer is set at build time and is private to diff --git a/module_config.proto b/module_config.proto index 05cfcba..304cf07 100644 --- a/module_config.proto +++ b/module_config.proto @@ -55,6 +55,52 @@ message ModuleConfig { bool json_enabled = 6; } + /* + * Audio Config for codec2 voice + */ + message AudioConfig { + + /* + * Baudrate for codec2 voice + */ + enum Audio_Baud { + CODEC2_DEFAULT = 0; + CODEC2_3200 = 1; + CODEC2_2400 = 2; + CODEC2_1600 = 3; + CODEC2_1400 = 4; + CODEC2_1300 = 5; + CODEC2_1200 = 6; + CODEC2_700 = 7; + CODEC2_700B = 8; + }; + + /* + * Whether Audio is enabled + */ + bool codec2_enabled = 1; + + /* + * ADC where Microphone is connected + */ + uint32 mic_chan = 2; + + /* + * DAC where Speaker is connected + */ + uint32 amp_pin = 3; + + /* + * PTT Pin + */ + uint32 ptt_pin = 4; + + /* + * The audio sample rate to use for codec2 + */ + Audio_Baud bitrate = 5; + } + /* * Serial Config */ @@ -407,5 +453,10 @@ message ModuleConfig { */ CannedMessageConfig canned_message = 7; + /* + * TODO: REPLACE + */ + AudioConfig audio = 8; + } } diff --git a/portnums.proto b/portnums.proto index 5096be7..dd8a7c6 100644 --- a/portnums.proto +++ b/portnums.proto @@ -76,6 +76,11 @@ enum PortNum { */ WAYPOINT_APP = 8; + /* Audio Payloads. + * Encapsulated codec2 packets. On 2.4 GHZ Bandwidths only for now + */ + AUDIO_APP = 9; + /* * Provides a 'ping' service that replies to any packet it receives. * Also serves as a small example module.