Add Gitea OTA firmware update, dual-slot partition layout, and Gitea Actions release workflow

This commit is contained in:
2026-09-12 10:49:39 +02:00
parent 8ac465229c
commit 1d954287a2
82 changed files with 7611 additions and 395 deletions

View File

@@ -32,7 +32,6 @@ The **MTG RFID Companion** is a hand-held hardware utility for Magic: The Gather
| **MFRC522 RFID**| CS (SDA) / RST | GPIO 5 / GPIO 22 | Dedicated CS & Reset |
| **ST7789 Display**| CS / DC / RST | GPIO 15 / GPIO 2 / GPIO 4 | Dedicated CS, Data/Cmd & Reset |
| **Rotary Encoder**| CLK / DT / SW | GPIO 32 / GPIO 33 / GPIO 25 | Active low / Interrupt driven |
| **Indicators** | Neopixel (WS2812B) | GPIO 27 | RMT driver |
| **Audio** | Piezo Buzzer | GPIO 14 | LEDC PWM channel |
---
@@ -124,7 +123,7 @@ Build Commands
Monitor Logs: idf.py -p <PORT> monitor
Partition Table: Uses custom partitions.csv (Flash allocation: 2MB App, 1.5MB LittleFS data).
Partition Table: Uses custom partitions.csv (Flash allocation: 2x 1.56MB dual-OTA app slots, 832KB LittleFS data, 8KB otadata, 16KB NVS).
8. Guidance for AI Agents Generating Code
@@ -148,8 +147,8 @@ Build Commands
| `wifi_manager.c` | STA auto-connect + reconnect | event loop |
| `scryfall_client.c` | Scryfall HTTPS, cJSON cache, prefetch | net_task / 0 |
| `web_server.c` | SoftAP MTG-Companion 192.168.4.1 + pairing SPA | httpd task |
| `ota_manager.c` | Gitea release API, HTTPS OTA flash, rollback cancel | Core 0 |
| `encoder.c` | EC11 ISR decode + button | ISR |
| `led_manager.c` | WS2812B RMT | ISR + ui_task |
| `buzzer.c` | LEDC PWM tones | ui_task |
| `app_state.c` | STATE_* + life counter values | all |