1
0
forked from iarv/Meck

Compare commits

..

17 Commits

Author SHA1 Message Date
pelgraine
15fcb08441 changed wording of light flash on off to make it slightly clearer 2026-02-17 20:12:04 +11:00
pelgraine
48863a13aa update firmware version and date 2026-02-17 19:59:02 +11:00
pelgraine
98addc5bd3 update uitasks to enable keyboard pulse light notification 2026-02-17 19:54:39 +11:00
pelgraine
a10ce4e7ca update settingscreen to enable keyboard pulse light 2026-02-17 19:51:36 +11:00
pelgraine
dcb59f2e33 update node prefs to enable keyboard pulse light 2026-02-17 19:50:31 +11:00
pelgraine
9e40dc7f30 updated firmware version and date 2026-02-17 18:59:00 +11:00
pelgraine
5ed1edc287 same changes as in audio branch - note to self, files are the same and are ready for branch merging 2026-02-17 18:58:09 +11:00
pelgraine
ba057c8aad 45 m sleep timer; track queing from sub folders; better wav file name data extraction; changed autorefresh while playing to 30 seconds 2026-02-16 18:39:24 +11:00
pelgraine
8e91327230 msgread fix and newmsg alert suppresion when in repeater admin login page 2026-02-16 17:57:50 +11:00
pelgraine
7444a34e5a amended firmware version to align with other env variants 2026-02-15 19:37:01 +11:00
pelgraine
17bad1ddf7 using different HAS_BQ27220 for renderbatteryindicator 2026-02-15 19:35:34 +11:00
pelgraine
a4c86d2d31 battery charge estimated runtime fix - 2 to 3 charge discharge cycles needed for full calibration to 1400mah 2026-02-15 09:31:43 +11:00
pelgraine
8dd661246a battery gauge page and fixes 2026-02-15 07:16:51 +11:00
pelgraine
f07032182e fixed errant connected home display 2026-02-15 05:35:02 +11:00
pelgraine
1d39d9f314 ui fix 2026-02-15 02:21:27 +11:00
pelgraine
a4285d2f24 bumped max contacts up to 700 2026-02-15 02:11:15 +11:00
pelgraine
fad548b995 update firmware version and date 2026-02-15 02:01:03 +11:00
5 changed files with 11 additions and 11 deletions

View File

@@ -12,7 +12,7 @@
#endif
#ifndef FIRMWARE_VERSION
#define FIRMWARE_VERSION "Meck v0.9.0A"
#define FIRMWARE_VERSION "Meck v0.9.1A-NB"
#endif
#if defined(NRF52_PLATFORM) || defined(STM32_PLATFORM)

View File

@@ -1642,11 +1642,11 @@ public:
// E-ink refresh takes ~648ms during which audio.loop() can't run
// (SPI bus shared between display and SD card). This causes audible
// glitches during playback. Solution: during active playback, only
// auto-refresh once per minute (for time/progress updates). Key presses
// glitches during playback. Solution: during active playback, auto-refresh
// every 30 seconds for progress/time/sleep timer updates. Key presses
// always trigger immediate refresh regardless of this interval.
// When paused or stopped, refresh every 5s as normal.
if (_isPlaying && !_isPaused) return 60000; // 1 min between auto-refreshes
if (_isPlaying && !_isPaused) return 30000; // 30 sec between auto-refreshes
return 5000;
}

View File

@@ -30,7 +30,7 @@ private:
// Cached filtered contact indices for efficient scrolling
// We rebuild this on filter change or when entering the screen
static const int MAX_VISIBLE = 400; // matches MAX_CONTACTS build flag
static const int MAX_VISIBLE = 700; // must be >= MAX_CONTACTS build flag
uint16_t _filteredIdx[MAX_VISIBLE]; // indices into contact table
uint32_t _filteredTs[MAX_VISIBLE]; // cached last_advert_timestamp for sorting
int _filteredCount; // how many contacts match current filter
@@ -88,7 +88,7 @@ private:
}
}
// Sort by last_advert_timestamp descending (most recently seen first)
// Simple insertion sort — fine for up to 400 entries on ESP32
// Simple insertion sort - fine for up to 700 entries on ESP32
for (int i = 1; i < _filteredCount; i++) {
uint16_t tmpIdx = _filteredIdx[i];
uint32_t tmpTs = _filteredTs[i];

View File

@@ -431,7 +431,7 @@ public:
display.drawTextRightAlign(display.width()-1, y, buf);
y = y + 12;
// NMEA sentence counter — confirms baud rate and data flow
// NMEA sentence counter — confirms baud rate and data flow
display.drawTextLeftAlign(0, y, "sentences");
if (gpsDuty.isHardwareOn()) {
uint16_t sps = gpsStream.getSentencesPerSec();
@@ -1220,13 +1220,13 @@ void UITask::toggleGPS() {
if (_sensors != NULL) {
if (_node_prefs->gps_enabled) {
// Disable GPS — cut hardware power
// Disable GPS — cut hardware power
_sensors->setSettingValue("gps", "0");
_node_prefs->gps_enabled = 0;
gpsDuty.disable();
notify(UIEventType::ack);
} else {
// Enable GPS — start duty cycle
// Enable GPS — start duty cycle
_sensors->setSettingValue("gps", "1");
_node_prefs->gps_enabled = 1;
gpsDuty.enable();

View File

@@ -80,7 +80,7 @@ build_flags =
-D PIN_DISPLAY_BL=45
-D PIN_USER_BTN=0
-D CST328_PIN_RST=38
-D FIRMWARE_VERSION='"Meck v0.9.0A"'
-D FIRMWARE_VERSION='"Meck v0.9.1A"'
-D ARDUINO_LOOP_STACK_SIZE=32768
build_src_filter = ${esp32_base.build_src_filter}
+<../variants/LilyGo_TDeck_Pro>
@@ -140,7 +140,7 @@ build_flags =
-D MAX_GROUP_CHANNELS=20
-D OFFLINE_QUEUE_SIZE=256
-D NO_OTA=1
-D FIRMWARE_VERSION='"Meck v0.9.0A-NB"'
-D FIRMWARE_VERSION='"Meck v0.9.1A-NB"'
; === NO BLE_PIN_CODE, NO WIFI_SSID ===
; By omitting these, the preprocessor selects ArduinoSerialInterface (USB only).
; The BLE stack is never initialized, never linked, and the ESP32-S3 BT/WiFi