Hi,
I want to use nRF9160's internal RTC. I coded it but did not get the real time correctly.
SDK: 2.5.0
IDE: vs code
board: nRF9160dk
-----------------------------------------code--------------------------------------------------------- printk("\nnRF9160 RTC initialization started...\n"); dev_rtc = device_get_binding(DEVICE_DT_NAME(RTC0_NODE)); if (!dev_rtc) { printk("\n--ERROR: Binding RTC failed.--\n"); exit(1); } struct rtc_time rtc_time = { .tm_sec = 0, .tm_min = 0, .tm_hour = 12, .tm_mday = 1, .tm_mon = 0, .tm_year = 125, }; err = rtc_set_time(dev_rtc, &rtc_time); if (err!=0) { printk("\n--ERROR: set RTC time failed.--\n"); exit(1); } err = 1; struct rtc_time current_time; err = rtc_get_time(dev_rtc, ¤t_time); if (err!=0) { printk("\n--ERROR: get RTC time failed.--\n"); exit(1); } err = 1; printk("current time: %d-%02d-%02d %02d:%02d:%02d\n", current_time.tm_year+1900 , current_time.tm_mon+1, current_time.tm_mday, current_time.tm_hour, current_time.tm_min, current_time.tm_sec); printk("rtc_time: %d-%02d-%02d %02d:%02d:%02d\n", rtc_time.tm_year+1900 , rtc_time.tm_mon+1, rtc_time.tm_mday, rtc_time.tm_hour, rtc_time.tm_min, rtc_time.tm_sec); ----------------------------------------result print-------------------------------------------- nRF9160 RTC initialization started... current time: 111581-75469-536921472 00:68003:75468 rtc_time: 2025-01-01 12:00:00
Best regards,
Liza