         uint8_t       sideExclusionZoneDistance;    // W, scale 1m
         uint8_t       packetVersion;                // This is siteBKNS Packet Format Version 2
     } fields;
-}custom_data_t;
+}beacon_data_t;
 
-// BEACON DUMMY DATA TO OBSERVE WIRE PROTOCOL DATA PACKING
-// with five character local name, there remain two spare bytes (according to "nRF Connect" android app)
-char * localName = "C9999";
-int LOCALNAMESIZE = sizeof(localName);          
-custom_data_t custom_data = 
-{ .fields = 
-  {   .companyID = 0xFFFF,                      // Reserved by Bluetooth Specification for internal testing
-      .gpsForwardBearing=0x1111,                // Azimuth, scale 1 degree
-      .gpsLatitute= 0x22222222,                 // X, scale 100000/0.00001m
-      .gpsLongitude=0x33333333,                 // Y, scale 100000/0.00001m
-      .gpsForwardSpeed=0x44,
-      .forwardExclusionZoneDistance = 0xAA,     // F, scale 1m, max 256
-      .rearExclusionZoneDistance = 0xBB,        // L, scale 1m, max 256
-      .sideExclusionZoneDistance = 0xCC,        // W, scale 1m, max 256 
-      .packetVersion = 0x02                     // This is siteBKNS packet format VERSION 2
-  }
-};
+// BEACON DEFAULT DATA CAN BE USED TO OBSERVE ALIGNMENT PACKING OF WIRE PROTOCOL  
+beacon_data_t myBeaconData = 
+  { .fields = 
+      {     .companyID                    = 0xFFFF,    //reserved by Bluetooth Specification for internal testing
+            .gpsForwardBearing            = 0x1111,
+            .gpsLatitute                  = 0x22222222,
+            .gpsLongitude                 = 0x33333333,
+            .gpsForwardSpeed              = 0x44,
+            .forwardExclusionZoneDistance = 0xAA,
+            .rearExclusionZoneDistance    = 0xBB,
+            .sideExclusionZoneDistance    = 0xCC,
+            .packetVersion                = 2
+      }
+  };
 
 // BLE GAP ADVERTISING CONFIGURATION
-
-static esp_ble_adv_data_t _adv_config = {
+static esp_ble_adv_data_t advertisement_config = {
         .set_scan_rsp        = false,
         .include_name        = true,
         .include_txpower     = true,      // !!!! TX-power can help with backup distance calculation in GPS blackspots
         .min_interval        = 512,
         .max_interval        = 1024,
         .appearance          = 0,
-        .manufacturer_len    = 0,
-        .p_manufacturer_data = NULL,
+        .manufacturer_len    = sizeof(beacon_data_t),
+        .p_manufacturer_data = myBeaconData.raw,    //update myBeaconData then call esp_ble_gap_config_adv_data(&advertisement_config) 
         .service_data_len    = 0,
         .p_service_data      = NULL,
         .service_uuid_len    = 0,

    SurfaceMiningEquipmentBEACON = 4
};

// BEACON WIRE PACKET FORMAT VERSION 2
// Deisgned per Anurag, Gosh, Bandyopadhyay, "GPS based Vehicular Collision Warning System using IEEE 802.15.4 MAC/PHY Standard"
typedef union   
{   uint8_t       raw[27];  
    struct 
    {   uint16_t      companyID ;                   // Ref https://www.bluetooth.com/specifications/assigned-numbers/company-identifiers
        uint16_t      gpsForwardBearing;            // Azimuth

        .adv_filter_policy   = ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY,
};

/////////////////////////
// BLE SUPPORT FUNCTIONS

static void 
_on_gap(esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *param){
    if(event == ESP_GAP_BLE_ADV_DATA_SET_COMPLETE_EVT){
        esp_ble_gap_start_advertising(&advertisement_params);
    }
}

static bool 
initialize_ble_gap(const char * name){
    if(!btStarted() && !btStart()){
        log_e("btStart failed");
        return false;
