diff --git a/channel.proto b/channel.proto index b0a06d4..4b98846 100644 --- a/channel.proto +++ b/channel.proto @@ -65,40 +65,32 @@ message ChannelSettings { enum ModemConfig { /* - * < Bw = 125 kHz, Cr = 4/5, Sf(7) = 128chips/symbol, CRC - * < on. ShortSlow | Short Range / Slow (5.469 kbps) */ - Bw125Cr45Sf128 = 0; + VLongSlow = 0; /* - * < Bw = 500 kHz, Cr = 4/5, Sf(7) = 128chips/symbol, CRC - * < on. ShortFast | Short Range / Fast (21.875 kbps) */ - Bw500Cr45Sf128 = 1; + LongSlow = 1; /* - * < Bw = 31.25 kHz, Cr = 4/8, Sf(9) = 512chips/symbol, - * < CRC on. LongFast | Long Range / Fast (275 bps) */ - Bw31_25Cr48Sf512 = 2; + LongFast = 2; /* - * < Bw = 125 kHz, Cr = 4/8, Sf(12) = 4096chips/symbol, CRC - * < on. LongSlow | Long Range / Slow (183 bps) */ - Bw125Cr48Sf4096 = 3; + MidSlow = 3; /* - * < Bw = 250 kHz, Cr = 4/6, Sf(11) = 2048chips/symbol, CRC - * < on. MediumSlow | Medium Range / Slow (895 bps) */ - Bw250Cr46Sf2048 = 4; + MidFast = 4; /* - * < Bw = 250 kHz, Cr = 4/7, Sf(10) = 1024chips/symbol, CRC - * < on. MediumFast | Medium Range / Fast (1400 bps) */ - Bw250Cr47Sf1024 = 5; + ShortSlow = 5; + + /* + */ + ShortFast = 6; } /* diff --git a/deviceonly.proto b/deviceonly.proto index 6030110..42e06cb 100644 --- a/deviceonly.proto +++ b/deviceonly.proto @@ -10,22 +10,6 @@ import "radioconfig.proto"; option java_outer_classname = "DeviceOnly"; -/* - * This is a stub version of the old 1.1 representation of RadioConfig. - * But only keeping the region info. - * The device firmware uses this stub while migrating old nodes to the new preferences system. - */ -message LegacyRadioConfig { - message LegacyPreferences { - - /* - * The region code for my radio (US, CN, EU433, etc...) - */ - RegionCode region = 15; - } - - LegacyPreferences preferences = 1; -} /* * This message is never sent over the wire, but it is used for serializing DB @@ -41,11 +25,6 @@ message DeviceState { */ reserved 12; - /* - * Moved to its own file, but we keep this here so we can automatically migrate old radio.region settings - */ - LegacyRadioConfig legacyRadio = 1; - /* * Read only settings/info about this node */ @@ -63,6 +42,11 @@ message DeviceState { */ repeated MeshPacket receive_queue = 5; + /* + * Group Info + */ + GroupInfo group_info = 6; + /* * 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/mesh.options b/mesh.options index 7116b18..05a7ef6 100644 --- a/mesh.options +++ b/mesh.options @@ -12,11 +12,13 @@ # note: this payload length is ONLY the bytes that are sent inside of the Data protobuf (excluding protobuf overhead). The 16 byte header is # outside of this envelope *Data.payload max_size:237 +*Data.group_id int_size:8 + +*GroupInfo.group max_length:16 max_count:10 # Big enough for 1.2.28.568032c-d *MyNodeInfo.firmware_version max_size:18 -*MyNodeInfo.hw_model_deprecated max_size:16 *MyNodeInfo.region max_size:12 # Note: the actual limit (because of header bytes) on the size of encrypted payloads is 251 bytes, but I use 256 @@ -40,4 +42,3 @@ *MyNodeInfo.air_period_tx max_count:24 *MyNodeInfo.air_period_rx max_count:24 -# *MyNodeInfo.air_period_rx_all max_count:12 \ No newline at end of file diff --git a/mesh.proto b/mesh.proto index e08da59..a1eab8a 100644 --- a/mesh.proto +++ b/mesh.proto @@ -466,24 +466,6 @@ message Routing { */ Error error_reason = 3; - /* - * Deprecated - this has been replced with error_reason == NONE && request_id != 0 - * This is an ack. - * This packet is a requested acknoledgement indicating that we have received - * the specified message ID. - * This packet type can be used both for immediate (0 hops) messages or can be routed through multiple hops if dest is set. - * Note: As an optimization, recipients can _also_ populate a field in payload - * if they think the recipient would appreciate that extra state. - * - * fixed32 success_id = 4; - */ - - /* - * Deprecated - this has been replced with error_reason !== NONE && request_id != 0 - * This is a nak, we failed to deliver this message. - * - * fixed32 fail_id = 5; - */ } } @@ -543,6 +525,7 @@ message Data { * a message a heart or poop emoji. */ bool is_tapback = 8; + /* * Defaults to false. If true, then what is in the payload should be treated as an emoji like giving * a message a heart or poop emoji. @@ -904,6 +887,14 @@ enum CriticalErrorCode { RadioSpiBug = 11; } +/* + * GroupInfo for group chats like #FoodFreaks and #CoolPeopleOnly + */ +message GroupInfo { + repeated string group = 1; +} + + /* * Unique local debugging info for this node * Note: we don't include position or the user info, because that will come in the @@ -923,13 +914,6 @@ message MyNodeInfo { */ bool has_gps = 2; - /* - * # of frequencies that can be used (set at build time in the device flash image). - * Note: this is different from max_channels, this field is telling the # of frequency bands this node can use. - * (old name was num_channels) - */ - uint32 num_bands = 3; - /* * The maximum number of 'software' channels that can be set on this node. */ @@ -946,14 +930,6 @@ message MyNodeInfo { */ string region = 4 [deprecated = true]; - /* - * TBEAM, HELTEC, etc... - * Starting in 1.2.11 moved to hw_model enum in the NodeInfo object. - * Apps will still need the string here for older builds - * (so OTA update can find the right image), but if the enum is available it will be used instead. - */ - string hw_model_deprecated = 5 [deprecated = true]; - /* * 0.0.5 etc... */ @@ -1139,6 +1115,11 @@ message FromRadio { * NOTE: This ID must not change - to keep (minimal) compatibility with <1.2 version of android apps. */ bool rebooted = 9; + + /* + * Groups + */ + GroupInfo groups = 12; } } diff --git a/radioconfig.proto b/radioconfig.proto index 61e0c08..b3ea1ac 100644 --- a/radioconfig.proto +++ b/radioconfig.proto @@ -39,13 +39,15 @@ enum RegionCode { Unset = 0; US = 1; EU433 = 2; - EU865 = 3; + EU868 = 3; CN = 4; JP = 5; ANZ = 6; KR = 7; TW = 8; RU = 9; + IN = 10; + TH = 11; /* * Add new regions here @@ -671,14 +673,6 @@ message RadioConfig { */ string canned_message_plugin_allow_input_source = 171; - /* - * Predefined messages for CannedMessagePlugin separated by '|' characters. - * Note: Split out the messages out to their own messages because we want to store 1,000 characters. - * and the entire message must fit within 256 bytes. - * Not sure if we should deprecate this or just remove it since we're in dev phase. - */ - string canned_message_plugin_messages = 172 [deprecated = true]; - /* * CannedMessagePlugin also sends a bell character with the messages. * ExternalNotificationPlugin can benefit from this feature.