Add RAK WisMesh Pocket V3 variant#10953
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughAdds a PlatformIO environment for the rak4631 WisMesh Pocket variant with Pocket-specific metadata, build flags, safe-VDD settings, source exclusions, and conditional hardware feature macros. ChangesWisMesh Pocket Variant Support
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
⚡ Try this PR in the Web FlasherWarning This is an automated, unreviewed CI test build. Back up your device configuration Supported boards built by this PR (29)
Build artifacts expire on 2026-08-15. Updated for |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
src/platform/nrf52/main-nrf52.cpp (1)
61-63: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winTrim comment to guideline max of two lines.
This 3-line comment block exceeds the repo's comment-length guideline.
As per coding guidelines, "Keep code comments minimal: one or two lines მაქsimum, only when the reason is not obvious, and do not restate the next line."
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@src/platform/nrf52/main-nrf52.cpp` around lines 61 - 63, Trim the comment above the System OFF wake handling in main-nrf52.cpp to fit the two-line guideline by removing one line and avoiding restating obvious code behavior. Keep only the essential rationale for the weak noinline wake override in the relevant block near the LPCOMP wake path, and preserve the symbols/comments tied to the call site and weak default behavior.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@variants/nrf52840/rak3401_1watt/variant.cpp`:
- Around line 50-85: The `variant_nrf52LoopHook` implementation is using raw
`millis()` subtraction for both the VDD safety polling and the low-VDD delay,
which should be replaced with the `Throttle` helpers per guidelines. Update the
time-based checks around `last_vdd_check_ms`, `POWER_LEVEL_CHECK_INTERVAL_MS`,
`low_vdd_since_ms`, and `LOW_VDD_SYSTEMOFF_DELAY_MS` to use `Throttle::execute`
or `Throttle::isWithinTimespanMs`, keeping the same behavior. Also extract the
duplicated low-VDD loop hook logic shared with
`variants/nrf52840/rak4631/variant.cpp` into a common helper so both variants
call the same implementation and only their small variant-specific behavior
differs.
---
Nitpick comments:
In `@src/platform/nrf52/main-nrf52.cpp`:
- Around line 61-63: Trim the comment above the System OFF wake handling in
main-nrf52.cpp to fit the two-line guideline by removing one line and avoiding
restating obvious code behavior. Keep only the essential rationale for the weak
noinline wake override in the relevant block near the LPCOMP wake path, and
preserve the symbols/comments tied to the call site and weak default behavior.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: b62e0a4c-a4e0-4908-b254-2e2020cef8ff
📒 Files selected for processing (7)
src/platform/nrf52/main-nrf52.cppvariants/nrf52840/rak3401_1watt/platformio.inivariants/nrf52840/rak3401_1watt/variant.cppvariants/nrf52840/rak3401_1watt/variant.hvariants/nrf52840/rak4631/platformio.inivariants/nrf52840/rak4631/variant.cppvariants/nrf52840/rak4631/variant.h
4855ed7 to
91a5f21
Compare
|
Cleaned up branch history: Pocket-only (1 commit, 2 files), rebased onto latest develop. The earlier commits came from sharing git history with #10918 — sorry for the noise.
|
Firmware Size Report44 targets | vs
Show 39 more target(s)
Size budgets
Budgets live in Updated for 72e65e2 |
|
@Ethan-chen1234-zy I think we may want to leave MQTT enabled on the pocket, as many users utilize the client proxy MQTT mode on their phones (pass MQTT through phone). I don't believe this works without including MQTT classes. |
93318e0 to
8ba91fa
Compare
|
Thanks @thebentern for the review. I've rebased onto the latest
Ready for another look when you have a moment. Thanks! |
Summary
rak_wismesh_pocketbuild env for RAK WisMesh Pocket V3 (RAK4631 + OLED).WISMESH_POCKETinrak4631/variant.h:PIN_GPS_ENon GPIO 34 (GPS_PWR_ENper schematic)HAS_ETHERNET 0(no Ethernet)build_src_filter:mesh/eth,mesh/api).rak4631viaLOW_VDD_SYSTEMOFF_DELAY_MS(infrastructure from Add RAK WisMesh Repeater Mini V2 and HP variants #10918).Depends on
variant_enableBatteryLpcompWake()inmain-nrf52.cppand low-VDD hook inrak4631/variant.cppmust land first (or be included in the same release baseline).Files changed
rak4631/platformio.ini[env:rak_wismesh_pocket]rak4631/variant.hWISMESH_POCKET:PIN_GPS_EN,HAS_ETHERNET, ringtoneTest plan
pio run -e rak_wismesh_pocketpio run -e rak4631— no behavior change on base envPIN_GPS_EN)Notes for reviewers
variant.cpplogic; it extendsenv:rak4631and relies on Add RAK WisMesh Repeater Mini V2 and HP variants #10918 for power/LPCOMP.Summary by CodeRabbit
New Features
Bug Fixes
Chores