Skip to content

Rhiz3K/InkyCloud-F1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

F1 E-Ink Calendar

Free F1 race calendar for your E-Ink display! Use the public instance at f1.inkycloud.click β€” no setup required.

Try it Now Self-Host CodSpeed


🎯 Quick Start β€” Use It Now!

The easiest way to display the F1 calendar on your E-Ink device is to use our free public instance:

For zivyobraz.eu Users

  1. Register at zivyobraz.eu and add your ePaper device
  2. In device settings, select "URL" as content source
  3. Enter the calendar URL:
    https://f1.inkycloud.click/calendar.bmp?lang=cs
    
  4. Done! Your E-Ink display will show the next F1 race 🏁

URL Parameters

Parameter Options Example
lang cs (Czech), en (English) ?lang=en
tz Any IANA timezone ?tz=America/New_York
year Season year ?year=2026
round Race round number ?year=2026&round=5
display 1bit, spectra6 ?display=spectra6
weather true, false ?weather=false
weather_type race_day, current ?weather=true&weather_type=current

Examples:

https://f1.inkycloud.click/calendar.bmp?lang=cs
https://f1.inkycloud.click/calendar.bmp?lang=en&tz=America/New_York
https://f1.inkycloud.click/calendar.bmp?lang=en&year=2026&round=5
https://f1.inkycloud.click/calendar.bmp?lang=en&display=spectra6
https://f1.inkycloud.click/calendar.bmp?lang=en&weather=true&weather_type=current

πŸ“Ί Preview

F1 E-Ink Calendar Preview

LaskaKit 7.5" E-Ink display showing F1 race calendar in Czech


✨ Features

  • 800Γ—480 BMP output β€” 1bit monochrome and spectra6 6-color mode for calendar screen
  • Always Up-to-Date β€” Automatically updated after each Grand Prix
  • Multi-language β€” Czech and English support
  • Any Timezone β€” Convert race times to your local timezone
  • Optional Weather Overlay β€” Current or race-day weather on calendar screen
  • Historical Results β€” Previous year's podium for each circuit
  • Track Info β€” Circuit map, length, laps, and first GP year
  • Session Schedule β€” FP1, FP2, FP3, Qualifying, Sprint, Race times

Roadmap

Planned features for future releases:

  • Multi-color E-Ink displays β€” Support for red/black/white and other color variants (partial today: display=spectra6 for calendar)
  • Additional display sizes β€” Beyond 800Γ—480 (e.g., 4.2", 5.83", 12.48")
  • More languages β€” German, Spanish, Italian, and community translations
  • Championship standings β€” Driver and constructor standings view
  • Teams & Drivers screen β€” Full team grid with driver photos and points
  • Dark mode variant β€” Inverted colors for different display preferences
  • Extended weather integration β€” Richer race weekend forecast and details (basic weather overlay is already available)
  • Custom layouts β€” Multiple layout options to choose from

πŸ”Œ ESP32 Integration

Using zivyobraz.eu (Recommended)

Compatible with zivyobraz.eu β€” a service for managing ePaper displays with ESP32. See documentation.

Direct ESP32 Code

#include <HTTPClient.h>

HTTPClient http;
http.begin("https://f1.inkycloud.click/calendar.bmp?lang=cs");
int httpCode = http.GET();

if (httpCode == HTTP_CODE_OK) {
  // Display on E-Ink
  display.drawBitmap(http.getStream());
}

πŸ› οΈ API Endpoints

The public instance at f1.inkycloud.click provides these endpoints:

Endpoint Description
GET /calendar.bmp Calendar BMP with display, weather, and tz params
GET /teams.bmp Teams & drivers grid as 1-bit BMP image
GET / Landing page with screen type selection
GET /configure/{screen} Interactive preview page (calendar/teams)
GET /preview/{screen}.png Pre-generated preview PNG
GET /preview/configure/{screen}.png Pre-generated configure preview PNG
GET /api API documentation (JSON)
GET /api/docs Alias for /api
GET /api/races/{year} All races for a season (JSON)
GET /api/race/{year}/{round} Specific race details (JSON)
GET /api/teams/{year} Teams and drivers for a season (JSON)
GET /api/standings/leader Current championship leader (JSON)
GET /api/standings/leader/{year} Championship leader for a specific season (JSON)
GET /api/stats Request statistics
GET /api/stats/history Historical hourly request statistics
POST /api/perf-metrics Store frontend performance metrics (Core Web Vitals)
GET /api/perf-metrics Read aggregated frontend performance metrics
GET /health Health check

🏠 Self-Hosting

Want to run your own instance? We've got you covered!

Local development requires Python 3.14.3+.

πŸ‘‰ SELF-HOSTING.md β€” Complete guide for self-hosting including:

  • Quick start with Docker/Coolify
  • Project structure
  • Data updates & yearly maintenance
  • Configuration reference
  • Track images

Quick Docker Start

git clone https://github.com/Rhiz3K/InkyCloud-F1.git
cd InkyCloud-F1
docker build -t f1-eink-cal .
docker run -p 8000:8000 f1-eink-cal

Deployment Guides


πŸ“œ License

See LICENSE file for details.

🀝 Contributing

Contributions are welcome! See CONTRIBUTING.md for guidelines.

πŸ™ Credits

About

F1 E-Ink Calendar - Generate 800x480 1-bit BMP images for E-Ink displays

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors