I am using Raspberry Pi 4 as a gateway to my esp8266 devices. I have connected ethernet to Raspberry Pi for internet connection. It works fine. I want to generate NTP time in my ESP8266 device.
When I connect the devices to direct Wi-Fi they are getting right time. But when I connect them to Raspberry Pi gateway they are getting date 01.01.1970 .
How to get current date from Raspberry Pi gateway?
-
Is the RasPi connected to the internet? Does esp8266 have wired and WiFi interfaces?Ingo– Ingo2020年09月08日 17:52:08 +00:00Commented Sep 8, 2020 at 17:52
1 Answer 1
Recent Raspberry Pi OS includes systemd-timesyncd
as the NTP client. Unfortunately for you, systemd-timesyncd
does not implement the server functionality, so it cannot provide network time to clients downstream.
You'll have to set up a full-featured NTP server such as ntp
, openntpd
or chrony
(you may disable systemd-timesyncd
, but you don't have to: it is polite enough not to interfere). Or, if you have any of these set up already, you need to configure them to act as a server.
-
1I think your answer is correct, which is to say I interpret the question as you do. However, I do suggest one correction: There is no need to disable
systemd-timesyncd
- it politely "steps aside" if another NTP server is running. See this old-ish answer, or reviewsystemctl cat systemd-timesyncd
Seamus– Seamus2020年09月09日 21:47:24 +00:00Commented Sep 9, 2020 at 21:47