Get next race be sorting by end of meeting.

This commit is contained in:
bissen21 committed 2026-11-08 18:54:59 -06:00
1 parent c0e71374eb
commit b67432ed5d
2 files changed
+8 -9

No files matched your search

+8 -6
View File
@@ -82,18 +82,18 @@ static int get_future_meetings_url(char* target, size_t target_size) {
time_t now = time(nullptr); time_t now = time(nullptr);
struct tm timeinfo, futureTime; struct tm timeinfo, futureTime;
localtime_r(&now, &timeinfo); gmtime_r(&now, &timeinfo);
futureTime = timeinfo; futureTime = timeinfo;
futureTime.tm_mon += 2; futureTime.tm_mon += 2;
mktime(&futureTime); mktime(&futureTime);
char date_buffer[12]; char date_buffer[28];
char fdate_buffer[12]; char fdate_buffer[28];
strftime(date_buffer, sizeof(date_buffer), "%Y-%m-%d", &timeinfo); strftime(date_buffer, sizeof(date_buffer), "%Y-%m-%dT%H:%M:%S+00:00", &timeinfo);
strftime(fdate_buffer, sizeof(fdate_buffer), "%Y-%m-%d", &futureTime); strftime(fdate_buffer, sizeof(fdate_buffer), "%Y-%m-%dT%H:%M:%S+00:00", &futureTime);
snprintf(target, target_size, "https://api.openf1.org/v1/meetings?date_end>=%s&date_end<=%s", snprintf(target, target_size, "https://api.openf1.org/v1/meetings?date_end>=%s&date_end<=%s",
date_buffer, date_buffer,
@@ -118,6 +118,8 @@ int parse_session_json(JsonArray sessions, session_info_t* target, const Semapho
JsonObject nextRaceJson = sessions[0]; JsonObject nextRaceJson = sessions[0];
session_info_t localData; session_info_t localData;
strptime();
const char* sessionName = nextRaceJson[F("session_name")]; const char* sessionName = nextRaceJson[F("session_name")];
const char* dateStart = nextRaceJson[F("date_start")]; const char* dateStart = nextRaceJson[F("date_start")];
const char* circuitName = nextRaceJson[F("circuit_short_name")]; const char* circuitName = nextRaceJson[F("circuit_short_name")];
@@ -211,7 +213,7 @@ void get_next_race(void *pvParameters) {
http.setTimeout(10000); http.setTimeout(10000);
http.setCACert(OPENF1_ROOT_CA); http.setCACert(OPENF1_ROOT_CA);
char query_url[103]; char query_url[150];
get_future_meetings_url(query_url, sizeof(query_url)); get_future_meetings_url(query_url, sizeof(query_url));
const bool requestReady = http.begin(query_url); const bool requestReady = http.begin(query_url);
-3
View File
@@ -116,12 +116,9 @@ void display_loop(void *pvParameters) {
Paint_Clear(WHITE); Paint_Clear(WHITE);
if (local_data.session_info.date_start[0] != 0) { if (local_data.session_info.date_start[0] != 0) {
Serial.print("");
Serial.printf("date start: %s\n", local_data.session_info.date_start);
Paint_DrawString_EN(10, 22, local_data.session_info.date_start, &Font16, WHITE, BLACK); Paint_DrawString_EN(10, 22, local_data.session_info.date_start, &Font16, WHITE, BLACK);
} }
Paint_DrawString_EN(10, 0, counterStr, &Font16, WHITE, BLACK); Paint_DrawString_EN(10, 0, counterStr, &Font16, WHITE, BLACK);
EPD_4IN2_V2_PartialDisplay( EPD_4IN2_V2_PartialDisplay(