syntax = "proto3"; option java_package = "com.geeksville.mesh"; option optimize_for = LITE_RUNTIME; option go_package = "github.com/meshtastic/gomeshproto"; import "channel.proto"; import "mesh.proto"; 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 * state to flash in the device code * FIXME, since we write this each time we enter deep sleep (and have infinite * flash) it would be better to use some sort of append only data structure for * the receive queue and use the preferences store for the other stuff */ message DeviceState { /* * Was secondary_channels before 1.2 */ 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 */ MyNodeInfo my_node = 2; /* * My owner info */ User owner = 3; repeated NodeInfo node_db = 4; /* * Received packets saved for delivery to the phone */ repeated MeshPacket receive_queue = 5; /* * 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 * NodeDB.cpp in the device code. */ uint32 version = 8; /* * We keep the last received text message (only) stored in the device flash, * so we can show it on the screen. * Might be null */ MeshPacket rx_text_message = 7; /* * Used only during development. * Indicates developer is testing and changes should never be saved to flash. */ bool no_save = 9; /* * Some GPSes seem to have bogus settings from the factory, so we always do one factory reset. */ bool did_gps_reset = 11; /* * Canned Message Plugin message part1. */ string canned_message_plugin_message_part1 = 13; /* * Canned Message Plugin message part2. */ string canned_message_plugin_message_part2 = 14; /* * Canned Message Plugin message part3. */ string canned_message_plugin_message_part3 = 15; /* * Canned Message Plugin message part4. */ string canned_message_plugin_message_part4 = 16; /* * Canned Message Plugin message part5. */ string canned_message_plugin_message_part5 = 17; } // DeviceState /* * The on-disk saved channels */ message ChannelFile { /* * The channels our node knows about */ repeated Channel channels = 1; }