summaryrefslogtreecommitdiff
path: root/src/components/ble/CurrentTimeClient.cpp
diff options
context:
space:
mode:
authoruli <cybuzuma@vnxs.de>2022-05-28 14:33:04 +0200
committerJF <JF002@users.noreply.github.com>2022-11-11 21:44:00 +0100
commit38092fcb40695098702163ab64a06787b2dc2499 (patch)
tree1bb502aa5032ad9793c48a2ff6d227c5330f5e0f /src/components/ble/CurrentTimeClient.cpp
parent840aab7f90944c6c91f98bfb6069293fe2f273dd (diff)
add CTS local time characteristic and use it to provide UTC in DateTimeController
Diffstat (limited to 'src/components/ble/CurrentTimeClient.cpp')
-rw-r--r--src/components/ble/CurrentTimeClient.cpp20
1 files changed, 5 insertions, 15 deletions
diff --git a/src/components/ble/CurrentTimeClient.cpp b/src/components/ble/CurrentTimeClient.cpp
index 53e98cb6..96134526 100644
--- a/src/components/ble/CurrentTimeClient.cpp
+++ b/src/components/ble/CurrentTimeClient.cpp
@@ -85,21 +85,11 @@ int CurrentTimeClient::OnCurrentTimeReadResult(uint16_t conn_handle, const ble_g
// TODO check that attribute->handle equals the handle discovered in OnCharacteristicDiscoveryEvent
CtsData result;
os_mbuf_copydata(attribute->om, 0, sizeof(CtsData), &result);
- NRF_LOG_INFO("Received data: %d-%d-%d %d:%d:%d",
- result.year,
- result.month,
- result.dayofmonth,
- result.hour,
- result.minute,
- result.second);
- dateTimeController.SetTime(result.year,
- result.month,
- result.dayofmonth,
- 0,
- result.hour,
- result.minute,
- result.second,
- nrf_rtc_counter_get(portNRF_RTC_REG));
+ uint16_t year = ((uint16_t) result.year_MSO << 8) + result.year_LSO;
+
+ NRF_LOG_INFO("Received data: %d-%d-%d %d:%d:%d", year, result.month, result.dayofmonth, result.hour, result.minute, result.second);
+ dateTimeController
+ .SetTime(year, result.month, result.dayofmonth, 0, result.hour, result.minute, result.second, nrf_rtc_counter_get(portNRF_RTC_REG));
} else {
NRF_LOG_INFO("Error retrieving current time: %d", error->status);
}