diff --git a/protobufs b/protobufs index a7bbc3586..94a4dbb84 160000 --- a/protobufs +++ b/protobufs @@ -1 +1 @@ -Subproject commit a7bbc358664c83f5148bae2a502cb294e7cafee5 +Subproject commit 94a4dbb842961e75f89de13dc6d0437a256098aa diff --git a/src/main.cpp b/src/main.cpp index f7938c71f..5efbb841c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -101,9 +101,15 @@ const char *getDeviceName() getMacAddr(dmac); - // Meshtastic_ab3c + // Meshtastic_ab3c or Shortname_abcd static char name[20]; - sprintf(name, "Meshtastic_%02x%02x", dmac[4], dmac[5]); + sprintf(name, "%02x%02x", dmac[4], dmac[5]); + // if the shortname exists and is NOT the new default of ab3c, use it for BLE name. + if ((owner.short_name != NULL) && (owner.short_name != name)) { + sprintf(name, "%s_%02x%02x", owner.short_name, dmac[4], dmac[5]); + } else { + sprintf(name, "Meshtastic_%02x%02x", dmac[4], dmac[5]); + } return name; } diff --git a/src/mesh/NodeDB.cpp b/src/mesh/NodeDB.cpp index f70ffa1dd..4d9e27cf4 100644 --- a/src/mesh/NodeDB.cpp +++ b/src/mesh/NodeDB.cpp @@ -204,7 +204,7 @@ void NodeDB::installDefaultDeviceState() // Set default owner name pickNewNodeNum(); // based on macaddr now - sprintf(owner.long_name, "Unknown %02x%02x", ourMacAddr[4], ourMacAddr[5]); + sprintf(owner.long_name, "Meshtastic %02x%02x", ourMacAddr[4], ourMacAddr[5]); sprintf(owner.short_name, "%02x%02x", ourMacAddr[4], ourMacAddr[5]); sprintf(owner.id, "!%08x", getNodeNum()); // Default node ID now based on nodenum diff --git a/src/mesh/generated/mesh.pb.h b/src/mesh/generated/mesh.pb.h index bbc79896e..65e6c5e20 100644 --- a/src/mesh/generated/mesh.pb.h +++ b/src/mesh/generated/mesh.pb.h @@ -4,7 +4,7 @@ #ifndef PB_MESH_PB_H_INCLUDED #define PB_MESH_PB_H_INCLUDED #include -#include "localonly.pb.h" +#include "config.pb.h" #include "portnums.pb.h" #include "telemetry.pb.h" @@ -631,7 +631,7 @@ typedef struct _FromRadio { union { MyNodeInfo my_info; NodeInfo node_info; - LocalConfig config; + Config config; LogRecord log_record; uint32_t config_complete_id; bool rebooted; @@ -980,7 +980,7 @@ X(a, STATIC, ONEOF, MESSAGE, (payloadVariant,packet,packet), 11) #define FromRadio_DEFAULT NULL #define FromRadio_payloadVariant_my_info_MSGTYPE MyNodeInfo #define FromRadio_payloadVariant_node_info_MSGTYPE NodeInfo -#define FromRadio_payloadVariant_config_MSGTYPE LocalConfig +#define FromRadio_payloadVariant_config_MSGTYPE Config #define FromRadio_payloadVariant_log_record_MSGTYPE LogRecord #define FromRadio_payloadVariant_packet_MSGTYPE MeshPacket diff --git a/src/nrf52/NRF52Bluetooth.cpp b/src/nrf52/NRF52Bluetooth.cpp index e505e2104..28aa4fea2 100644 --- a/src/nrf52/NRF52Bluetooth.cpp +++ b/src/nrf52/NRF52Bluetooth.cpp @@ -225,6 +225,11 @@ void NRF52Bluetooth::setup() Bluefruit.autoConnLed(false); Bluefruit.begin(); + // Clear existing data. + Bluefruit.Advertising.stop(); + Bluefruit.Advertising.clearData(); + Bluefruit.ScanResponse.clearData(); + // Set the advertised device name (keep it short!) Bluefruit.setName(getDeviceName()); @@ -276,4 +281,4 @@ void NRF52Bluetooth::clearBonds() Bluefruit.Periph.clearBonds(); Bluefruit.Central.clearBonds(); -} \ No newline at end of file +}