From fa9ed5831761689f2642ee9f3e60ab1dfd044eee Mon Sep 17 00:00:00 2001 From: dwolav200 Date: Thu, 16 Apr 2026 12:32:33 -0400 Subject: [PATCH 1/3] RDKEMW-17187 : PTT audio buffering feature aborting voice session before mic key release --- src/ble/ctrlm_ble_network.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ble/ctrlm_ble_network.cpp b/src/ble/ctrlm_ble_network.cpp index 8965b71a..ba866426 100644 --- a/src/ble/ctrlm_ble_network.cpp +++ b/src/ble/ctrlm_ble_network.cpp @@ -2642,7 +2642,7 @@ void ctrlm_obj_network_ble_t::start_controller_audio_streaming(ctrlm_voice_start ctrlm_hal_ble_VoiceStreamEnd_t streamEnd = CTRLM_HAL_BLE_VOICE_STREAM_END_ON_KEY_UP; auto rcu = controllers_.at(id); - if (rcu->getPressAndHoldSupport()) { + if (!rcu->getPressAndHoldSupport()) { // if the voice session is "Press and Release" then end stream on audio duration instead of key up event streamEnd = CTRLM_HAL_BLE_VOICE_STREAM_END_ON_AUDIO_DURATION; } From 53cbd3333c7beac0d0b4b5d622de0939ae4a380d Mon Sep 17 00:00:00 2001 From: dwolav200 Date: Wed, 8 Apr 2026 10:39:24 -0400 Subject: [PATCH 2/3] RDKEMW-16763 : rf4ce init failure causes deadlock --- src/rf4ce/ctrlm_rf4ce_network.cpp | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/src/rf4ce/ctrlm_rf4ce_network.cpp b/src/rf4ce/ctrlm_rf4ce_network.cpp index 5fea2cd3..0e2fbac8 100644 --- a/src/rf4ce/ctrlm_rf4ce_network.cpp +++ b/src/rf4ce/ctrlm_rf4ce_network.cpp @@ -35,6 +35,7 @@ #include #include #include +#include #include #include "ctrlm.h" #include "ctrlm_log.h" @@ -411,8 +412,31 @@ ctrlm_hal_result_t ctrlm_obj_network_rf4ce_t::hal_init_request(GThread *ctrlm_ma // Block until initialization is complete or a timeout occurs XLOGD_INFO("Waiting for %s initialization...", name_get()); - sem_wait(&semaphore_); - sem_destroy(&semaphore_); + struct timespec timeout; + clock_gettime(CLOCK_REALTIME, &timeout); + timeout.tv_sec += 2; // this operation should complete in under 100 ms under normal circumstances + + int sem_result = -1; + do { + errno = 0; + sem_result = sem_timedwait(&semaphore_, &timeout); + if(sem_result == -1 && errno == EINTR) { + XLOGD_INFO("interrupted"); + } else { + break; + } + } while(1); + + if(sem_result == -1) { + if(errno == ETIMEDOUT) { + XLOGD_ERROR("Timeout waiting for %s initialization", name_get()); + } else { + XLOGD_ERROR("Error waiting for %s initialization: %s", name_get(), strerror(errno)); + } + init_result_ = CTRLM_HAL_RESULT_ERROR; + } else { + sem_destroy(&semaphore_); + } ready_ = (CTRLM_HAL_RESULT_SUCCESS == init_result_); From 929713d8d521a433a720ea4f15497484dd32ce2a Mon Sep 17 00:00:00 2001 From: klu339 Date: Fri, 17 Apr 2026 16:18:12 -0400 Subject: [PATCH 3/3] RDKEMW-17330,RDKEMW-17315: CHANGELOG update for ctrlm hotfix release 1.1.7.1 --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cd51fc43..c92c9ee8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,13 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +#### [1.1.7.1](https://github.com/rdkcentral/control/compare/1.1.7...1.1.7.1) + +> 17 April 2026 + +- RDKEMW-16763 : rf4ce init failure causes deadlock [`53cbd33`](https://github.com/rdkcentral/control/commit/53cbd3333c7beac0d0b4b5d622de0939ae4a380d) +- RDKEMW-17187 : PTT audio buffering feature aborting voice session before mic key release [`fa9ed58`](https://github.com/rdkcentral/control/commit/fa9ed5831761689f2642ee9f3e60ab1dfd044eee) + #### [1.1.7](https://github.com/rdkcentral/control/compare/1.1.6...1.1.7) > 4 December 2025