Skip to content

Releases: XE1E/Clockwise-XE1E

Firmware 2.0.0-beta.2 (20260702)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 05:20

Firmware Build

  • Version: 2.0.0-beta.2
  • Commit: c1d25a2
  • Date: 20260702
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

fix(editor): cambiar default presion a mb con checkbox para hPa

  • Default ahora es mb (milibar) en vez de hPa
  • Checkbox "Usar hPa" para cambiar a hectopascal
  • Actualizar firmware y documentacion

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.2 (20260702)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 05:07

Firmware Build

  • Version: 2.0.0-beta.2
  • Commit: badf285
  • Date: 20260702
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

feat(editor): documentar formatos DateTime y agregar presUnit al sensor

  • Documentar formatos faltantes en tabla DateTime: M (mes corto),
    y (año corto), j, D, l, F con ejemplos
  • Agregar seccion Sensor (BME280) al manual con propiedades y ejemplos
  • Agregar selector hPa/mb para unidad de presion en editor
  • Soportar presUnit en firmware para mostrar "hPa" o "mb"

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.2 (20260612)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Jun 06:11

Firmware Build

  • Version: 2.0.0-beta.2
  • Commit: 45dab61
  • Date: 20260612
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

chore(version): 2.0.0-beta.1 -> 2.0.0-beta.2

Incluye el sensor ambiental BME280 (T/H/P). CW_FW_VERSION en ambos
entornos + ejemplo en la guia de migracion.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.1 (20260612)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Jun 05:22

Firmware Build

  • Version: 2.0.0-beta.1
  • Commit: 855ee24
  • Date: 20260612
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

feat(webui): config del sensor BME280 + pinout en manual (fase 5)

  • WebUI.h: tarjeta "Sensor Ambiental (BME280)" en pestana Pantalla
    (habilitar, SDA/SCL con hint, direccion 0=auto, unidad C/F, boton
    "Leer sensor" via /api/sensor); saveDisplay guarda los campos; carga
    de settings poblada
  • WebUI_gz.h regenerado con tools/gzip_webui.py
  • MANUAL_USUARIO.md: subseccion Sensor Ambiental + seccion Conexiones de
    Hardware (Pinout) con tablas HUB75/LDR/BME280 por placa

Compila en esp32dev y esp32s3.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.1 (20260612)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Jun 05:02

Firmware Build

  • Version: 2.0.0-beta.1
  • Commit: 3dc22e8
  • Date: 20260612
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

feat(fonts): glifo de grado en 0x7F para medium/big/tiny5 (fase 4)

El grado va en 0x7F (extender rango +1) en vez de 0xB0, que obligaria a ~50
glifos de relleno por la contiguidad de Adafruit GFX. Firmware (getSensorText)
y editor (getDisplayText) emiten el byte 0x7F.

  • scripts/add-degree-glyph.js: append-only, idempotente, auto-dimensiona el
    glifo desde el digito '0'; parchea .h del firmware y pixel-fonts.js
  • Aplicado a medium (minute7pt7b), big (hour8pt7b), tiny5 en ambos lados
  • Compila en esp32dev y esp32s3

Pendientes (casos especiales): picopixel (formato fontconvert), tomthumb
(#if en arrays), square (editor solo 0x3A), 8x13/haxor-12 (no en editor).

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.1 (20260612)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Jun 01:22

Firmware Build

  • Version: 2.0.0-beta.1
  • Commit: 25d78cc
  • Date: 20260612
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

feat(sensor): render type:"sensor" en caratulas (fase 2)

  • JsonClockface::getSensorText(): formatea source temp/hum/pres con
    decimals/unit, conversion C/F, grado como byte 0xB0, "--" si no hay sensor
  • JsonClockface::refreshSensors(): itera setup+loop por type:"sensor",
    render cada 1s via renderText; llamado en clockfaceSetup() y update()
  • iaq devuelve "--" (reservado para futuro BME680+BSEC)

Compila en ambos entornos. El glifo del grado se agrega en fase 4 (fuentes).

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.1 (20260612)

Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Jun 00:53

Firmware Build

  • Version: 2.0.0-beta.1
  • Commit: f3872bd
  • Date: 20260612
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

feat(sensor): BME280 ambiental (T/H/P) - firmware base (fase 1)

Mismo codigo para ESP32dev y ESP32-S3; solo cambian los pines I2C default.

  • CWSensor.h/.cpp: singleton, autodeteccion 0x76/0x77, modo forzado (evita
    autocalentamiento), polling 30s, getIaq() stub para futuro BME680+BSEC
  • platformio.ini: Adafruit BME280 + Unified Sensor; CW_SENSOR_SDA/SCL_DEFAULT
    por placa (21/22 dev, 10/9 s3; el GPIO8 lo usa el display en S3)
  • CWPreferences: sensorEnabled/Sda/Scl/Addr, tempFahrenheit (NVS)
  • main.cpp: init en setup() (si habilitado) + update() en loop()
  • CWWebServer: GET /api/sensor + campos en /api/settings y /api/set

Deshabilitado por defecto; se activa por web UI (cambios requieren reinicio).
Compila en ambos entornos. Falta prueba en hardware real.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 2.0.0-beta.1

Firmware 2.0.0-beta.1 Pre-release
Pre-release

Choose a tag to compare

@XE1E XE1E released this 10 Jun 23:43

Firmware 2.0.0-beta.1

Release semántico (legible) de esta versión. Equivale al pre-release fechado v20260610.2319.

Placas soportadas

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1, N16R8)

Cambios en esta versión

  • WebUI: el campo "Pin LDR" muestra el default según la placa (GPIO 35 en ESP32, GPIO 1 en ESP32-S3) con hint dinámico.
  • Docs: manual de configuración cubre ambas placas; doc de migración S3 con LDR en GPIO 1 (ADC1) y esquema del divisor de tensión.
  • Web-flasher: imagen del ESP32-S3 reparada (ahora merged/factory que arranca correctamente).
  • Limpieza: eliminado WebUI_minimal.h (código muerto).

Instalación

  1. Web Flasher (recomendado): https://xe1e.github.io/Clockwise-XE1E/web-flasher/
  2. esptool (manual):
    • ESP32 (app): flashear firmware-esp32-2.0.0-beta.1.bin en offset 0x10000 (con bootloader/particiones/boot_app0).
    • ESP32-S3: usar firmware-esp32s3-2.0.0-beta.1-merged-factory.bin en offset 0x0 (imagen completa autocontenida), o la app firmware-esp32s3-2.0.0-beta.1.bin en 0x10000.

Firmware 20260525

Choose a tag to compare

@github-actions github-actions released this 25 May 06:02

Firmware Build

  • Commit: aa09454
  • Date: 20260525
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

fix: remove M5Stack.h dependency for ESP32-S3 compatibility

Font headers had conditional includes that broke ESP32-S3 builds.
Simplified to always use gfxfont.h which is the correct dependency.

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash

Firmware 20260523

Choose a tag to compare

@github-actions github-actions released this 23 May 00:54

Firmware Build

  • Commit: 56de949
  • Date: 20260523
  • Branch: main

Supported Boards

  • ESP32 (esp32doit-devkit-v1)
  • ESP32-S3 (esp32-s3-devkitc-1)

Changes

@
fix: change maze color every 30 resets instead of every reset

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com
@

Installation

  1. Download the firmware for your board
  2. Use Web Flasher or esptool to flash