Read BLE complete advertising packets

How can I read the whole advertising packet when are packets larger than some specific size? 

This is the issue. I want to read this adv packet:

But I only get this on the device:


I read a similar question in the forum and the answer is that: "The second part of the payload is received in the scan response packet, while the device_found() function is invoked only for the primary advertising packet in your case"
But how can I access to that second part of the payload? 

In my code I set up a scan name filter and starting the scanner as 
BT_SCAN_TYPE_SCAN_ACTIVE.

Also, I'm using the advance mode scanning with the callbacks:

BT_SCAN_CB_INIT(scan_cb, scan_filter_match, NULL,
		scan_connecting_error, scan_connecting);
static void scan_filter_match(struct bt_scan_device_info *device_info,
			      struct bt_scan_filter_match *filter_match,
			      bool connectable)
{
	char addr[BT_ADDR_LE_STR_LEN];

	bt_addr_le_to_str(device_info->recv_info->addr, addr, sizeof(addr));

	LOG_INF("Filters matched. Address: %s connectable: %d\n",
		   addr, connectable);

	if (device_info->recv_info->adv_type == BT_GAP_ADV_TYPE_SCAN_RSP)
	{
		LOG_INF("Scan response recivida!");

	}
	LOG_HEXDUMP_INF(device_info->adv_data->data, device_info->adv_data->len, "adv_packet");

	bt_data_parse(device_info->adv_data, adv_cb, addr);

}
Related