HL7800 Time zone information incorrect when entering/exiting Daylight Savings Time

Current firmware versions: HL7800.4.6.9.4 and HL7800.4.7.1.0

After resetting, the AT+CCLK? command returns the proper time and time zone. However, when entering or exiting daylight savings time, the offset doesn’t change on all devices (fails on 300 per 1000). The AT+CCLK? command is issued once per hour. Many days pass and the offset doesn’t change.

If the HL7800 is reset, then the time zone is valid.

Does AT+CCLK? get the time from the network or an RTC on the HL7800 (as the command reference seems to indicate)? If it isn’t from the network, other that 700 devices resetting, why would some devices have the correct time zone?

If AT+CCLK? doesn’t query the network, does AT+CTZR use the network? Is that what should be used to get the time zone? Will this work anywhere in North America?

Other than resetting, are there any other workarounds to this issue? Since some devices have poor network connections, not using SNTP is preferred.

i believe +CTZR is for the network time

Did you try the command +CTZU?

Yes. When +CTZU is issued, it returns 1.

I remember the NITZ is sent to module once it registers to network

BTW, did you receive any URC +CTZE when setting AT+CTZR to 2 for those 1000 devices?

I have not tried that. Please answer my questions so that I know what approach to take and have explanations for the current behavior.

In case it wasn’t clear, I’ll repeat them.

  1. Does AT+CCLK? query the network or an RTC in the HL7800?
  2. What explanation is there for the offset being valid on some devices and not others?
  3. Can I use AT+CTZR to get the offset?
  4. Will CTZR work everywhere in North America?

New question:

  1. Why use AT+CTZR=2 vs AT+CTZR=1?

This only happens twice a year, so I don’t really want to ‘try things out’ and wait for the next DST event.

  1. you can do a simple test to verify. For example, from your description, the AT+CCLK? is first updated by network NITZ. After that you can remove the SIM or AT+CFUN=0, so module will detach from network. Then you can query AT+CCLK? to get your answer.

2,3 you need to check the AT log history and see whether you receive any URC +CTZE when setting AT+CTZR to 2 for those 1000 devices.
If only OK devices receive the URC, then that means this is the main factor.

  1. no idea on this as i never tried those network.

AT command user guide says you will get the time:

Thanks for the steps to get the answer for #1.