diff --git a/examples/ble_central/ble_app_uart_c_lr/main.c b/examples/ble_central/ble_app_uart_c_lr/main.c
index f0e543c..4dd82ac 100644
--- a/examples/ble_central/ble_app_uart_c_lr/main.c
+++ b/examples/ble_central/ble_app_uart_c_lr/main.c
@@ -98,23 +98,24 @@ static ble_gap_conn_params_t const m_connection_param =
     (uint16_t)SUPERVISION_TIMEOUT       // Supervision time-out
 };
 
-static uint8_t m_scan_buffer_data[BLE_GAP_SCAN_BUFFER_MIN]; /**< buffer where advertising reports will be stored by the SoftDevice. */
+static uint8_t m_scan_buffer_data[BLE_GAP_SCAN_BUFFER_EXTENDED_MIN]; /**< buffer where advertising reports will be stored by the SoftDevice. */
 
 /**@brief Pointer to the buffer where advertising reports will be stored by the SoftDevice. */
 static ble_data_t m_scan_buffer =
 {
     m_scan_buffer_data,
-    BLE_GAP_SCAN_BUFFER_MIN
+    BLE_GAP_SCAN_BUFFER_EXTENDED_MIN
 };
 
 /** @brief Parameters used when scanning. */
 static ble_gap_scan_params_t const m_scan_params =
 {
     .active   = 1,
+    .extended = 1,
     .interval = SCAN_INTERVAL,
     .window   = SCAN_WINDOW,
     .timeout          = SCAN_DURATION,
-    .scan_phys        = BLE_GAP_PHY_1MBPS,
+    .scan_phys        = BLE_GAP_PHY_CODED,
     .filter_policy    = BLE_GAP_SCAN_FP_ACCEPT_ALL,
 };
 
@@ -344,6 +345,8 @@ static void on_adv_report(ble_gap_evt_adv_report_t const * p_adv_report)
 {
     ret_code_t err_code;
 
+    NRF_LOG_INFO("ADV. report");
+
     if (ble_advdata_uuid_find(p_adv_report->data.p_data, p_adv_report->data.len, &m_nus_uuid))
     {
         err_code = sd_ble_gap_connect(&p_adv_report->peer_addr,
@@ -394,15 +397,23 @@ static void ble_evt_handler(ble_evt_t const * p_ble_evt, void * p_context)
             NRF_LOG_INFO("Connected to target");
             err_code = ble_nus_c_handles_assign(&m_ble_nus_c, p_ble_evt->evt.gap_evt.conn_handle, NULL);
             APP_ERROR_CHECK(err_code);
+            
+            err_code = sd_ble_gap_rssi_start(p_ble_evt->evt.gap_evt.conn_handle, 10, 0);
+            APP_ERROR_CHECK(err_code);
 
             err_code = bsp_indication_set(BSP_INDICATE_CONNECTED);
             APP_ERROR_CHECK(err_code);
+            
 
             // start discovery of services. The NUS Client waits for a discovery result
             err_code = ble_db_discovery_start(&m_db_disc, p_ble_evt->evt.gap_evt.conn_handle);
             APP_ERROR_CHECK(err_code);
             break;
 
+        case BLE_GAP_EVT_RSSI_CHANGED:
+            NRF_LOG_INFO("RSSI : %d dBm", p_gap_evt->params.rssi_changed.rssi);
+            break;
+
         case BLE_GAP_EVT_TIMEOUT:
             if (p_gap_evt->params.timeout.src == BLE_GAP_TIMEOUT_SRC_SCAN)
             {
diff --git a/examples/ble_peripheral/ble_app_uart_lr/main.c b/examples/ble_peripheral/ble_app_uart_lr/main.c
index 16ab0a1..94e4aca 100644
--- a/examples/ble_peripheral/ble_app_uart_lr/main.c
+++ b/examples/ble_peripheral/ble_app_uart_lr/main.c
@@ -610,12 +610,17 @@ static void advertising_init(void)
     init.advdata.include_appearance = false;
     init.advdata.flags              = BLE_GAP_ADV_FLAGS_LE_ONLY_LIMITED_DISC_MODE;
 
-    init.srdata.uuids_complete.uuid_cnt = sizeof(m_adv_uuids) / sizeof(m_adv_uuids[0]);
-    init.srdata.uuids_complete.p_uuids  = m_adv_uuids;
+    
+    init.advdata.uuids_complete.uuid_cnt = sizeof(m_adv_uuids) / sizeof(m_adv_uuids[0]);
+    init.advdata.uuids_complete.p_uuids  = m_adv_uuids;
+
+    init.config.ble_adv_fast_enabled     = true;
+    init.config.ble_adv_fast_interval    = APP_ADV_INTERVAL;
+    init.config.ble_adv_fast_timeout     = APP_ADV_DURATION;
+    init.config.ble_adv_primary_phy      = BLE_GAP_PHY_CODED;
+    init.config.ble_adv_secondary_phy    = BLE_GAP_PHY_CODED;
+    init.config.ble_adv_extended_enabled = true;
 
-    init.config.ble_adv_fast_enabled  = true;
-    init.config.ble_adv_fast_interval = APP_ADV_INTERVAL;
-    init.config.ble_adv_fast_timeout  = APP_ADV_DURATION;
     init.evt_handler = on_adv_evt;
 
     err_code = ble_advertising_init(&m_advertising, &init);
@@ -688,7 +693,8 @@ static void advertising_start(void)
  */
 int main(void)
 {
-    bool erase_bonds;
+    bool       erase_bonds;
+    ret_code_t err_code; 
 
     // Initialize.
     uart_init();
@@ -707,6 +713,8 @@ int main(void)
     printf("\r\nUART started.\r\n");
     NRF_LOG_INFO("Debug logging for UART over RTT started.");
     advertising_start();
+    err_code = sd_ble_gap_tx_power_set(BLE_GAP_TX_POWER_ROLE_ADV,  0, 8);
+    APP_ERROR_CHECK(err_code);
 
     // Enter main loop.
     for (;;)
