Skip to content

Releases: beeline09/MeshCore

Darktec v1.16.0b9

Choose a tag to compare

@github-actions github-actions released this 19 Aug 02:17

Darktec v1.16.0b9

Изменения с darktec-v1.16.0b8:

Новое

  • Точка LoRa на home и пробуждение OLED от зарядки
  • Значок зарядки на OLED и не гасить экран
  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant

Исправления

  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs
  • CLOK DIM USB — raise VBUS threshold to 4200mV (TP4056 CV phase)

Сборка / CI

  • Mirror uf2+zip to Pages on ondemand dispatch
  • Dispatch Pages to mirror OTA zip
  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Fix CYRILLIC_SUPPORT for some displays (UTF8 already converted inside UTTask.cpp)
  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ri...
Read more

Darktec v1.16.0b13

Choose a tag to compare

@github-actions github-actions released this 24 Aug 17:30

Darktec v1.16.0b13

Прошивка основана на изменениях ветки south_edition (Rogovogor / MeshCore). Полный базовый changelog смотрите там.

Изменения beeline09 с darktec-v1.16.0b12

Новое

  • Точка LoRa на home и пробуждение OLED от зарядки
  • Значок зарядки на OLED и не гасить экран
  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec

Исправления

  • Changelog lists only beeline09 changes
  • Привязать darktec-latest gh release к GITHUB_REPOSITORY
  • Стабилизировать обновление darktec-latest release
  • Включить буззер companion и поднять порог charge detect
  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery

Сборка / CI

  • Mirror uf2+zip to Pages on ondemand dispatch
  • Dispatch Pages to mirror OTA zip
  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec

Прочее

  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
    • refactor: on-demand getSharedSecret()

Community-сборка beeline09. Flasher: https://beeline09.github.io/darktec/

Darktec v1.16.0b12

Choose a tag to compare

@github-actions github-actions released this 19 Aug 18:03

Darktec v1.16.0b12

Изменения с darktec-v1.16.0b11:

Новое

  • Точка LoRa на home и пробуждение OLED от зарядки
  • Значок зарядки на OLED и не гасить экран
  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant

Исправления

  • Привязать darktec-latest gh release к GITHUB_REPOSITORY
  • Стабилизировать обновление darktec-latest release
  • Включить буззер companion и поднять порог charge detect
  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo

Сборка / CI

  • Mirror uf2+zip to Pages on ondemand dispatch
  • Dispatch Pages to mirror OTA zip
  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Fix CYRILLIC_SUPPORT for some displays (UTF8 already converted inside UTTask.cpp)
  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserved
  • build fixes for nibble_screen_c...
Read more

Darktec v1.16.0b11

Choose a tag to compare

@github-actions github-actions released this 19 Aug 17:55

Darktec v1.16.0b11

Изменения с darktec-v1.16.0b10:

Новое

  • Точка LoRa на home и пробуждение OLED от зарядки
  • Значок зарядки на OLED и не гасить экран
  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant

Исправления

  • Стабилизировать обновление darktec-latest release
  • Включить буззер companion и поднять порог charge detect
  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants

Сборка / CI

  • Mirror uf2+zip to Pages on ondemand dispatch
  • Dispatch Pages to mirror OTA zip
  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Fix CYRILLIC_SUPPORT for some displays (UTF8 already converted inside UTTask.cpp)
  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserv...
Read more

Darktec v1.16.0b10

Choose a tag to compare

@github-actions github-actions released this 19 Aug 17:45

Darktec v1.16.0b10

Изменения с darktec-v1.16.0b9:

Новое

  • Точка LoRa на home и пробуждение OLED от зарядки
  • Значок зарядки на OLED и не гасить экран
  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant

Исправления

  • Включить буззер companion и поднять порог charge detect
  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs

Сборка / CI

  • Mirror uf2+zip to Pages on ondemand dispatch
  • Dispatch Pages to mirror OTA zip
  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Fix CYRILLIC_SUPPORT for some displays (UTF8 already converted inside UTTask.cpp)
  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple ra...
Read more

Darktec v1.16.0b8

Choose a tag to compare

@github-actions github-actions released this 14 Aug 20:17

Darktec v1.16.0b8

Изменения с darktec-v1.16.0b7:

Новое

  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant
  • Add CYRILLIC_SUPPORT=1 to companion_radio envs for all display-capable variants
  • Add USB Companion Radio env for Heltec Wireless Paper

Исправления

  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs
  • CLOK DIM USB — raise VBUS threshold to 4200mV (TP4056 CV phase)

Сборка / CI

  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Fix CYRILLIC_SUPPORT for some displays (UTF8 already converted inside UTTask.cpp)
  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserved
  • build fixes for ...
Read more

Darktec v1.16.0b7

Choose a tag to compare

@github-actions github-actions released this 14 Aug 17:34

Darktec v1.16.0b7

Изменения с darktec-v1.16.0b6:

Новое

  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant
  • Add CYRILLIC_SUPPORT=1 to companion_radio envs for all display-capable variants
  • Add USB Companion Radio env for Heltec Wireless Paper

Исправления

  • Не переводить кириллицу дважды в GFX print/getTextWidth
  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs
  • CLOK DIM USB — raise VBUS threshold to 4200mV (TP4056 CV phase)

Сборка / CI

  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Revert "fix(ui): не переводить кириллицу дважды в GFX print/getTextWidth"
  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserved
  • build fixes for nibble_screen_connect and thinknode_m2
  • build fix for rp2040 companion usb
  • add mi...
Read more

Darktec v1.16.0b6

Choose a tag to compare

@github-actions github-actions released this 11 Aug 20:33

Darktec v1.16.0b6

Изменения с darktec-v1.16.0b5:

Новое

  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant
  • Add CYRILLIC_SUPPORT=1 to companion_radio envs for all display-capable variants
  • Add USB Companion Radio env for Heltec Wireless Paper

Исправления

  • Ondemand/matrix — не использовать -U для батареи/LORA
  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs
  • CLOK DIM USB — raise VBUS threshold to 4200mV (TP4056 CV phase)
  • DISPLAY_TZ — clean quote syntax in platformio.ini, add usage hint in target.h

Сборка / CI

  • Валидация advert_name — только латиница
  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserved
  • build fixes for nibble_screen_connect and thinknode_m2
  • build fix for rp2040 companion usb
  • add missing radio_init() for rak11310
  • pin platform-raspber...
Read more

Darktec v1.16.0b5

Choose a tag to compare

@github-actions github-actions released this 11 Aug 17:49

Darktec v1.16.0b5

Изменения с darktec-v1.16.0b4:

Новое

  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant
  • Add CYRILLIC_SUPPORT=1 to companion_radio envs for all display-capable variants
  • Add USB Companion Radio env for Heltec Wireless Paper

Исправления

  • On-demand флаги при имени с пробелами
  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs
  • CLOK DIM USB — raise VBUS threshold to 4200mV (TP4056 CV phase)
  • DISPLAY_TZ — clean quote syntax in platformio.ini, add usage hint in target.h
  • Settings OLED — scroll and dot overlap

Сборка / CI

  • Поднять лимит LORA_BW on-demand до 1625 кГц
  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Prerelease-кэш ondemand + автоочистка ассетов
  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserved
  • build fixes for nibble_screen_connect and thinknode_m2
  • build fix for rp2040 companion usb
  • add missing radio_init() for rak11310
  • pin platform-raspberrypi to 4e22a0d
  • build fixes for LilyGo T-Echo Card
    • ...
Read more

Darktec v1.16.0b4

Choose a tag to compare

@github-actions github-actions released this 11 Aug 16:30

Darktec v1.16.0b4

Изменения с darktec-v1.16.0b3:

Новое

  • On-demand кастомизация LORA_* (freq/BW/SF/CR/TX)
  • On-demand сборка с кастомным ADVERT_NAME
  • Build adc/off protect matrix and cache PlatformIO
  • Versioned releases, all roles, human changelogs
  • Выбрать режим защиты батареи через DARKTEC_BATT_PROTECT
  • Добавить поддержку платы Darktec
  • EInk antighost OFF by default + WiFi→BLE fallback retry
  • Adds flood.max.unscoped setting
  • Integrate BME680 Bosch BSEC support for RAK4631
  • Add physical DOWN button (D17/KEY_DOWN) to joystick d-pad
  • New variant ProMicro NRF52840 + WeAct eInk + HT-RA62/E22/E22P
  • Enable buzzer on pin 46
  • Add kiss modem env
  • WiFi non-blocking auto-reconnect (upstream, merged with WITH_WIFI_SWITCHING)
  • Add CMD_SEND_RAW_PACKET (upstream)
  • FIRMWARE_VER_CODE=12, send_unscoped, CMD_SET_FLOOD_SCOPE_KEY variant (upstream)
  • Add message history and read-later UX for companion radio
  • Add adc.multiplier support to T114 (companion_radio)
  • Add USB companion radio target for non-shell variant
  • Dynamic WiFi/BLE/USB switching (WITH_WIFI_SWITCHING)
  • Add local build scripts (build-local.ps1 / build-local.sh)
  • DISPLAY_TZ UTC0 default for all display-capable variants
  • CLOCK e-ink — add date line below clock
  • CLOCK PM inline on OLED, PM CLOK and CLOK DIM settings
  • CLOCK page on OLED — size-3 clock with date, removed eInk-only restriction
  • Settings UI page — CLI Chat, CLI PIN reveal, Timesync, one-button navigation
  • Companion CLI — Remote CLI (PM+PIN) и TerminalCLI (канал)
  • CLI logging for both PM and TerminalCLI approaches
  • Companion CLI (Approach 1 — PM PIN + Approach 2 — TerminalCLI channel)
  • LPCOMP runtime low-voltage shutdown для promicro
  • Support selective builds via variant spec in release tags
  • Add screen_180 companion variants for E290 and E213
  • Room server time sync from advert timestamps
  • Repeater time sync — GPS re-sync, isTimeReliable, diagnostics
  • Timesync CLI command and sync stats
  • Repeater time sync from advert timestamps
  • Enable GPS on RAK 1W kit
  • Add Non-Shell (screenless) companion BLE variant
  • Add CYRILLIC_SUPPORT=1 to companion_radio envs for all display-capable variants
  • Add USB Companion Radio env for Heltec Wireless Paper

Исправления

  • ADC recovery по VBAT без USB, SoftDevice off и радио-профиль EU868
  • Publish nRF OTA zips for Serial DFU web flasher
  • Keep all Darktec UF2s — stop wiping out/ per variant
  • Stop undefining CFG_DEBUG on Darktec nRF52 builds
  • ADC sleep/wake вместо SYSTEMOFF+LPCOMP
  • Убрать hard cutoff SYSTEMOFF/LPCOMP, мешавший recovery
  • Переименовать аптаймы, сбрасывать on-batt при отключении зарядки
  • Не выпускать в эфир, дропать входящие из эфира
  • Update wio-e5-mini pio config to address SubGhz dependency issue
  • Rename CMD_DEVICE_QEURY to CMD_DEVICE_QUERY
  • Remap joystick in settings — ENTER=next item, LEFT/RIGHT=value
  • Fix UP scroll wrap-around in settings menu
  • Joystick remapping, instant button response, eink post-full-refresh reinit
  • Reduce deghosting artifacts and unify message font size
  • Node name in header, time source right-aligned next to battery
  • Simplify eink clock layout, no regression on other displays
  • Fix eink clock layout for 250x122 display
  • Correct layout for WeAct 2.13" 250x122 display
  • Widen TRACE offset to uint16 to avoid narrowing (upstream)
  • Uni builds — BLE auto PIN is now random per boot, not persisted
  • BLE PIN reset — clearer auto mode in CLI and app handler
  • Wifi add/del — support quoted SSIDs with spaces
  • Add eInk anti-ghosting strategy for GxEPD2 display driver
  • Add eInk anti-ghosting strategy for E290 and E213 displays
  • Trigger UI redraw when time is synced via app or advert
  • BLE PIN persistence on ESP32 + NRF52 BLE flash/stack fixes
  • Defer Cyr2Lat prefs saves to avoid NRF52 BLE flash hang
  • Fix stack overflow in remote CLI and flash hang on NRF52 BLE
  • Defer savePrefs() flash writes to avoid BLE hang on NRF52
  • Unify ST7789 coordinate system in drawV3ClockString
  • Scale T114 clock and persist UI settings
  • TerminalCLI channel overwrite + NRF52 clock display
  • Rename E290 companion_uni -> companion_radio_uni; drop _companion_uni from build
  • E-ink UI — auto-scale clock, scale Settings line height, fix CLOCK label typo
  • E-ink companion envs — add WITH_COMPANION_CLI, fix DISPLAY_TZ quoting, add WP 180° variants
  • CLI trailing whitespace causing Unknown command; update docs
  • CLOK DIM USB — raise VBUS threshold to 4200mV (TP4056 CV phase)
  • DISPLAY_TZ — clean quote syntax in platformio.ini, add usage hint in target.h
  • Settings OLED — scroll and dot overlap
  • CLOK DIM — AOF/USB/AON modes, no auto-revert, simplified logic

Сборка / CI

  • Parallelize firmware builds by role matrix
  • Auto-build UF2 matrix and publish darktec-latest
  • Pin peaceiris/actions-gh-pages to v4.1.0 for Node.js 24 support
  • Update GitHub Actions and Python version, fix ruby-version typo
  • Use gh release upload for append — preserves existing assets
  • Add release_tag input to append artifacts to existing release
  • Add workflow_dispatch inputs for targeted companion builds
  • Clean up companion build scripts, unify to _companion_radio_uni only
  • Switch companion CI to *_companion_radio_uni / *_companion_uni envs
  • Release body from annotated tag message
  • Удалить build-all-firmwares.yml (не актуально)
  • Revert build-all-firmwares to first version
  • Fix version resolution in build-all-firmwares workflow
  • Add build-all-firmwares workflow for 1.15.0b* tags
  • Fix RAK, T114, T1000 builds
  • Fix RAK, T114, T1000e builds

Документация

  • Require human-readable changelogs on every firmware push
  • Fix remaining rendering issues
  • Add missing periods at sentence endings
  • Fix FAQ rendering
  • Fix FAQ heading capitalization
  • Fix FAQ link rendering
  • Fix FAQ resource link rendering
  • Fix FAQ bullet list rendering
  • Remove extra FAQ TOC indentation
  • Fix typos, grammar, and formatting in FAQ and code comments
  • Fix minor typos in README and terminal_chat_cli
  • Fix broken and misaligned tables
  • Remove duplicate radio.rxgain entry and fix hardware note
  • Fix typos, grammar and Wi-Fi capitalisation across docs
  • Add south_edition section to README — concepts, variants, wiki link
  • Rewrite companion-cli.md — full CLI reference with all commands
  • Wifi add/del — document quoted SSID syntax for names with spaces
  • Bugfix-channel-clock + build-actions guide
  • Companion CLOCK on OLED, PM inline, PM CLOK and CLOK DIM settings
  • Companion Settings UI page
  • Уточнить логику lpcompDownHandler — shutdown при USB+mv<3000
  • Консолидация changes/ в docs/changes/, перевод на русский, исправления
  • Add explanatory notes for txdelay, direct.txdelay, and rxdelay CLI commands
  • Add changes documentation vs upstream
  • Add radio.rxgain command reference
  • Align gps output description with CLI
  • Clarify path length encoding
  • Sync companion and kiss protocol docs
  • Sync CLI and payload docs with implementation
  • Correct CLI command forms and targeted typos

Рефакторинг

  • CLOK DIM — simplify to ON/OFF (remove USB mode)
  • Add populateContactFromAdvert()
  • Remove redundant import statement
  • Readability
  • Use macro from ttgo repo for readability
  • Use _getContactsChannelsFS() instead of ifdefs
  • Lilgo_t3s3 with CustomSX1262::std_init()
  • RAK4631 with CustomSX1262::std_init()
  • Promicro with CustomSX1262::std_init()
  • More conditionals for GPS
  • Sensors are now wrapped in conditionals
  • FaketecBoard to PromicroBoard

Обслуживание

  • Убрать ветку southedition-origin из CI и доки Darktec
  • Normalize board JSON line endings
  • Pin CustomLFS to 0.2.2 (upstream)
  • Add .claude/ to .gitignore
  • Update .gitignore
  • Cleanup
  • Refactor to use GxEPD2 fork

Прочее

  • Set up Cursor Cloud dev environment (PlatformIO) 🤖🤖 (#1)
  • [OS] fix(ui): ST7735 hardware SPI on ESP32 — ~100x faster frame draw
  • [OS] fix(eink): force re-draw after full refresh to prevent white screen
  • [OS] fix(ui): hide Rotation setting on non-eInk displays
  • [OS] feat(wifi): restore WiFi→BLE fallback background retry
  • [OS] revert SEC: remove antighost setting + WiFi-BLE retry
  • [OS] remove dead UIMessageSender methods (sendContactMsg/sendChannelMsg/calcSentBytes)
  • [OS] remove promicro_eink_spi: contains SEC code and RF-plan, not for public south
  • [OS] fix: build compat after 1.16 merge — radio_driver API, NodePrefs fields, UITask guards
  • Fix local TerminalCLI chat handling
  • Decouple cyr2lat from companion CLI
  • Fix Cyrillic rendering in GFX display drivers
  • Add BuildLab Scout board variant (ESP32-S3-Zero + E22-900M30S)
  • Heltec T114 Buzzer support on pin 16
  • [SEC] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [OS] feat(sensors): auto-detect BME280/BME680/BMP280/AHT2x address on I2C scan
  • [SEC] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [OS] feat(sensors): add BME280 (temp/pressure/humidity) to ProMicro WeAct sensor set
  • [SEC] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(sensors): enable Wire1 (TWIM1) and INA sensors on ProMicro WeAct eInk
  • [OS] fix(eink): hibernate after begin() full refresh to enable correct partial refresh on SSD1680
  • Добавлена дополнительная очистка экрана при старте UI для корректной работы WaveShare дисплеев
  • src/helpers/ui/GxEPDDisplay.cpp — исправления eInk дисплея 1. reset_duration 2ms → 10ms SSD1680 требует минимум 10ms импульс RST. При 2ms дисплей мог стартовать с неопределённым состоянием.
  • Fix ProMicro sensors uptime and USB power state
    • version 1.16.0
    • default now 8, per the will of the peoples.
  • Change default power saving setting to 'off'
    • new CLI config: flood.max.advert (default 16)
    • number allocations: Ripple range reserved
  • build fixes for nibble_screen_connect and thinknode_m2
  • build fix for rp2040 companion usb
  • add missing radio_init() for rak11310
  • pin platform-raspberrypi to 4e22a0d
  • build fixes for LilyGo T-Echo Card
    • powersaving on/off lowercase fix
  • Added "override" to getIRQGpio() f...
Read more