summaryrefslogtreecommitdiff
path: root/src/Components/Ble/PinetimeService.cpp
diff options
context:
space:
mode:
authorAdam Pigg <adam@piggz.co.uk>2020-05-04 20:43:51 (GMT)
committerAdam Pigg <adam@piggz.co.uk>2020-05-04 20:43:51 (GMT)
commit9935fb193c7f8c109d8fc4de6e030d4146f35f5f (patch)
treecb773cdadb31c87866ec88b8287bd30df4f52f59 /src/Components/Ble/PinetimeService.cpp
parent5df4c1016ae9e0ca65061c12117691301ca93766 (diff)
Move PinetimeService to CurrentTimeService witha view to implement CTS
for time handling
Diffstat (limited to 'src/Components/Ble/PinetimeService.cpp')
-rw-r--r--src/Components/Ble/PinetimeService.cpp68
1 files changed, 0 insertions, 68 deletions
diff --git a/src/Components/Ble/PinetimeService.cpp b/src/Components/Ble/PinetimeService.cpp
deleted file mode 100644
index e18d78a..0000000
--- a/src/Components/Ble/PinetimeService.cpp
+++ /dev/null
@@ -1,68 +0,0 @@
-#include "PinetimeService.h"
-#include <hal/nrf_rtc.h>
-
-using namespace Pinetime::Controllers;
-
-constexpr ble_uuid16_t PinetimeService::pinetimeUuid;
-constexpr ble_uuid16_t PinetimeService::timeUuid;
-
-
-int PinetimeTimeCallback(uint16_t conn_handle, uint16_t attr_handle, struct ble_gatt_access_ctxt *ctxt, void *arg) {
- auto pinetimeService = static_cast<PinetimeService*>(arg);
- return pinetimeService->OnTimeAccessed(conn_handle, attr_handle, ctxt);
-}
-
-void PinetimeService::Init() {
- ble_gatts_count_cfg(serviceDefinition);
- ble_gatts_add_svcs(serviceDefinition);
-}
-
-
-int PinetimeService::OnTimeAccessed(uint16_t conn_handle, uint16_t attr_handle,
- struct ble_gatt_access_ctxt *ctxt) {
-
- NRF_LOG_INFO("Setting time...");
-
- if (ctxt->op == BLE_GATT_ACCESS_OP_WRITE_CHR) {
- CtsData result;
- os_mbuf_copydata(ctxt->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);
-
- m_dateTimeController.SetTime(result.year, result.month, result.dayofmonth,
- 0, result.hour, result.minute, result.second, nrf_rtc_counter_get(portNRF_RTC_REG));
-
- }
- return 0;
-}
-
-PinetimeService::PinetimeService(DateTime &dateTimeController) : m_dateTimeController{dateTimeController},
- characteristicDefinition{
- {
- .uuid = (ble_uuid_t *) &timeUuid,
- .access_cb = PinetimeTimeCallback,
-
- .arg = this,
- .flags = BLE_GATT_CHR_F_WRITE
- },
- {
- 0
- }
- },
- serviceDefinition{
- {
- /* Device Information Service */
- .type = BLE_GATT_SVC_TYPE_PRIMARY,
- .uuid = (ble_uuid_t *) &pinetimeUuid,
- .characteristics = characteristicDefinition
- },
- {
- 0
- },
- }
- {
-
-}
-