want to know how can i judge that the variation is caused in the connection interval, connection supervision timeout, slave latency once i have flashed ble_app_template code in nrf52832 s132.
want to know how can i judge that the variation is caused in the connection interval, connection supervision timeout, slave latency once i have flashed ble_app_template code in nrf52832 s132.
Hello,
The best way to see exactly how your connection parameter configuration affects the connection would be to use the nRF Sniffer tool to see exactly what is happening on-air.
Alternatively, if you just would like to play around with different connection parameters to see how each of them affects your connection you could take a look at the experimental ATT MTU throughput example from the SDK.
If you would like to visualize different connection parameter configurations you could take a look at the Online Power Profiler, which will let you see the effects of each configuration on the packet exchanges (as well as estimated power consumption).
Best regards,
Karl
Karl i am finding a difficulty in normal understanding the connection interval thing. Actually, by definition of CI i found it is the time btw two consecutive events for which the radio is turned ON. how can i judge this in nrf connect app?
for sniffer trace i have a csv file how to share it?
You could share it using the Insert -> Image/Video/file option. Please also address my other questions.
Please share the .pcapng file, as generated by Wireshark.
Best regards,
Karl
Hello Karl,
My code works as:
press button
device advertise with name BTLog
Then i connect on nrf connect app on mobile
i press a button and put device in data logging mode with flash storage and temperature sensor interfaced
then after logging i press button again to make the device sleep
then again press button to readvertise
the from the service created i get the logged data using notification
i face issue in setting connection parameters :
i found that increasing CI reduces power consumption but
1st is for 7.5-100ms connection interval which accounts for more than 20 logs
2nd is for 1000-1000ms connection interval which only 4 logs after which i dont get logs
i am sharing you the wireshark traces:
7.5-100ms.csv
19:05:27.828 -> <info> app: Alarm status : 0
19:05:27.828 -> <info> app: Upper threshold : 30
19:05:27.828 -> <info> app: Lower threshold : 20
19:05:27.828 -> <info> app: Type C : 1
19:05:27.828 -> <info> app: Starting delay in sec. : 0
19:05:27.828 -> <info> app: Interval delay in sec.: 10
19:05:27.828 -> <info> app: Data EF4015
19:05:27.828 -> <info> app: Data3 15
19:05:27.828 -> <info> app: Data2 40
19:05:27.828 -> <info> app: Data1 EF
19:05:27.828 -> <info> app: Data0 0
19:05:27.828 -> <info> app: temporarylogcounter4 8 temporarylogcounter3 0 temporarylogcounter2 0 temporarylogcounter1 0
19:05:27.875 -> <info> app: log counter value : 8
19:05:27.875 -> <info> app: Fast advertising
19:05:27.875 -> <info> app: Application started in Advertising Mode.
19:05:37.575 -> <info> app: Device Connected
19:05:37.575 -> <info> app: Connected.
19:05:38.328 -> <info> ble_cts_c: Current Time Service discovered at peer.
19:05:38.328 -> <info> app: Current Time Service discovered on server.
19:05:38.375 -> <info> app: Current Time received.
19:05:38.375 -> <info> app: 12/03/21-19:06:35
19:06:08.995 -> <info> app: Data logging Mode.
19:06:08.995 -> <info> app: Bluetooth deactivated.
19:06:09.042 -> <info> app: Fast advertising
19:06:09.042 -> <info> app: Device Disconnected
19:06:09.042 -> <info> app: Disconnect Complete.
19:06:09.042 -> <info> app: Disconnected.
19:06:09.042 -> <info> app: Memory Initialization done.
19:06:09.042 -> <info> app: Temp Logging started hi.
19:06:09.042 -> <info> app: Timer started hi.
19:06:09.042 -> <info> app: Initial timer finished!
19:06:09.042 -> <info> app: data_to_send 25.75-12/03/21-19:06:09
19:06:09.042 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 0 23
19:06:09.042 -> <info> app: reading 1 done
19:06:09.042 -> <info> app: temporarylogcounter0 1 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:06:19.628 -> <info> app: data_to_send 25.63-12/03/21-19:06:20
19:06:19.628 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 23 23
19:06:19.628 -> <info> app: reading 2 done
19:06:19.628 -> <info> app: temporarylogcounter0 2 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:06:29.593 -> <info> app: data_to_send 25.63-12/03/21-19:06:30
19:06:29.640 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 46 23
19:06:29.640 -> <info> app: reading 3 done
19:06:29.640 -> <info> app: temporarylogcounter0 3 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:06:39.624 -> <info> app: data_to_send 25.38-12/03/21-19:06:40
19:06:39.624 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 69 23
19:06:39.624 -> <info> app: reading 4 done
19:06:39.624 -> <info> app: temporarylogcounter0 4 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:06:49.595 -> <info> app: data_to_send 25.25-12/03/21-19:06:50
19:06:49.642 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 92 23
19:06:49.642 -> <info> app: reading 5 done
19:06:49.642 -> <info> app: temporarylogcounter0 5 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:06:59.599 -> <info> app: data_to_send 25.13-12/03/21-19:07:00
19:06:59.599 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 115 23
19:06:59.647 -> <info> app: reading 6 done
19:06:59.647 -> <info> app: temporarylogcounter0 6 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:07:09.638 -> <info> app: data_to_send 25.00-12/03/21-19:07:10
19:07:09.638 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 138 23
19:07:09.638 -> <info> app: reading 7 done
19:07:09.638 -> <info> app: temporarylogcounter0 7 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:07:19.613 -> <info> app: data_to_send 24.88-12/03/21-19:07:20
19:07:19.613 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 161 23
19:07:19.613 -> <info> app: reading 8 done
19:07:19.613 -> <info> app: temporarylogcounter0 8 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:07:29.605 -> <info> app: data_to_send 24.75-12/03/21-19:07:30
19:07:29.605 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 184 23
19:07:29.605 -> <info> app: reading 9 done
19:07:29.652 -> <info> app: temporarylogcounter0 9 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:07:39.605 -> <info> app: data_to_send 24.75-12/03/21-19:07:40
19:07:39.605 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 207 23
19:07:39.652 -> <info> app: reading 10 done
19:07:39.652 -> <info> app: temporarylogcounter0 A temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:07:49.630 -> <info> app: data_to_send 24.63-12/03/21-19:07:50
19:07:49.630 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 230 23
19:07:49.630 -> <info> app: reading 11 done
19:07:49.630 -> <info> app: temporarylogcounter0 B temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:07:59.624 -> <info> app: data_to_send 24.50-12/03/21-19:08:00
19:07:59.624 -> <info> app: reading 12 done
19:07:59.624 -> <info> app: temporarylogcounter0 C temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:08:09.605 -> <info> app: data_to_send 24.50-12/03/21-19:08:10
19:08:09.605 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 20 23
19:08:09.652 -> <info> app: reading 13 done
19:08:09.652 -> <info> app: temporarylogcounter0 D temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:08:19.619 -> <info> app: data_to_send 24.38-12/03/21-19:08:20
19:08:19.619 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 43 23
19:08:19.619 -> <info> app: reading 14 done
19:08:19.619 -> <info> app: temporarylogcounter0 E temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:08:29.603 -> <info> app: data_to_send 24.38-12/03/21-19:08:30
19:08:29.651 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 66 23
19:08:29.651 -> <info> app: reading 15 done
19:08:29.651 -> <info> app: temporarylogcounter0 F temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:08:39.645 -> <info> app: data_to_send 24.25-12/03/21-19:08:40
19:08:39.645 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 89 23
19:08:39.645 -> <info> app: reading 16 done
19:08:39.645 -> <info> app: temporarylogcounter0 10 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:08:49.637 -> <info> app: data_to_send 24.25-12/03/21-19:08:50
19:08:49.637 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 112 23
19:08:49.637 -> <info> app: reading 17 done
19:08:49.637 -> <info> app: temporarylogcounter0 11 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:08:59.640 -> <info> app: data_to_send 24.25-12/03/21-19:09:00
19:08:59.640 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 135 23
19:08:59.640 -> <info> app: reading 18 done
19:08:59.640 -> <info> app: temporarylogcounter0 12 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:09:09.600 -> <info> app: data_to_send 24.25-12/03/21-19:09:10
19:09:09.647 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 158 23
19:09:09.647 -> <info> app: reading 19 done
19:09:09.647 -> <info> app: temporarylogcounter0 13 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:09:19.648 -> <info> app: data_to_send 24.13-12/03/21-19:09:20
19:09:19.648 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 181 23
19:09:19.648 -> <info> app: reading 20 done
19:09:19.648 -> <info> app: temporarylogcounter0 14 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:09:29.642 -> <info> app: data_to_send 24.13-12/03/21-19:09:30
19:09:29.642 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 204 23
19:09:29.642 -> <info> app: reading 21 done
19:09:29.642 -> <info> app: temporarylogcounter0 15 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:09:39.636 -> <info> app: data_to_send 24.13-12/03/21-19:09:40
19:09:39.636 -> <info> app: temp_write_page temp_write_offset bytes_to_write 1 227 23
19:09:39.636 -> <info> app: reading 22 done
19:09:39.636 -> <info> app: temporarylogcounter0 16 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:09:49.621 -> <info> app: data_to_send 24.13-12/03/21-19:09:50
19:09:49.621 -> <info> app: reading 23 done
19:09:49.621 -> <info> app: temporarylogcounter0 17 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:09:53.557 -> <info> app: Bluetooth stopped and temp sensor Stoped.
19:10:00.906 -> <info> app: Bluetooth Reinitialized and temp sensor Stoped.
19:10:13.423 -> <info> app: Device Connected
19:10:13.423 -> <info> app: Connected.
19:10:14.122 -> <info> ble_cts_c: Current Time Service discovered at peer.
19:10:14.122 -> <info> app: Current Time Service discovered on server.
19:10:14.262 -> <info> app: Current Time received.
19:10:14.262 -> <info> app: 12/03/21-19:10:55
19:10:25.094 -> <info> app: Logging started!
19:10:25.187 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 0 23
19:10:25.234 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 23 23
19:10:25.234 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 46 23
19:10:25.234 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 69 23
19:10:25.234 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 92 23
19:10:25.234 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 92 23
19:10:25.281 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 115 23
19:10:25.281 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 138 23
19:10:25.281 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 138 23
19:10:25.281 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 161 23
19:10:25.281 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 184 23
19:10:25.328 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 184 23
19:10:25.328 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 184 23
19:10:25.328 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 207 23
19:10:25.328 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 230 23
19:10:25.328 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 230 23
19:10:25.328 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 20 23
19:10:25.375 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 20 23
19:10:25.375 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 20 23
19:10:25.375 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 43 23
19:10:25.375 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 66 23
19:10:25.375 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 66 23
19:10:25.375 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 89 23
19:10:25.422 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 112 23
19:10:25.422 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 112 23
19:10:25.422 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 112 23
19:10:25.422 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 135 23
19:10:25.422 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 158 23
19:10:25.422 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 158 23
19:10:25.468 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 181 23
19:10:25.468 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 204 23
19:10:25.468 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 204 23
19:10:25.468 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 204 23
19:10:25.468 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 1 227 23
19:10:25.468 -> <info> app: ***All Readings have been sent.!!!***
19:10:29.863 -> <info> app: Fast advertising
19:10:29.863 -> <info> app: Device Disconnected
19:10:29.863 -> <info> app: Disconnect Complete.
19:10:29.910 -> <info> app: Disconnected.
19:16:09.681 -> <info> app: Alarm status : 0
19:16:09.681 -> <info> app: Upper threshold : 30
19:16:09.681 -> <info> app: Lower threshold : 20
19:16:09.681 -> <info> app: Type C : 1
19:16:09.681 -> <info> app: Starting delay in sec. : 0
19:16:09.681 -> <info> app: Interval delay in sec.: 10
19:16:09.681 -> <info> app: Data EF4015
19:16:09.681 -> <info> app: Data3 15
19:16:09.681 -> <info> app: Data2 40
19:16:09.681 -> <info> app: Data1 EF
19:16:09.681 -> <info> app: Data0 0
19:16:09.681 -> <info> app: temporarylogcounter4 17 temporarylogcounter3 0 temporarylogcounter2 0 temporarylogcounter1 0
19:16:09.681 -> <info> app: log counter value : 23
19:16:09.728 -> <info> app: Fast advertising
19:16:09.728 -> <info> app: Application started in Advertising Mode.
19:16:19.482 -> <info> app: Device Connected
19:16:19.482 -> <info> app: Connected.
19:16:20.279 -> <info> ble_cts_c: Current Time Service discovered at peer.
19:16:20.279 -> <info> app: Current Time Service discovered on server.
19:16:20.279 -> <info> app: Current Time received.
19:16:20.279 -> <info> app: 12/03/21-19:16:39
19:16:56.763 -> <info> app: Data logging Mode.
19:16:56.763 -> <info> app: Bluetooth deactivated.
19:16:56.763 -> <info> app: Memory Initialization done.
19:16:56.763 -> <info> app: Fast advertising
19:16:56.763 -> <info> app: Device Disconnected
19:16:56.763 -> <info> app: Disconnect Complete.
19:16:56.763 -> <info> app: Disconnected.
19:16:56.763 -> <info> app: Temp Logging started hi.
19:16:56.763 -> <info> app: Timer started hi.
19:16:56.810 -> <info> app: Initial timer finished!
19:16:56.810 -> <info> app: data_to_send 23.63-12/03/21-19:16:57
19:16:56.810 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 0 23
19:16:56.810 -> <info> app: reading 1 done
19:16:56.810 -> <info> app: temporarylogcounter0 1 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:17:07.371 -> <info> app: data_to_send 23.63-12/03/21-19:17:07
19:17:07.371 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 23 23
19:17:07.371 -> <info> app: reading 2 done
19:17:07.371 -> <info> app: temporarylogcounter0 2 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:17:17.361 -> <info> app: data_to_send 23.63-12/03/21-19:17:17
19:17:17.361 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 46 23
19:17:17.361 -> <info> app: reading 3 done
19:17:17.361 -> <info> app: temporarylogcounter0 3 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:17:27.348 -> <info> app: data_to_send 23.50-12/03/21-19:17:27
19:17:27.348 -> <info> app: temp_write_page temp_write_offset bytes_to_write 0 69 23
19:17:27.396 -> <info> app: reading 4 done
19:17:27.396 -> <info> app: temporarylogcounter0 4 temporarylogcounter1 0 temporarylogcounter2 0 temporarylogcounter3 0
19:20:01.370 -> <info> app_timer: RTC: initialized.
19:20:01.370 -> <info> app: hello ble
19:20:01.370 -> <info> app: Current Time service client started.
19:20:03.249 -> <info> app: Alarm status : 0
19:20:03.249 -> <info> app: Upper threshold : 30
19:20:03.249 -> <info> app: Lower threshold : 20
19:20:03.296 -> <info> app: Type C : 1
19:20:03.296 -> <info> app: Starting delay in sec. : 0
19:20:03.296 -> <info> app: Interval delay in sec.: 10
19:20:03.296 -> <info> app: Data EF4015
19:20:03.296 -> <info> app: Data3 15
19:20:03.296 -> <info> app: Data2 40
19:20:03.296 -> <info> app: Data1 EF
19:20:03.296 -> <info> app: Data0 0
19:20:03.296 -> <info> app: temporarylogcounter4 4 temporarylogcounter3 0 temporarylogcounter2 0 temporarylogcounter1 0
19:20:03.296 -> <info> app: log counter value : 4
19:20:03.296 -> <info> app: Fast advertising
19:20:03.296 -> <info> app: Application started in Advertising Mode.
19:20:06.938 -> <info> app: Device Connected
19:20:06.938 -> <info> app: Connected.
19:20:07.640 -> <info> ble_cts_c: Current Time Service discovered at peer.
19:20:07.640 -> <info> app: Current Time Service discovered on server.
19:20:07.640 -> <info> app: Current Time received.
19:20:07.640 -> <info> app: 12/03/21-19:20:15
19:20:17.738 -> <info> app: Logging started!
19:20:17.874 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 0 23
19:20:17.874 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 23 23
19:20:17.874 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 46 23
19:20:17.874 -> <info> app: tempread temp_read_page temp_read_offset bytes_to_read 0 69 23
19:20:17.874 -> <info> app: ***All Readings have been sent.!!!***
19:20:22.740 -> <info> app: Fast advertising
19:20:22.740 -> <info> app: Device Disconnected
19:20:22.740 -> <info> app: Disconnect Complete.
19:20:22.740 -> <info> app: Disconnected.
Karl Ylvisaker pls administer the above issue
Hello again,
Please note that we do not provide support in the forum during the weekend.
Ridhi said:i found that increasing CI reduces power consumption but
This is correct, because it will lead to much more infrequent use of the RADIO peripheral, which in turn saves power.
Ridhi said:i am sharing you the wireshark traces:
Thank you for providing the traces. I do not immediately see anything abnormal in the traces - the connections are terminated by either the peripheral or the central in either cases, with no error. Everything seems nominal.
This makes me suspect that it is a application layer logical issue that is causing this. What could cause either the peripheral or the central to terminate the connection? Are they both programmed to terminate the connection when certain conditions are met, such as no data being sent for a specific period, or similar?
Both instances have a period of empty packets leading up to the connection termination.
Best regards,
Karl
Hello again,
Please note that we do not provide support in the forum during the weekend.
Ridhi said:i found that increasing CI reduces power consumption but
This is correct, because it will lead to much more infrequent use of the RADIO peripheral, which in turn saves power.
Ridhi said:i am sharing you the wireshark traces:
Thank you for providing the traces. I do not immediately see anything abnormal in the traces - the connections are terminated by either the peripheral or the central in either cases, with no error. Everything seems nominal.
This makes me suspect that it is a application layer logical issue that is causing this. What could cause either the peripheral or the central to terminate the connection? Are they both programmed to terminate the connection when certain conditions are met, such as no data being sent for a specific period, or similar?
Both instances have a period of empty packets leading up to the connection termination.
Best regards,
Karl
i havent changed anything except the Connection Interval values, i am not getting why this is hampering
Please go through all the conditions that would trigger a link termination by your application, and see if any of these may be triggered unexpectedly as a result of the changed connection interval.
Best regards,
Karl