mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-01 10:21:59 +00:00
build(solo): the 4.26" panel as a fourth L1 e-ink env
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>
This commit is contained in:
@@ -18,6 +18,7 @@ to some screens, adds or corrects its row here in the same commit.
|
||||
| **E-ink L** | Wio Tracker L1 e-ink, landscape | 250 × 122, 8 × 13 | Larger icons |
|
||||
| **E-ink P** | Wio Tracker L1 e-ink, portrait | 122 × 250, 6 × 9 | |
|
||||
| **E-ink 4.2"** | Wio Tracker L1 with the 4.2" panel (parked) | 400 × 300, 9 × 15 | Its own icon set |
|
||||
| **E-ink 4.26"** | Wio Tracker L1 with the 4.26" 800 × 480 panel (`WioTrackerL1Eink426_solo_dual`) | 400 × 240 at 2x, 9 × 15 | Text and icon size settings; "wide" like the 4.2", 16 lines |
|
||||
| **L2** | Wio Tracker L2 | 320 × 240 touch, ui-lvgl | |
|
||||
|
||||
What decides it in ui-new (look for these when adding a screen):
|
||||
|
||||
@@ -7,7 +7,7 @@ board supports are shown.
|
||||
|
||||
| Section | What's there |
|
||||
| ------- | ------------ |
|
||||
| **Display** | Brightness, auto-off, wake on message, the message alert (banner, corner envelope or off), lock screen, the lock clock's look and the [PIN](./lock.md), battery as icon / % / volts, time zone, clock format and seconds; on e-ink also rotation and full refresh |
|
||||
| **Display** | Brightness, auto-off, wake on message, the message alert (banner, corner envelope or off), lock screen, the lock clock's look and the [PIN](./lock.md), battery as icon / % / volts, time zone, clock format and seconds; on e-ink also rotation and full refresh, and on a 4.26" panel the text and icon size |
|
||||
| **Sound** | Buzzer on / off / auto (quiet while the app is connected), volume, quiet hours, the melody for messages, channels and adverts |
|
||||
| **Home Pages** | Order of the home pages, and which are shown |
|
||||
| **Radio** | TX power, preset, frequency, SF / BW / CR, saved presets, Auto pwr, the scope list, then the advanced options (below) |
|
||||
@@ -56,6 +56,10 @@ nodes aren't added until you make room.
|
||||
including the automatic ones. Off, nodes see your name but not where you
|
||||
are. Live sharing and `{loc}` in a message still send it, because you send
|
||||
those on purpose.
|
||||
- **Precision**: how exactly adverts give your position: **Exact**, or
|
||||
rounded to a grid of about **100 m**, **500 m** or **1 km**. A fixed grid,
|
||||
not random noise, so many adverts from one place can't be averaged back
|
||||
to the exact spot.
|
||||
- **Position**: where your adverts say you are while the GPS is off. **Enter**
|
||||
to type it in (`50.06143, 19.93658`), take it from a waypoint, or clear it.
|
||||
With the GPS on, the row shows **GPS** and each fix replaces it; turning the
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
; 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.
|
||||
; same wiring, in the 9x15, and a fourth for a 4.26" 800x480 one.
|
||||
;
|
||||
; All: Dual BLE+USB with added Solo.
|
||||
[eink_solo]
|
||||
@@ -58,3 +58,25 @@ build_flags = ${eink_solo.build_flags}
|
||||
-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
|
||||
|
||||
@@ -1,72 +0,0 @@
|
||||
; 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_LARGE_FONT 2: the 4.2" build's 9x15 font (and its 9 px icons) --
|
||||
; on hardware it reads much better here than the 6x9 scaled up, which goes
|
||||
; blocky at 4x.
|
||||
; - EINK_FONT_SCALE 2: that font at 2x (18x30 cells, ~44 characters x 16
|
||||
; lines). Also adds Settings > Display > Text size (1x-5x), which starts here.
|
||||
; - STATUS_ICON_SCALE turns on scalable Home status/page icons and adds
|
||||
; Settings > Display > Icon size (Auto = 1.5x the text: 3x at 2x text, 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_LARGE_FONT=2
|
||||
-D EINK_FONT_SCALE=2
|
||||
-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
|
||||
Reference in New Issue
Block a user