Initial commit: Minecraft Orb project

ESP32-C3 firmware for interactive treasure hunt device with RFID,
OLED display, LED effects, buzzer, and touch input.
Includes 3D printable STL files for the enclosure.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Giorgio Gilestro 2026-04-03 18:43:15 +01:00
commit 28c36c51f6
36 changed files with 2733 additions and 0 deletions

36
firmware/include/config.h Normal file
View file

@ -0,0 +1,36 @@
/**
* @file config.h
* @brief Configuration constants for Minecraft Orb
*/
#ifndef CONFIG_H
#define CONFIG_H
#include "secrets.h" // WIFI_SSID, WIFI_PASSWORD
// =============================================================================
// WiFi Configuration
// =============================================================================
#define WIFI_TIMEOUT_MS 10000 // 10 seconds connection timeout
// =============================================================================
// Card Database Configuration
// =============================================================================
#define MAX_CARDS 15 // Maximum number of stored cards
#define CARD_NAME_LEN 32 // Max length of quest name
#define CARD_CLUE_LEN 128 // Max length of clue text
#define MAX_UID_LEN 7 // Max RFID UID length (4 or 7 bytes)
// =============================================================================
// NVS Storage Keys
// =============================================================================
#define NVS_NAMESPACE "orb_cards"
#define NVS_CARD_COUNT "card_count"
// =============================================================================
// Power Management (Battery Operation)
// =============================================================================
#define DISPLAY_TIMEOUT_MS 180000 // 3 minutes: turn off display
#define SLEEP_TIMEOUT_MS 600000 // 10 minutes: enter deep sleep
#endif // CONFIG_H