Tap bottom bar during wardrive to drop GPS-tagged waypoints (auto-numbered).
CLI command `wardrivepoi [label]` supports custom labels for serial/Flipper
users. Writes standard GPX format with lat/lon/ele/time/name. Empty GPX
files auto-cleaned on scan stop. Addresses #1058.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fix drawing issues on Cardputer where TFT_WIDTH (135, portrait) was
used instead of SCREEN_WIDTH (240, landscape) for fill widths, and
TFT_HEIGHT (240) was used instead of SCREEN_HEIGHT (135) for vertical
positioning. Fixes status bar, menu buttons, and channel graph rendering.
Also increases CHAN_PER_PAGE to 14 so all WiFi channels fit on one page.
Add support for the M5Stack Cardputer ADV hardware variant, which
replaces the original GPIO matrix keyboard with a TCA8418 I2C keypad
controller.
Changes:
- Vendor Adafruit_TCA8418 library for I2C keyboard communication
- Add MARAUDER_CARDPUTER_ADV board target with feature flags in configs.h
- Implement TCA8418 keyboard driver with interrupt-driven FIFO scanning,
coordinate remapping (verified against M5Cardputer-UserDemo-ADV), and
persistent key state tracking for compatibility with menu polling
- Extend all MARAUDER_CARDPUTER preprocessor guards to include ADV variant
- Add TFT_eSPI display configuration (same display as original Cardputer)
- Add CI build matrix entries for both parallel and nightly workflows
Use compile-time macros to support both ledcAttach (3.x) and
ledcSetup/ledcAttachPin (2.x) APIs. Fixes CI build failures.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
4-level to 10-level PWM backlight control (10%-100% in 10% steps),
persisted to NVS flash. Adds touch gesture (hold top/bottom zone 1.5s),
Device menu entry, and CLI command (brightness -c/-s <0-9>).
Replaces digitalWrite on/off with ledcWrite PWM for smooth dimming.
Closesjustcallmekoko/ESP32Marauder#1091
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>