Documentación de la API
Genera imágenes BMP de 800×480 para pantallas E-Ink que muestran horarios de carreras de F1 en modo 1bit, B/W/R o Spectra 6.
/calendar.bmp
Genera un calendario de F1 como imagen BMP (800×480) para pantallas E-Ink 1bit, 4-bit B/W/R, 4-bit B/W/R/Y y Spectra 6.
Parámetros
| Parameter | Tipo | Descripción |
|---|---|---|
| lang | string |
Código de idioma para el texto del calendario
Valores: cs, de, en, es, fr, it, ja, nl, pl, pt-BR, sk, tr, zh-CN (predeterminado:
en)
|
| year | integer |
Año de temporada para una carrera concreta
opcional — p. ej. 2026
|
| round | integer |
Número de ronda (1-24) para una carrera concreta
opcional — p. ej. 5
|
| tz | string |
Zona horaria para los horarios (formato IANA)
opcional — p. ej. America/New_York,
Europe/Prague
|
| display | string |
Modo de salida para pantallas 1bit, B/W/R, B/W/R/Y o Spectra 6
Valores: 1bit,
bwr,
bwry,
spectra6 (predeterminado:
1bit)
|
| weather | boolean |
Activa o desactiva la capa del tiempo
Valores: true,
false
|
| weather_type | string |
Qué variante de datos meteorológicos renderizar
Valores: race_day,
current
|
Respuesta
image/bmp
800×480
1bit / 4-bit B/W/R / 4-bit B/W/R/Y / Spectra 6
1 hour
Ejemplos de código
# Download next race calendar
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp"
# With Czech language and timezone
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp?lang=cs&tz=Europe/Prague"
# Specific race (year and round)
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp?year=2025&round=5"
# B/W/R/Y output for four-color E-Ink
curl -o calendar.bmp "https://f1.rhiz3k.freeddns.org/calendar.bmp?display=bwry"
import httpx
async def get_f1_calendar(lang: str = "en", tz: str = "Europe/Prague"):
"""Download F1 calendar as BMP image."""
async with httpx.AsyncClient() as client:
response = await client.get(
"https://f1.rhiz3k.freeddns.org/calendar.bmp",
params={"lang": lang, "tz": tz}
)
response.raise_for_status()
with open("calendar.bmp", "wb") as f:
f.write(response.content)
print("Calendar saved as calendar.bmp")
# Usage
import asyncio
asyncio.run(get_f1_calendar(lang="cs"))
// Fetch and display calendar
async function loadF1Calendar(lang = 'en', tz = 'Europe/Prague') {
const url = new URL('https://f1.rhiz3k.freeddns.org/calendar.bmp');
url.searchParams.set('lang', lang);
url.searchParams.set('tz', tz);
const response = await fetch(url);
const blob = await response.blob();
// Display in img element
const img = document.getElementById('calendar');
img.src = URL.createObjectURL(blob);
}
// Download as file
async function downloadCalendar() {
const response = await fetch('/calendar.bmp?lang=cs');
const blob = await response.blob();
const link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.download = 'f1-calendar.bmp';
link.click();
}
Uso en pantalla E-Ink
Obtén /calendar.bmp y muéstralo directamente en tu pantalla E-Ink. Intervalo de actualización recomendado: cada 1 a 6 horas. Compatible con cualquier pantalla E-Ink de 800×480 (por ejemplo, Waveshare 7.5", LaskaKit).
Para LaskaKit / zivyobraz.eu:
- 1 En zivyobraz.eu selecciona como fuente de contenido: URL con imagen
-
2
Pega la URL:
https://f1.rhiz3k.freeddns.org/calendar.bmp?lang=cs&tz=Europe/Prague - 3 Configura el intervalo de actualización entre 1 y 6 horas
/teams.bmp
Genera una imagen BMP con todos los equipos de F1, sus pilotos, fotos y puntos del campeonato en modos de salida 1bit, B/W/R, B/W/R/Y o Spectra 6.
Parámetros
| Parameter | Tipo | Descripción |
|---|---|---|
| lang | string |
Código de idioma para el texto del calendario
Valores: cs, de, en, es, fr, it, ja, nl, pl, pt-BR, sk, tr, zh-CN (predeterminado:
en)
|
| year | integer |
Año de temporada para los datos de equipos
opcional — p. ej. 2026
|
| display | string |
Modo de salida de la pantalla
Valores: 1bit,
bwr,
bwry,
spectra6 (predeterminado:
1bit)
|
Respuesta
image/bmp
800×480
1-bit / 4-bit / Spectra 6
no-store
Otros endpoints
/api/teams/{year}
Obtener todos los equipos con pilotos y puntos de una temporada (JSON)
/api/standings/leader
Obtener los líderes actuales del campeonato (piloto y constructor)
/api/races/{year}
Lista de todas las carreras de una temporada
/api/race/{year}/{round}
Información detallada de una carrera, incluido el horario
/api/stats
Estadísticas de peticiones (última hora y 24 h)
/health
Comprobación del estado del servicio