-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathLocalTime.ino
36 lines (30 loc) · 896 Bytes
/
LocalTime.ino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <SIM76xx.h>
#include <GPS.h>
#define TIMEZONE (7 * 60 * 60) // +7 Hour of Bangkok, Thailand
void setup() {
Serial.begin(115200);
Serial.println("Start !");
if (!GSM.begin()) {
Serial.println("GSM setup fail");
while(1) delay(100);
}
if (!GPS.begin()) {
Serial.println("GPS setup fail");
while(1) delay(100);
}
}
void loop() {
if (GPS.available()) {
time_t timestamp = GPS.getTime() + TIMEZONE;
struct tm *local_time = gmtime(×tamp);
local_time->tm_year += 1900;
local_time->tm_year += 543; // แปลง ค.ศ เป็น พ.ศ
Serial.printf("Local time: %d/%d/%d %02d:%02d:%02d\n", // format: d/m/Y hh:mm:ss
local_time->tm_mday, local_time->tm_mon, local_time->tm_year,
local_time->tm_hour, local_time->tm_min, local_time->tm_sec
);
} else {
Serial.println("GPS not fixed");
}
delay(1000);
}