diff --git a/src/Helpers/TimeHelper.cpp b/src/Helpers/TimeHelper.cpp
index e902bf54b5dfe05cb2e8867b1317b8ddfdf5d489..a6ba81b332020545468457fe53ab7cfe7b3570ee 100644
--- a/src/Helpers/TimeHelper.cpp
+++ b/src/Helpers/TimeHelper.cpp
@@ -29,11 +29,11 @@ uint32_t TimeHelper::mkUTCtime(struct TimeAndDate &TimeInfo) {
 }
 
 struct TimeAndDate TimeHelper::utcTime(uint32_t seconds) {
+	seconds -= 1546300800; // elapsed seconds between 1/1/2019 00:00:00 (UTC date)
 	struct TimeAndDate TimeInfo = {0};
-	// Unix epoch 1/1/1970 00:00:00
-	TimeInfo.year = 1970;
+	TimeInfo.year = 2019;
 	TimeInfo.month = 1;
-	TimeInfo.day = 1;
+	TimeInfo.day = 0;
 	TimeInfo.hour = 0;
 	TimeInfo.minute = 0;
 	TimeInfo.second = 0;
@@ -61,22 +61,17 @@ struct TimeAndDate TimeHelper::utcTime(uint32_t seconds) {
 	}
 
 	// calculate days
-	while (seconds >= SecondsPerDay) {
-		TimeInfo.day++;
-		seconds -= SecondsPerDay;
-	}
+	TimeInfo.day = seconds/SecondsPerDay;
+	seconds -= TimeInfo.day * SecondsPerDay;
+	TimeInfo.day++; // add 1 day because we start count from 1 January(and not 0 January!)
 
 	// calculate hours
-	while (seconds >= SecondsPerHour) {
-		TimeInfo.hour++;
-		seconds -= SecondsPerHour;
-	}
+	TimeInfo.hour = seconds/SecondsPerHour;
+	seconds -= TimeInfo.hour * SecondsPerHour;
 
 	// calculate minutes
-	while (seconds >= SecondsPerMinute) {
-		TimeInfo.minute++;
-		seconds -= SecondsPerMinute;
-	}
+	TimeInfo.minute = seconds/SecondsPerMinute;
+	seconds -= TimeInfo.minute * SecondsPerMinute;
 
 	// calculate seconds
 	TimeInfo.second = seconds;