mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-01 10:21:59 +00:00
WioTrackerL1Eink426_solo_dual extends eink_solo like the 4.2" build and sets only what differs: the panel, rotation, the 9x15 at 2x with Text and Icon size, bulk writes at 8 MHz, 250 contacts and a 32-message queue. Replaces the full copy of the flags in solo/wio-tracker-l1-gdeq0426/. Docs: advert precision, text and icon size, the 4.26" in the feature matrix. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
83 lines
3.8 KiB
INI
83 lines
3.8 KiB
INI
; Solo build for Seeed Wio Tracker L1 (E-ink) -- extends WioTrackerL1Eink,
|
|
; defined in variants/wio-tracker-l1-eink/platformio.ini. Solo configs live in
|
|
; their own top-level solo/ folder, separate from the shared upstream board
|
|
; variants in variants/, so this repo's Solo-specific additions don't get
|
|
; mixed in with configs other MeshCore forks/upstream also carry.
|
|
;
|
|
; Two builds for the 2.13" panel, one per orientation: each screen is laid out
|
|
; for one shape, and Settings > Rotation only turns it upside down. Landscape
|
|
; writes in the 8x13 font at the panel's own resolution (EINK_LARGE_FONT);
|
|
; portrait keeps the 6x9, whose narrow width wants the smaller cell. The
|
|
; joystick reads upright with the panel at rotation 1 (landscape) and turns
|
|
; with it (JOYSTICK_UPRIGHT_ROTATION). A third for a 4.2" 400x300 panel on the
|
|
; same wiring, in the 9x15, and a fourth for a 4.26" 800x480 one.
|
|
;
|
|
; All: Dual BLE+USB with added Solo.
|
|
[eink_solo]
|
|
extends = WioTrackerL1Eink
|
|
; Optimise for size, not speed: the nRF52 Arduino core defaults to -Ofast
|
|
; (≈ -O3 + -ffast-math), which bloats flash by ~200 KB on this feature-rich
|
|
; solo build. -Os keeps every feature, fits comfortably, and is actually safer
|
|
; for float (no fast-math reassociation). Speed is irrelevant for the UI/mesh.
|
|
; The offline queue (messages held for the phone app while it's away) at 128,
|
|
; not the board's 256: on the nRF52 the 256 x 177 B left ~5 KB of heap next to
|
|
; the on-device UI (which keeps its own history), too little for a sign buffer.
|
|
build_unflags = -Ofast -D OFFLINE_QUEUE_SIZE=256
|
|
build_flags = ${WioTrackerL1Eink.build_flags}
|
|
-D OFFLINE_QUEUE_SIZE=128
|
|
-D DUAL_SERIAL=1
|
|
-D ENABLE_SCREENSHOT
|
|
-D JOYSTICK_UPRIGHT_ROTATION=1
|
|
-Os
|
|
extra_scripts = post:create-uf2.py
|
|
|
|
[env:WioTrackerL1Eink_landscape_solo_dual]
|
|
extends = eink_solo
|
|
build_flags = ${eink_solo.build_flags}
|
|
-D DISPLAY_ROTATION=1
|
|
-D EINK_LARGE_FONT=1
|
|
|
|
; The board's own -D DISPLAY_ROTATION=1 is taken out only here: build_unflags
|
|
; runs after build_flags, so unflagging it in [eink_solo] also dropped the
|
|
; landscape env's identical flag (that build came up portrait).
|
|
[env:WioTrackerL1Eink_portrait_solo_dual]
|
|
extends = eink_solo
|
|
build_unflags = ${eink_solo.build_unflags} -D DISPLAY_ROTATION=1
|
|
build_flags = ${eink_solo.build_flags}
|
|
-D DISPLAY_ROTATION=0
|
|
|
|
; A 4.2" 400x300 panel (Good Display GDEY042T81, SSD1683 -- the 2.13"'s
|
|
; SSD1680's bigger sibling) in place of the 2.13", on the same wiring. Its
|
|
; native orientation is landscape (rotation 0); text in the 9x15.
|
|
[env:WioTrackerL1Eink42_solo_dual]
|
|
extends = eink_solo
|
|
build_unflags = ${eink_solo.build_unflags} -D EINK_DISPLAY_MODEL=GxEPD2_213_B74 -D DISPLAY_ROTATION=1
|
|
-D JOYSTICK_UPRIGHT_ROTATION=1
|
|
build_flags = ${eink_solo.build_flags}
|
|
-D EINK_DISPLAY_MODEL=GxEPD2_420_GDEY042T81
|
|
-D DISPLAY_ROTATION=0
|
|
-D JOYSTICK_UPRIGHT_ROTATION=0
|
|
-D EINK_LARGE_FONT=2
|
|
|
|
; A 4.26" 800x480 panel (Good Display GDEQ0426T82) on the same 24-pin FPC.
|
|
; Native landscape; the 9x15 font at 2x (~44 characters x 16 lines), with
|
|
; Settings > Display > Text size and Icon size (EINK_FONT_SCALE,
|
|
; STATUS_ICON_SCALE). Rows sent to the panel in bulk at 8 MHz
|
|
; (EINK_FAST_WRITES, GxEPD2_FastWrite.h). Its 48 KB framebuffer leaves the
|
|
; heap short at boot, so fewer contacts and a smaller offline queue.
|
|
[env:WioTrackerL1Eink426_solo_dual]
|
|
extends = eink_solo
|
|
build_unflags = ${eink_solo.build_unflags} -D EINK_DISPLAY_MODEL=GxEPD2_213_B74 -D DISPLAY_ROTATION=1
|
|
-D JOYSTICK_UPRIGHT_ROTATION=1 -D MAX_CONTACTS=350 -D OFFLINE_QUEUE_SIZE=128
|
|
build_flags = ${eink_solo.build_flags}
|
|
-D EINK_DISPLAY_MODEL=GxEPD2_426_GDEQ0426T82
|
|
-D DISPLAY_ROTATION=0
|
|
-D JOYSTICK_UPRIGHT_ROTATION=0
|
|
-D EINK_LARGE_FONT=2
|
|
-D EINK_FONT_SCALE=2
|
|
-D STATUS_ICON_SCALE=0
|
|
-D EINK_FAST_WRITES=1
|
|
-D EINK_SPI_HZ=8000000
|
|
-D MAX_CONTACTS=250
|
|
-D OFFLINE_QUEUE_SIZE=32
|