Skip to content

Commit 63d86e2

Browse files
authored
parse local time in callback example
1 parent 8287305 commit 63d86e2

File tree

1 file changed

+42
-4
lines changed

1 file changed

+42
-4
lines changed

examples/mqtt_esp8266_callback/mqtt_esp8266_callback.ino

Lines changed: 42 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,47 @@ Adafruit_MQTT_Subscribe onoffbutton = Adafruit_MQTT_Subscribe(&mqtt, AIO_USERNAM
5151

5252
/*************************** Sketch Code ************************************/
5353

54-
void timecallback(uint32_t x) {
55-
Serial.print("Hey we're in a time callback, the epoch time is: ");
56-
Serial.println(x);
54+
int sec;
55+
int min;
56+
int hour;
57+
58+
int timeZone = -4; // utc-4 eastern daylight time (nyc)
59+
60+
void timecallback(uint32_t current) {
61+
62+
// adjust to local time zone
63+
current += (timeZone * 60 * 60);
64+
65+
// calculate current time
66+
sec = current % 60;
67+
current /= 60;
68+
min = current % 60;
69+
current /= 60;
70+
hour = current % 24;
71+
72+
// print hour
73+
if(hour == 0 || hour == 12)
74+
Serial.print("12");
75+
if(hour < 12)
76+
Serial.print(hour);
77+
else
78+
Serial.print(hour - 12);
79+
80+
// print mins
81+
Serial.print(":");
82+
if(min < 10) Serial.print("0");
83+
Serial.print(min);
84+
85+
// print seconds
86+
Serial.print(":");
87+
if(sec < 10) Serial.print("0");
88+
Serial.print(sec);
89+
90+
if(hour < 12)
91+
Serial.println(" am");
92+
else
93+
Serial.println(" pm");
94+
5795
}
5896

5997
void slidercallback(double x) {
@@ -144,4 +182,4 @@ void MQTT_connect() {
144182
}
145183
}
146184
Serial.println("MQTT Connected!");
147-
}
185+
}

0 commit comments

Comments
 (0)