ESL PoC using nRF5340 AP + Nordic nRF52833 tags (Waveshare 2.13” EPD), nRF Connect SDK v2.5.1

I am developing an ESL proof-of-concept based on the Nordic Bluetooth ESL reference architecture and transitioning toward a small-scale PoC production (≈100 tags). I have completed the ESL demo using nRF5340 (AP) and Nordic nRF52833 (ESL tags) with Waveshare 2.13” EPD.

I require technical assistance in the following implementation and HW design:

  1. Do you provide a reference schematic / hardware design package for nRF52833-based ESL tag PCB design, including RF antenna layout/matching guidance, coin-cell power design considerations, and recommended SWD/production test interface design?
  2. About bulk price update, I have tested a demo bulk price update using a Vendor Specific OpCode (0x2F) on the AP and distributed to tags via PAwR. Tags correctly receive and process the update but do not send any response, the log shows: <wrn> bt_hci_core: opcode 0x2083 status 0x46. I have shared the tag log with you for further analysis and assistance.
  3. Is it feasible to directly transfer layout images from a PC to ESL tags using mcumgr, or is OTS the only recommended method for provisioning layout images to the TAGS?

# SEGGER J-Link RTT Viewer V9.34b Terminal Log File
# Compiled: 12:05:12 on Apr 10 2026
# Logging started @ 22 May 2026 23:23:50
00> [00:12:25.202,911] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:25.202,941] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:25.202,972] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:25.303,039] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:25.303,070] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:26.962,799] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:26.962,860] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:26.962,860] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:26.962,890] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:26.962,921] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:27.062,988] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:27.063,018] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:28.722,747] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:28.722,808] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:28.722,808] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:28.722,839] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:28.722,869] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:28.822,937] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:28.822,967] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:30.482,696] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:30.482,757] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:30.482,788] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:30.482,788] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:30.482,818] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:30.582,916] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:30.582,946] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:32.242,645] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:32.242,706] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:32.242,736] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:32.242,736] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:32.242,767] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:32.342,834] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:32.342,864] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:34.002,593] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:34.002,655] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:34.002,685] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:34.002,685] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:34.002,716] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:34.102,783] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:34.102,813] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:35.762,542] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:35.762,603] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:35.762,634] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:35.762,634] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:35.762,664] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:35.862,762] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:35.862,792] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:37.522,491] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:37.522,552] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:37.522,583] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:37.522,583] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:37.522,613] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:37.622,711] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:37.622,741] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:39.282,440] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:39.282,501] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:39.282,531] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:39.282,531] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:39.282,562] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:39.382,659] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:39.382,690] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:41.042,388] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:41.042,449] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:41.042,480] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:41.042,480] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:41.042,510] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:41.142,578] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:41.142,608] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:42.802,337] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:42.802,398] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:42.802,429] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:42.802,429] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:42.802,459] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:42.902,526] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:42.902,557] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:44.562,286] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:44.562,347] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:44.562,377] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:44.562,377] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:44.562,408] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:44.662,506] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:44.662,536] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:46.322,235] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:46.322,296] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:46.322,326] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:46.322,326] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:46.322,357] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:46.422,454] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:46.422,485] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:48.082,183] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:48.082,244] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:48.082,275] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:48.082,275] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:48.082,305] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:48.182,403] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:48.182,434] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:49.842,132] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:49.842,193] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:49.842,224] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:49.842,224] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:49.842,254] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:49.942,352] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:49.942,382] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:51.602,081] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:51.602,142] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:51.602,172] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:51.602,172] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:51.602,203] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:51.702,301] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:51.702,331] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:53.362,030] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:53.362,091] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:53.362,121] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:53.362,121] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:53.362,152] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:53.462,249] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:53.462,280] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:55.122,009] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:12:55.122,039] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:12:55.122,070] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:12:55.122,070] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:12:55.122,100] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:12:55.222,198] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:12:55.222,229] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:12:56.387,542] <inf> bt_esl: Object with 0x000000000100 ID has been created
00> [00:12:56.387,725] <inf> bt_esl: Object with 0x000000000101 ID has been created
00> [00:12:56.387,908] <inf> bt_esl: Object with 0x000000000102 ID has been created
00> [00:12:56.387,939] <inf> bt_esl: Unsubscribe ESL TAG Periodic Advertising Sync...
00> [00:12:56.388,488] <dbg> bt_esl: term_cb: PER_ADV_SYNC[0]: [DEVICE]: 05:41:D0:05:80:8E (random) sync terminated
00> 
00> [00:12:56.389,190] <inf> bt_esl: Unsubscribe ESL TAG Periodic Advertising Sync...
00> [00:12:56.389,404] <dbg> bt_esl: sm_synchronized_exit: sm_synchronized_exit
00> [00:12:56.389,404] <dbg> bt_esl: sm_unsynchronized_entry: sm_unsynchronized_entry
00> [00:12:56.389,434] <dbg> bt_esl: bt_esl_adv_start: busy 0
00> [00:12:56.389,465] <inf> bt_esl: set unassociated timeout 3600 seconds
00> [00:12:56.389,495] <dbg> bt_esl: bt_esl_disconnect: disconnect ble fail -128
00> [00:12:56.395,538] <inf> peripheral_esl: Bond deleted for EA:0F:7A:3F:7D:0E, id 0
00> [00:12:56.419,921] <dbg> bt_esl: sm_unsynchronized_exit: sm_unsynchronized_exit
00> [00:12:56.419,952] <dbg> bt_esl: sm_unassociated_entry: sm_unassociated_entry
00> [00:12:56.419,982] <dbg> bt_esl: bt_esl_adv_start: busy 8
00> [00:12:56.570,068] <dbg> bt_esl: esl_advertising_fn: Undirected adv
00> [00:12:56.571,258] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Time duration seconds
00> [00:12:56.571,289] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 6
00> [00:12:56.571,289] <dbg> bt_esl: led_delay_worker_fn: pattern 90
00> [00:12:56.571,319] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  5a 00 00 00 00                                   |Z....            
00> [00:12:58.391,754] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:00.212,219] <dbg> bt_esl: led_delay_worker_fn: pattern done 1 times
00> [00:13:02.032,684] <dbg> bt_esl: led_delay_worker_fn: pattern done 2 times
00> [00:13:03.853,149] <dbg> bt_esl: led_delay_worker_fn: pattern done 3 times
00> [00:13:05.673,614] <dbg> bt_esl: led_delay_worker_fn: pattern done 4 times
00> [00:13:07.494,079] <dbg> bt_esl: led_delay_worker_fn: pattern done 5 times
00> [00:13:09.314,544] <dbg> bt_esl: led_delay_worker_fn: pattern done 6 times
00> [00:13:10.666,625] <dbg> bt_esl: mtu_updated: Updated MTU: TX: 23 RX: 23 bytes
00> [00:13:10.666,809] <dbg> bt_esl: connected: connected 0
00> [00:13:10.674,621] <inf> peripheral_esl: Pairing confirmed: EA:0F:7A:3F:7D:0E (random)
00> [00:13:11.052,398] <inf> peripheral_esl: Pairing completed: EA:0F:7A:3F:7D:0E (random), bonded: 1
00> [00:13:11.052,703] <inf> bt_esl: Security changed: EA:0F:7A:3F:7D:0E (random) level 2
00> [00:13:11.059,112] <dbg> bt_esl: mtu_updated: Updated MTU: TX: 247 RX: 255 bytes
00> [00:13:11.196,563] <dbg> bt_esl: esl_cont_point_ccc_changed: ESL Control Point CCCD has changed.
00> [00:13:11.196,594] <dbg> bt_esl: esl_cont_point_ccc_changed: Notification for Control Point has been turned on.
00> [00:13:11.375,946] <dbg> bt_esl: esl_addr_write: Got write req for ESL address CHRC.
00> [00:13:11.375,976] <inf> bt_esl: new esl_addr 0x0901
00> [00:13:11.376,007] <dbg> ESL_settings: esl_settings_addr_save: esl/esl_addr, 901
00> [00:13:11.378,967] <dbg> bt_esl: esl_is_configuring_state: configuring_state 1
00> [00:13:11.404,144] <dbg> bt_esl: ap_key_write: Got write for AP SYNC KEY.
00> [00:13:11.404,174] <dbg> bt_esl: ap_key_write: new_ap_sync_key
00>                                  42 6a d1 d2 3e b9 43 e6  a3 88 35 07 b2 66 6b 3c |Bj..>.C. ..5..fk<
00>                                  db 48 d3 b2 d3 7b 7a 0d                          |.H...{z.         
00> [00:13:11.404,205] <dbg> ESL_settings: esl_settings_ap_key_save: esl/esl_ap_key
00>                                        3c 6b 66 b2 07 35 88 a3  e6 43 b9 3e d2 d1 6a 42 |<kf..5.. .C.>..jB
00>                                        db 48 d3 b2 d3 7b 7a 0d                          |.H...{z.         
00> [00:13:11.407,928] <dbg> bt_esl: esl_is_configuring_state: configuring_state 3
00> [00:13:11.431,640] <dbg> bt_esl: esl_rsp_key_write: Got write for ESL RESP KEY CHRC.
00> [00:13:11.431,671] <dbg> bt_esl: esl_rsp_key_write: new_esl_resp_key
00>                                  14 78 7f 12 b8 2b cc 6a  b0 d4 76 c7 6c f9 68 08 |.x...+.j ..v.l.h.
00>                                  2b c3 5c c4 25 9b ec a7                          |+.\.%...         
00> [00:13:11.431,701] <dbg> ESL_settings: esl_settings_rsp_key_save: esl/esl_rsp_key
00>                                        08 68 f9 6c c7 76 d4 b0  6a cc 2b b8 12 7f 78 14 |.h.l.v.. j.+...x.
00>                                        2b c3 5c c4 25 9b ec a7                          |+.\.%...         
00> [00:13:11.435,424] <dbg> bt_esl: esl_is_configuring_state: configuring_state 7
00> [00:13:11.458,465] <dbg> bt_esl: abs_time_write: Got write req for Absolute Time CHRC.
00> [00:13:11.458,496] <dbg> bt_esl: abs_time_write: 2901118
00> [00:13:11.460,174] <dbg> bt_esl: esl_abs_time_update: abs_time_anchor 4292857638 new_abs_time 2901118 abs_time 2901118
00> 
00> [00:13:11.625,122] <dbg> bt_esl: esl_is_configuring_state: configuring_state 15
00> [00:13:11.625,122] <dbg> bt_esl: esl_is_configuring_state: All data needed for configuring is set
00> [00:13:11.626,373] <dbg> bt_esl: sm_unassociated_exit: sm_unassociated_exit
00> [00:13:11.626,403] <dbg> bt_esl: sm_configuring_entry: sm_configuring_entry
00> [00:13:11.651,031] <dbg> bt_esl: esl_disp_read: Got read req for Diaply Information CHRC. len 242, off 0
00> [00:13:11.651,062] <dbg> bt_esl: esl_image_read: Got read req for Image Information CHRC. len 235, off 0
00> [00:13:11.651,092] <dbg> bt_esl: esl_sensor_read: Got read req for Sensor Information CHRC.
00> [00:13:11.651,153] <dbg> bt_esl: esl_led_read: Got read for LED Information CHRC.
00> [00:13:12.159,576] <dbg> bt_esl: esl_control_write: Got write req for Control Point CHRC.
00> [00:13:12.159,576] <dbg> bt_esl: esl_control_write: esl_control_write len 2
00> [00:13:12.159,637] <dbg> bt_esl: esl_control_write: esl_control_write
00>                                  04 01                                            |..               
00> [00:13:12.159,942] <dbg> bt_esl: ecp_command_handler: OP_UPDATE_COMPLETE
00> [00:13:12.161,621] <dbg> bt_esl: esl_is_configuring_state: configuring_state 31
00> [00:13:12.161,621] <dbg> bt_esl: esl_is_configuring_state: All data needed for configuring is set
00> [00:13:12.162,902] <dbg> bt_esl: sm_configuring_exit: sm_configuring_exit
00> [00:13:12.162,933] <dbg> bt_esl: sm_configuring_entry: sm_configuring_entry
00> [00:13:12.164,489] <dbg> bt_esl: sm_configuring_exit: sm_configuring_exit
00> [00:13:12.164,489] <dbg> bt_esl: sm_configured_entry: sm_configured_entry
00> [00:13:12.164,703] <dbg> bt_esl: ecp_response_handler: send ECP resp
00> [00:13:12.164,703] <dbg> bt_esl: ecp_response_handler: OP_BASIC_STATE
00> [00:13:12.186,584] <dbg> bt_esl: ecp_notify_cb: 
00>                                  00 19 00 00 c0 25 00 20  40 b7 8b 01 c0 25 00 20 |.....%.  @....%. 
00>                                  03                                               |.                
00> [00:13:12.186,614] <dbg> bt_esl: ecp_notify_cb: 
00>                                  10 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 |........ ........
00>                                  00                                               |.                
00> [00:13:12.187,377] <inf> bt_esl: Object with 0x000000000100 ID has been selected
00> [00:13:12.434,265] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 0, Length = 502, Remaining = 3104
00> [00:13:12.558,013] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 502, Length = 502, Remaining = 2602
00> [00:13:12.681,732] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 1004, Length = 502, Remaining = 2100
00> [00:13:12.805,480] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 1506, Length = 502, Remaining = 1598
00> [00:13:12.929,229] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 2008, Length = 502, Remaining = 1096
00> [00:13:13.052,978] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 2510, Length = 502, Remaining = 594
00> [00:13:13.176,727] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 3012, Length = 502, Remaining = 92
00> [00:13:13.206,359] <dbg> bt_esl: ots_obj_write: Object with 0x000000000100 ID 0 obj_index is being written Offset = 3514, Length = 92, Remaining = 0
00> [00:13:13.206,420] <inf> bt_esl: ots_obj_write 0 done 3606
00> [00:13:13.260,131] <inf> bt_esl: Object with 0x000000000101 ID has been selected
00> [00:13:13.506,713] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 0, Length = 502, Remaining = 3104
00> [00:13:13.630,462] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 502, Length = 502, Remaining = 2602
00> [00:13:13.754,211] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 1004, Length = 502, Remaining = 2100
00> [00:13:13.877,960] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 1506, Length = 502, Remaining = 1598
00> [00:13:14.001,708] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 2008, Length = 502, Remaining = 1096
00> [00:13:14.125,457] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 2510, Length = 502, Remaining = 594
00> [00:13:14.249,206] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 3012, Length = 502, Remaining = 92
00> [00:13:14.278,839] <dbg> bt_esl: ots_obj_write: Object with 0x000000000101 ID 1 obj_index is being written Offset = 3514, Length = 92, Remaining = 0
00> [00:13:14.278,869] <inf> bt_esl: ots_obj_write 1 done 3606
00> [00:13:16.117,858] <inf> bt_esl: PER_ADV_SYNC[0]: [DEVICE]: 05:41:D0:05:80:8E (random) synced, Interval 0x0580 (1408), PHY 2, sync info sid 8, service_data 0x1857 num_events 128, sub_int 11, resp delay 8, resp spacing 3
00> [00:13:16.118,133] <dbg> bt_esl: sm_configured_exit: sm_configured_exit
00> [00:13:16.118,164] <dbg> bt_esl: sm_synchronized_entry: sm_synchronized_entry
00> [00:13:16.119,171] <err> bt_adv: No valid legacy adv
00> [00:13:16.119,201] <inf> bt_esl: Set unsynced timeout 3600 seconds
00> [00:13:16.133,666] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:16.133,728] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:16.133,728] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:16.133,758] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:16.133,758] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:16.146,636] <dbg> bt_esl: esl_cont_point_ccc_changed: ESL Control Point CCCD has changed.
00> [00:13:16.146,667] <dbg> bt_esl: esl_cont_point_ccc_changed: Notification for Control Point has been turned off.
00> [00:13:16.146,972] <inf> bt_esl: Disconnected: EA:0F:7A:3F:7D:0E (random) (reason 0x16)
00> [00:13:16.233,856] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:16.233,886] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:16.241,394] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:16.241,424] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:16.241,455] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:16.241,455] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:16.241,485] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:16.341,583] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:16.341,613] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:18.001,342] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:18.001,403] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:18.001,403] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:18.001,434] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:18.001,464] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:18.101,531] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:18.101,562] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:19.761,291] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:19.761,352] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:19.761,352] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:19.761,383] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:19.761,413] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:19.861,480] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:19.861,511] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:21.521,240] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:21.521,301] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:21.521,301] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:21.521,331] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:21.521,362] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:21.621,429] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:21.621,459] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:23.281,188] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:23.281,250] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:23.281,280] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:23.281,280] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:23.281,311] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:23.381,378] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:23.381,408] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:25.041,137] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:25.041,198] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:25.041,229] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:25.041,229] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:25.041,259] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:25.141,326] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:25.141,357] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:26.801,086] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:26.801,147] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:26.801,177] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:26.801,177] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:26.801,208] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:26.901,275] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:26.901,306] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:28.561,035] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:28.561,096] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:28.561,126] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:28.561,126] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:28.561,157] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:28.661,224] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:28.661,254] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:30.320,983] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:30.321,044] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:30.321,075] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:30.321,075] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:30.321,105] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:30.421,203] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:30.421,234] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:32.080,932] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:32.080,993] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:32.081,024] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:32.081,024] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:32.081,054] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:32.181,152] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:32.181,182] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:33.840,881] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:33.840,942] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:33.840,972] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:33.840,972] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:33.841,003] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:33.941,070] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times[0m
00> [00:13:33.941,101] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:35.600,830] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:35.600,891] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:35.600,921] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:35.600,921] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:35.600,952] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:35.701,019] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:35.701,049] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:37.360,778] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:37.360,839] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:37.360,870] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:37.360,870] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:37.360,900] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:37.460,968] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:37.460,998] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:39.120,727] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:39.120,788] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:39.120,819] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:39.120,819] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:39.120,849] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:39.220,947] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:39.220,977] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:40.880,676] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:40.880,737] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:40.880,767] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:40.880,767] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:40.880,798] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:40.980,895] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:40.980,926] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:42.640,625] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:42.640,686] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:42.640,716] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:42.640,716] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:42.640,747] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:42.740,844] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:42.740,875] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:44.400,573] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:44.400,634] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:44.400,665] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:44.400,665] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:44.400,695] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:44.500,793] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:44.500,823] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:46.160,522] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:46.160,583] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:46.160,614] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:46.160,614] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:46.160,644] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:46.260,742] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:46.260,772] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:47.920,501] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:47.920,532] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:47.920,562] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:47.920,562] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:47.920,593] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:48.020,690] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:48.020,721] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:49.680,450] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:49.680,480] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:49.680,511] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:49.680,511] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:49.680,541] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:49.780,639] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:49.780,670] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:51.459,838] <inf> peripheral_esl: Received ESL_VS_TAG_BULK_PRICE_UPD_RES
00> --- 14 messages dropped ---
00> [00:13:51.459,899] <dbg> bt_esl: esl_parse_sync_packet: sync command
00>                                  2f 02 33 08                                      |/.3.             
00> [00:13:51.459,899] <dbg> bt_esl: esl_parse_sync_packet: esl id is not for us 0x02 0x01
00> [00:13:51.459,930] <dbg> bt_esl: esl_parse_sync_packet: sync command
00>                                  2f 03 1b 0c                                      |/...             
00> [00:13:51.459,960] <dbg> bt_esl: esl_parse_sync_packet: esl id is not for us 0x03 0x01
00> [00:13:51.459,991] <dbg> bt_esl: esl_parse_sync_packet: sync command
00>                                  2f 04 03 10                                      |/...             
00> [00:13:51.459,991] <dbg> bt_esl: esl_parse_sync_packet: esl id is not for us 0x04 0x01
00> [00:13:51.460,021] <dbg> bt_esl: esl_parse_sync_packet: sync command
00>                                  2f 05 eb 13                                      |/...             
00> [00:13:51.460,021] <dbg> bt_esl: esl_parse_sync_packet: esl id is not for us 0x05 0x01
00> [00:13:51.460,052] <dbg> bt_esl: esl_parse_sync_packet: sync command
00>                                  2f 06 d3 17                                      |/...             
00> [00:13:51.460,083] <dbg> bt_esl: esl_parse_sync_packet: esl id is not for us 0x06 0x01
00> [00:13:51.460,113] <dbg> bt_esl: esl_parse_sync_packet: sync command
00>                                  2f 07 bb 1b                                      |/...             
00> [00:13:51.460,113] <dbg> bt_esl: esl_parse_sync_packet: esl id is not for us 0x07 0x01
00> [00:13:51.460,144] <dbg> bt_esl: set_pawr_response: set_pawr_response
00>                                  2f 4b 04 00                                      |/K..             
00> [00:13:51.460,174] <dbg> common_esl: esl_compose_ad_data: input payload
00>                                      2f 4b 04 00                                      |/K..             
00> [00:13:51.460,205] <dbg> common_esl: esl_update_randomizer: current Randomizer
00>                                      98 f1 48 3b b3                                   |..H;.            
00> [00:13:51.460,266] <dbg> common_esl: esl_update_randomizer: current Nonce
00>                                      98 f1 48 3b b3 2b c3 5c  c4 25 9b ec a7          |..H;.+.\ .%...   
00> [00:13:51.460,266] <dbg> common_esl: esl_generate_ad_data_header: payload_data_len 4 output_len 11
00> [00:13:51.460,296] <dbg> common_esl: esl_generate_ad_data_header: Generated ESL plain AD data
00>                                      98 f1 48 3b b3 05 34 2f  4b 04 00                |..H;..4/ K..     
00> [00:13:51.460,906] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:51.460,815] <wrn> bt_hci_core: opcode 0x2083 status 0x46
00> [00:13:51.460,845] <inf> bt_esl: tlv counts 7 rsp_slot 1
00> [00:13:51.460,876] <inf> bt_esl: Renew unsycned timeout 3600 seconds
00> [00:13:51.460,937] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:51.460,937] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:51.460,968] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:51.561,065] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:51.561,096] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:53.200,347] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:53.200,408] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:53.200,408] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:53.200,439] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:53.200,439] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:53.300,537] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:53.300,567] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:54.960,296] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:54.960,357] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:54.960,357] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:54.960,388] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:54.960,388] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:55.060,485] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:55.060,516] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:56.720,245] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:56.720,306] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:56.720,306] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:56.720,336] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:56.720,336] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:56.820,434] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:56.820,465] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:13:58.480,194] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:13:58.480,255] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:13:58.480,255] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:13:58.480,285] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:13:58.480,285] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:13:58.580,383] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:13:58.580,413] <dbg> bt_esl: led_delay_worker_fn: pattern finished
00> [00:14:00.240,142] <dbg> bt_esl: recv_cb: Empty sync packet
00> [00:14:00.240,203] <dbg> bt_esl: led_delay_worker_fn: LED repeat type Number of times
00> [00:14:00.240,203] <dbg> bt_esl: led_delay_worker_fn: LED control not started. Most right set bit 0
00> [00:14:00.240,234] <dbg> bt_esl: led_delay_worker_fn: pattern 1
00> [00:14:00.240,234] <dbg> bt_esl: led_delay_worker_fn: led pattern
00>                                  01 00 00 00 00                                   |.....            
00> [00:14:00.340,332] <dbg> bt_esl: led_delay_worker_fn: pattern done 0 times
00> [00:14:00.340,362] <dbg> bt_esl: led_delay_worker_fn: pattern finished

# Logging stopped @ 22 May 2026 23:25:20

  • Hello,

    1. Not that I am aware of, but we can help you do a schematic review and hardware tuning when you start making your own hardware.

    2. Suspect the problem is that the tag processes the 0x2F payload before submitting the response, and that processing delay pushes the HCI command past the response slot deadline. The fix is to always call bt_le_per_adv_set_response_data() as the first action in the recv callback, then handle the application logic asynchronously via a work queue.

    3.Not that I am aware of no, but I can ask internally if someone have some suggestions.

    Kenneth

  • Hi Kenneth,

    Thank you very much for the response.

    1. Noted. I’ll reach out later for schematic review and hardware tuning.
    2. Based on the fix you have provided, I will analyze the code again but Could you advise on the best way to implement bulk price updates? Assume the AP has to send price updates to 100 tags. 

      For testing, the 0x2F command that I tested contains only 4 bytes unencrypted payload size per tag which follows the examples in esl_dummy_cmd.c as shown below:

      case 0x14: /*type 0X14 Tag 0~10 Display img 2*/
      case 0x15: /*Vendor-specific command VS_DFU_REQ = 0x1F*/
    3. I'd be glad to hear your team's suggestions on this as well.
  • Hello,

    1. Also check with the display manufacturer.

    2. Assuming you have sent prices already to all tags (each tag received multiple images), and you want to tell to all tags "switch to image number 2" at the same time--> then if you have 100 tags, one approach could be to put all 100 tags into the same group and send a broadcast message. Though this is probably less scalable in the future, or you can put one tag per group, and then you need to send specific commands to all groups, it depends on the latency requirements, and the scalability. 

    One important thing to keep in mind: if you send a broadcast message (you use 0xFF) in the payload of the ESL message, all tags in the group will receive the message and will process it, but they will not send a response. This is by standard: you have up to 256 tags in a group, and there are not enough response slots to allow all tags to send response immediately after the command.

    3. I checked. Not out out of the box no, why would you want this? Over USB or BLE? You would need to modify they code.

    Kenneth

  • Hi Kenneth,

    1. Yes, I have reached out to the display manufacturer, Waveshare. I hope to hear from them soon.
    2. Noted.
    3. This is important in the design because each tag displays unique static content (product title, description and barcode). We therefore use a Python script on a PC to pre-generate all display images. For example, 1,000 tags require 1,000 unique images since each tag’s content differs (see snapshot below). This implementation will allow the tags to focus on only price & discount updates by writing them on the display image. USB is preferred to enable use of the mcumgr tool after flashing firmware to the tags, but we are open to your recommendation between USB and BLE.

  • 3. You would have to implement this yourself, for instance based on for instance https://academy.nordicsemi.com/courses/nrf-connect-sdk-intermediate/lessons/lesson-9-bootloaders-and-dfu-fota/ But this would then be 1:1 update.

    Kenneth

Related