@@ -133,9 +133,11 @@ AdafruitBluefruit::AdafruitBluefruit(void)
133
133
134
134
_conn_hdl = BLE_CONN_HANDLE_INVALID;
135
135
136
- _ppcp_min_conn = BLE_GAP_CONN_MIN_INTERVAL_DFLT;
137
- _ppcp_max_conn = BLE_GAP_CONN_MAX_INTERVAL_DFLT;
138
- _ppcp_conn_sup_timeout = BLE_GAP_CONN_SUPERVISION_TIMEOUT_MS / 10 ; // in 10ms unit
136
+ _ppcp.min_conn_interval = BLE_GAP_CONN_MIN_INTERVAL_DFLT;
137
+ _ppcp.max_conn_interval = BLE_GAP_CONN_MAX_INTERVAL_DFLT;
138
+ _ppcp.slave_latency = 0 ;
139
+ _ppcp.conn_sup_timeout = BLE_GAP_CONN_SUPERVISION_TIMEOUT_MS / 10 ; // in 10ms unit
140
+
139
141
_conn_interval = 0 ;
140
142
141
143
_connect_cb = NULL ;
@@ -417,15 +419,7 @@ err_t AdafruitBluefruit::begin(uint8_t prph_count, uint8_t central_count)
417
419
/* ------------- Configure GAP -------------*/
418
420
419
421
// Peripheral Preferred Connection Parameters
420
- ble_gap_conn_params_t gap_conn_params =
421
- {
422
- .min_conn_interval = _ppcp_min_conn, // in 1.25ms unit
423
- .max_conn_interval = _ppcp_max_conn, // in 1.25ms unit
424
- .slave_latency = BLE_GAP_CONN_SLAVE_LATENCY,
425
- .conn_sup_timeout = _ppcp_conn_sup_timeout, // in 10ms unit
426
- };
427
-
428
- VERIFY_STATUS ( sd_ble_gap_ppcp_set (&gap_conn_params) );
422
+ VERIFY_STATUS ( sd_ble_gap_ppcp_set (&_ppcp) );
429
423
430
424
// Default device name
431
425
ble_gap_conn_sec_mode_t sec_mode = BLE_SECMODE_OPEN;
@@ -566,18 +560,10 @@ bool AdafruitBluefruit::disconnect(void)
566
560
567
561
bool AdafruitBluefruit::setConnInterval (uint16_t min, uint16_t max)
568
562
{
569
- _ppcp_min_conn = min;
570
- _ppcp_max_conn = max;
563
+ _ppcp. min_conn_interval = min;
564
+ _ppcp. max_conn_interval = max;
571
565
572
- ble_gap_conn_params_t gap_conn_params =
573
- {
574
- .min_conn_interval = _ppcp_min_conn, // in 1.25ms unit
575
- .max_conn_interval = _ppcp_max_conn, // in 1.25ms unit
576
- .slave_latency = BLE_GAP_CONN_SLAVE_LATENCY,
577
- .conn_sup_timeout = _ppcp_conn_sup_timeout // in 10ms unit
578
- };
579
-
580
- VERIFY_STATUS ( sd_ble_gap_ppcp_set (&gap_conn_params), false );
566
+ VERIFY_STATUS ( sd_ble_gap_ppcp_set (&_ppcp), false );
581
567
582
568
return true ;
583
569
}
@@ -589,17 +575,9 @@ bool AdafruitBluefruit::setConnIntervalMS(uint16_t min_ms, uint16_t max_ms)
589
575
590
576
bool AdafruitBluefruit::setConnSupervisionTimeout (uint16_t timeout)
591
577
{
592
- _ppcp_conn_sup_timeout = timeout;
578
+ _ppcp. conn_sup_timeout = timeout;
593
579
594
- ble_gap_conn_params_t gap_conn_params =
595
- {
596
- .min_conn_interval = _ppcp_min_conn, // in 1.25ms unit
597
- .max_conn_interval = _ppcp_max_conn, // in 1.25ms unit
598
- .slave_latency = BLE_GAP_CONN_SLAVE_LATENCY,
599
- .conn_sup_timeout = _ppcp_conn_sup_timeout // in 10ms unit
600
- };
601
-
602
- VERIFY_STATUS ( sd_ble_gap_ppcp_set (&gap_conn_params), false );
580
+ VERIFY_STATUS ( sd_ble_gap_ppcp_set (&_ppcp), false );
603
581
604
582
return true ;
605
583
}
@@ -804,11 +782,9 @@ void AdafruitBluefruit::_ble_handler(ble_evt_t* evt)
804
782
_conn_hdl = evt->evt .gap_evt .conn_handle ;
805
783
_conn_interval = para->conn_params .min_conn_interval ;
806
784
807
- LOG_LV2 (" GAP" , " Conn Interval= %f" , _conn_interval*1 .25f );
808
-
809
785
// Connection interval set by Central is out of preferred range
810
786
// Try to negotiate with Central using our preferred values
811
- if ( !is_within (_ppcp_min_conn , para->conn_params .min_conn_interval , _ppcp_max_conn ) )
787
+ if ( !is_within (_ppcp. min_conn_interval , para->conn_params .min_conn_interval , _ppcp. max_conn_interval ) )
812
788
{
813
789
// Null, value is set by sd_ble_gap_ppcp_set will be used
814
790
VERIFY_STATUS ( sd_ble_gap_conn_param_update (_conn_hdl, NULL ), );
@@ -1013,12 +989,12 @@ void AdafruitBluefruit::printInfo(void)
1013
989
1014
990
// Connection Intervals
1015
991
Serial.printf (title_fmt, " Conn Intervals" );
1016
- Serial.printf (" min = %.2f ms, " , _ppcp_min_conn *1 .25f );
1017
- Serial.printf (" max = %.2f ms" , _ppcp_max_conn *1 .25f );
992
+ Serial.printf (" min = %.2f ms, " , _ppcp. min_conn_interval *1 .25f );
993
+ Serial.printf (" max = %.2f ms" , _ppcp. max_conn_interval *1 .25f );
1018
994
Serial.println ();
1019
995
1020
996
Serial.printf (title_fmt, " Conn Timeout" );
1021
- Serial.printf (" %.2f ms" , _ppcp_conn_sup_timeout *10 .0f );
997
+ Serial.printf (" %.2f ms" , _ppcp. conn_sup_timeout *10 .0f );
1022
998
Serial.println ();
1023
999
1024
1000
/* ------------- List the paried device -------------*/
0 commit comments