Skip to content

Releases: apadevices/APALCDGUI

1.4.0

05 Jun 06:22

Choose a tag to compare

Added

  • setStatusIndicator(char c) / clearStatusIndicator() — show [c] in the alert corner (cols 17–19 row 2) when no passive alert is pending; alert always takes priority ([!] > [*] > [i] > status indicator > blank); 1 byte SRAM
  • getTimerTotalMinutes() — sum of all enabled timer slot durations in minutes; primary use: APAPUMP daily target bridge

Changed

  • Platform verification table updated to v1.4.0 numbers (02_8screens, default 4-screen limit)

v1.3.0

02 Jun 07:26

Choose a tag to compare

What's new

Scrollable timer list — up to 6 slots

  • \APA_LCD_MAX_TIMERS\ now supports up to 6 (default stays 3)
  • LCD shows 3 slots at a time; KB2 rotation scrolls the list automatically
  • ↑ / ↓ indicators at col 19 of rows 0–1 show when more slots exist above or below
  • Zero SRAM cost — \�iewTop\ packed into the existing _timerBits\ byte
  • EEPROM layout scales automatically with \APA_LCD_MAX_TIMERS\

License

  • Changed from MIT to dual license
  • Free for personal, educational, and hobby use
  • Commercial use requires a separate written license — contact kecup@vazac.eu

Other

  • Logo added to README (centered)
  • README version badge corrected

v1.2.3

02 Jun 06:42

Choose a tag to compare

  • Added logo to README
  • Fixed README version badge URL
  • ST_FLASH_ACTION: ACTION fields flash ► for 300 ms on press (click confirmation)
  • Cursor convention: > = pointer, ► = click confirmed, consistent across all fields
  • Brightness mode now activates at KB1 800 ms long-press threshold (not hold+rotate)
  • Row 3 cleared before home callback to prevent stale menu/timer/brightness content
  • KB1 cancel in timer edit correctly restores both start and end slot
  • Various example fixes (KB1/KB2 labels, showMessage feedback, build_flags)

v1.1.6 — Arduino Library Manager ready

31 May 13:46

Choose a tag to compare

What's new in v1.1.6

Added

  • \keywords.txt\ — IDE keyword colouring for all public methods, types, and constants

Fixed

  • \library.properties\ \sentence\ and \paragraph\ trailing periods removed — Arduino Library Manager appends its own period; double period was appearing in the registry

v1.1.5 — Multi-home example

31 May 13:38

Choose a tag to compare

What's new in v1.1.5

Added

  • \�xamples/05_multi_home/\ — three-page scrollable home screen example; demonstrates \�ddHomeScreen(), the automatic page indicator, and the column 17–19 layout constraint across all 6 field types and 8 screens
  • Verified zero errors, zero warnings on all 5 platforms (Mega 2560, Uno, ESP32, ESP8266 D1 Mini, STM32 Bluepill)

v1.1.4 — Multiple home screen pages

31 May 13:21

Choose a tag to compare

What's new in v1.1.4

Added

  • \�ddHomeScreen(fn)\ — register up to 4 home screen pages; KB2 rotation cycles between them on the home screen
  • Automatic page indicator drawn at row 3 cols 17–19 (\1/3, \2/3, …) when more than one page is registered — no user code required
  • \setHomeCallback(fn)\ unchanged as alias for \�ddHomeScreen()\ — existing sketches compile without changes
  • \currentHomePage()\ / \homePageCount()\ query getters
  • \APA_LCD_MAX_HOME_SCREENS\ compile-time capacity define (default 4)
  • Author attribution added to README.md and docs/API.md

APALCDGUI v1.1.3

31 May 12:51

Choose a tag to compare

What's new in v1.1.3

Fixed

  • Active alert queue: postActiveAlert() now resets _alertHead when the queue was previously empty — prevents stale head from rendering the wrong (freed) slot after all alerts are acknowledged
  • showMessage() — added const __FlashStringHelper* overload; internal "Settings saved!" message now uses F() — saves 16 bytes SRAM on AVR
  • 4 × char blank[21]; memset(...) stack allocations replaced with _rowWrite("")_rowWrite already pads to COLS
  • Custom character slot comment corrected: slots 0–6 are library-internal (slot 6 ↓ is used by the nav bar); only slot 7 is free for user characters
  • APALCDGUI_VERSION bumped to "1.1.3"

APALCDGUI v1.1.2

31 May 08:39

Choose a tag to compare

What's new in v1.1.2

Fixed

  • DS3231 integration now uses -DAPA_LCD_USE_DS3231 build flag — the previous include-order approach failed in PlatformIO due to separate compilation units
  • RTC modal gesture changed to 800 ms both-buttons hold — previous 200 ms threshold fired too easily during normal navigation
  • _bothFired flag prevents double-fire against individual long-press callbacks
  • RTC modal UX redesigned: TIME → SAVE → DATE → SAVE sequential flow; BACK on DATE returns to TIME; BACK on TIME discards
  • RTC cursor: single ↑ below selected field only — previous design was confusing

Added

  • examples/04_rtc/ — DS3231 RTC modal example with live clock on home screen
  • examples/02_8screens/ — now demonstrates all 6 field types including fieldBool on L-1

Changed

  • Example folder restructured: flat examples/01_minimal, 02_8screens, 03_alerts, 04_rtc — replaces examples/mega/ category subfolder

APALCDGUI v1.1.1

30 May 18:47

Choose a tag to compare

What's new in v1.1.1

Added

  • fieldBool() — on/off toggle field (ON / OFF )
  • fieldAction() with optional confirm=true — full-screen confirmation prompt before firing
  • Variable field count per screen: 1, 2, or 3 fields via addScreen() overloads
  • Screen title parameter on addScreen()
  • setMenuRow2Callback() — live sensor data on row 2 of every 1- and 2-field screen
  • markDirty(), currentScreen(), getBrightness() — new public API
  • CC_DEGREE constant exported for use in home callback

Fixed

  • EEPROM.update() replaced with write() + commit() on ESP32 / ESP8266
  • snprintf buffer overflows in _drawField() and active alert header
  • %lu format mismatch for uint32_t on ESP8266 in example sketch

Changed

  • LiquidCrystal is now a direct class member — no heap allocation, no <new> dependency
  • library.properties reworded for platform independence (AVR, ESP32, ESP8266, STM32)
  • docs/API.md completely rewritten to match the actual v1.1.1 API
  • Platform Verification table added to README with RAM/Flash numbers for all 5 platforms
  • Zero errors, zero warnings on all 5 platforms with APA_LCD_MAX_SCREENS=8