sada45 commented on issue #1291: URL: https://github.com/apache/mynewt-nimble/issues/1291#issuecomment-1181833269
I test the connection subrating but find the `Continuation Number` does not work. I think I find the reason. In the function `ble_ll_conn_next_event()` in `ble_ll_conn.c`, Line 2275. The central and peripheral decide wether they should turn on radio on the next connection or the next subrate base event. Accroding to the Bluetooth spec. If the next connection event is not a base event and the connection event number since we last received a PDU is less than `Continuation Number`, nodes will turn on their radio in the next connection even, rather than the next base event. So, to my understanding, the correct code should be: ```C if ((connsm->cont_num > 0) && /* (connsm->event_cntr + 1 == connsm->subrate_base_event + */ (connsm->event_cntr + 1 != connsm->subrate_base_event + connsm->subrate_factor) && (connsm->event_cntr - connsm->last_pdu_event < connsm->cont_num)) { next_is_subrated = 0; } ``` Looking forward to your reply :-) @andrzej-kaczmarek -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@mynewt.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org