nrf54l15-dk use ESL

Hi,Team,

I am developing Pawr using nrf54l15-dk.

For the Pawr  example I refer to E:\NCS\v2.8.0\zephyr\samples\bluetooth\periodic_adv_rsp and periodic_sync_rsp.

I want to implement pawr one-to-many communication in the periodic_adv_rsp example and for the AP to specify a tag to subscribe to subevents. I refer to the file nrf-esl-bluetooth ( https://github.com/NordicPlayground/nrf-esl-bluetooth/tree/v2.5-branch), but nrf-esl-bluetooth contains so many files that I don't know which ones to refer to.

What should I do?

Thanks.

Parents Reply
  • Hi,

    I have learned ESL related knowledge, but it seems more complicated, it may be more difficult to achieve.

    So far I have implemented communication using AP and two tags, but I don't know how to control the AP to communicate with the specified tags. Maybe I should change the code in the periodic_adv_rsp example, but I don't know how.

    Maybe I should change "request_cb"(NCS\v2.8.0\zephyr\samples\bluetooth\periodic_adv_rsp). Can you provide a simple example?

    static void request_cb(struct bt_le_ext_adv *adv, const struct bt_le_per_adv_data_request *request)
    {
    	int err;
    	uint8_t to_send;
    	struct net_buf_simple *buf;
    
    	to_send = MIN(request->count, ARRAY_SIZE(subevent_data_params));
    
    	for (size_t i = 0; i < to_send; i++) {
    		buf = &bufs[i];
    		buf->data[buf->len - 1] = counter++;
    
    		subevent_data_params[i].subevent =
    			(request->start + i) % per_adv_params.num_subevents;
    		subevent_data_params[i].response_slot_start = 0;
    		subevent_data_params[i].response_slot_count = NUM_RSP_SLOTS;
    		subevent_data_params[i].data = buf;
    	}
    
    	err = bt_le_per_adv_set_subevent_data(adv, to_send, subevent_data_params);
    	if (err) {
    		printk("Failed to set subevent data (err %d)\n", err);
    	} else {
    		printk("Subevent data set %d\n", counter);
    	}
    }

    Thanks.

Children
No Data
Related