mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-02 10:51:57 +00:00
On an 800x480 panel the doubled 6x9 font and the status bar's icons are tiny. Two opt-in build flags, each also a setting under Settings > Display: - EINK_FONT_SCALE=<n>: the landscape font's pixel multiplier (stock 2). Settings > Display > Text size (1x-5x) overrides it at run time (DisplayDriver::setUiScale -> EinkGfxDisplay re-lays out). - STATUS_ICON_SCALE=<n>: Home's status icons, battery and page-icon row drawn at n x their pixel grid, the bar growing to fit. 0 = Auto, 1.5x the text's pixel scale. Settings > Display > Icon size (Auto, 1x-8x). Both live in their own /ui_scale file, so NodePrefs is untouched. Icon size appears only where STATUS_ICON_SCALE is set; Text size appears on every e-ink build with the full-refresh setting, and builds that set neither flag draw as before until it is changed. The GDEQ0426T82 env defaults to 4x text with Auto icons. Tested in the native sim at 800x480. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KxAZVAbhhYr18Dd4guTQM1
71 lines
2.7 KiB
INI
71 lines
2.7 KiB
INI
; Solo build for Seeed Wio Tracker L1 (Lite) + Good Display GDEQ0426T82
|
|
; 4.26" 800x480 e-ink, plugged into the board's 24-pin e-ink FPC connector.
|
|
; Build config only -- no source changes. Extends WioTrackerL1Eink
|
|
; (variants/wio-tracker-l1-eink/platformio.ini) for its source files and
|
|
; libraries, but carries its own full build_flags list, so the stock panel's
|
|
; -D EINK_DISPLAY_MODEL / DISPLAY_ROTATION never reach the compiler too.
|
|
;
|
|
; - EINK_DISPLAY_MODEL GxEPD2 driver for this panel (GxEPD2 1.6.2+)
|
|
; - DISPLAY_ROTATION 0: the panel's native landscape
|
|
; - RAM: the 800x480 framebuffer is 48 KB (the stock 2.13" needs ~4 KB),
|
|
; and UiCore plus every screen is allocated from the heap at startup --
|
|
; a failed allocation there crashes into a boot loop. So:
|
|
; OFFLINE_QUEUE_SIZE 32 (stock e-ink: 128) frees ~17 KB
|
|
; MAX_CONTACTS 250 (stock: 350) frees ~18 KB
|
|
; - EINK_FONT_SCALE 4: text at 4x the 6x9 font (24x36 cells, ~33 characters
|
|
; x 13 lines) -- twice the stock 2x. The default for Settings > Display >
|
|
; Text size (1x-5x), which overrides it once changed.
|
|
; - STATUS_ICON_SCALE 0: turns on scalable Home status/page icons; 0 = Auto
|
|
; (1.5x the text: 6x at 4x text). The default for Settings > Display >
|
|
; Icon size (Auto, 1x-8x).
|
|
;
|
|
; Build: pio run -e WioTrackerL1_GDEQ0426T82_companion_solo_dual
|
|
[env:WioTrackerL1_GDEQ0426T82_companion_solo_dual]
|
|
extends = WioTrackerL1Eink
|
|
build_unflags = -Ofast
|
|
build_flags = ${nrf52_base.build_flags}
|
|
${sensor_base.build_flags}
|
|
-I lib/nrf52/s140_nrf52_7.3.0_API/include
|
|
-I lib/nrf52/s140_nrf52_7.3.0_API/include/nrf52
|
|
-I variants/wio-tracker-l1
|
|
-I examples/companion_radio/ui-new
|
|
-I lib/GxEPD2-patch/src
|
|
-D WIO_TRACKER_L1
|
|
-D WIO_TRACKER_L1_EINK
|
|
-D USE_SX1262
|
|
-D RADIO_CLASS=CustomSX1262
|
|
-D WRAPPER_CLASS=CustomSX1262Wrapper
|
|
-D LORA_TX_POWER=22
|
|
-D SX126X_CURRENT_LIMIT=140
|
|
-D SX126X_RX_BOOSTED_GAIN=1
|
|
-D EINK_DISPLAY_MODEL=GxEPD2_426_GDEQ0426T82
|
|
-D DISPLAY_ROTATION=0
|
|
-D JOYSTICK_UPRIGHT_ROTATION=0
|
|
-D EINK_FONT_SCALE=4
|
|
-D STATUS_ICON_SCALE=0
|
|
-D GPS_BAUD_RATE=9600
|
|
-D ENV_PIN_SDA=PIN_WIRE1_SDA
|
|
-D ENV_PIN_SCL=PIN_WIRE1_SCL
|
|
-D DISABLE_DIAGNOSTIC_OUTPUT
|
|
-D AUTO_OFF_MILLIS=0
|
|
-D MAX_CONTACTS=250
|
|
-D MAX_GROUP_CHANNELS=40
|
|
-D OFFLINE_QUEUE_SIZE=32
|
|
-D DISPLAY_CLASS=GxEPDDisplay
|
|
-D BUTTON_USE_INTERRUPTS=1
|
|
-D UI_HAS_JOYSTICK=1
|
|
-D UI_HAS_JOYSTICK_UPDOWN=1
|
|
-D PIN_BUZZER=12
|
|
-D QSPIFLASH=1
|
|
-D FIRMWARE_SOLO_BUILD=1
|
|
-D MESHCORE_VERSION='"1.17.1"'
|
|
-D UI_SENSORS_PAGE=1
|
|
-D BLE_PIN_CODE=123456
|
|
-D DUAL_SERIAL=1
|
|
-D ENABLE_SCREENSHOT
|
|
-D KEEP_DISPLAY_ON_USB
|
|
-D EINK_FAST_WRITES=1
|
|
-D EINK_SPI_HZ=8000000
|
|
-Os
|
|
extra_scripts = post:create-uf2.py
|