вероятность того, что модуль будет вынужден перезагрузиться.
При использовании модуля 780EPM, который имеет автоматическую синхронизацию времени через 4G, но не имеет её через Ethernet, требуется выполнить синхронизацию времени через NTP. В документации указано, что для этого достаточно использовать socket.sntp()
. Однако, так как у меня есть два способа связи — 4G и Ethernet, мне нужно определить, какой из адаптеров подключен к сети, и использовать его для запроса синхронизации времени NTP. При этом мне не нужно указывать адрес NTP-сервера. Поэтому код выглядит так: socket.sntp(nil, Get_Net())
, где Get_Net()
— это функция, которая возвращает номер подключенного адаптера. Вместо пустой строки ''
для адреса сервера я использовал nil
, чтобы избежать ошибочного распознавания какого-либо пользовательского сервера. Однако сегодня утром, когда я не подключал USB-кабель для загрузки, модуль зависал и перезагружался. После постепенного отключения кода я обнаружил, что проблема возникает, когда адрес сервера задан как nil
и USB-кабель не подключен.
socket.sntp(nil, 4)
''
проблема исчезает.
Логи отсутствуют, так как проблема возникает только при отключении USB-кабеля, а при подключении её нет, поэтому логи не могут быть собраны.
V2004