Skip to content

Add Inhero MR-2 board variant (nRF52840/RAK4630 solar repeater) - #3132

Draft
liekmarflow wants to merge 2 commits into
meshcore-dev:mainfrom
liekmarflow:feature/inhero-mr2-variant
Draft

Add Inhero MR-2 board variant (nRF52840/RAK4630 solar repeater)#3132
liekmarflow wants to merge 2 commits into
meshcore-dev:mainfrom
liekmarflow:feature/inhero-mr2-variant

Conversation

@liekmarflow

Copy link
Copy Markdown

Closes #3130. Builds on #3131 (board hooks) — the diff shows both commits
until that PR is merged; I will rebase and mark this ready once it lands.

Adds the Inhero MR-2, a purpose-built solar repeater platform that is in
production and shipping (https://shop.inhero.de/en/products/inhero-mr-2-solar-mesh-repeater-board-rak4630-sx1262-mppt-red-ce-gepruft).
I am the hardware manufacturer; I can test changes on real hardware and am
happy to be tagged on anything affecting this variant.

Hardware: RAK4630 (nRF52840 + SX1262), BQ25798 buck/boost charger with
universal 3.6-24 V solar input and MPPT, INA228 coulomb counter, RV-3028 RTC,
BME280, 45 x 40 mm, CE-certified (RED 2014/53/EU).

What the variant provides:

  • Battery chemistry profiles (Li-Ion, LiFePO4, LTO, Na-Ion) with JEITA
    temperature-controlled charging and per-chemistry low-voltage thresholds
  • SOC tracking via hardware coulomb counting, 7-day energy statistics and
    a time-to-live prediction
  • Low-voltage system sleep (<500 uA) with RTC wakeup and autonomous recovery
  • board.* CLI namespace for configuration and diagnostics (uses the hooks
    from Add board hooks for variant-specific telemetry and CLI commands #3131), documented in variants/inhero_mr2/docs/
  • Build environments: Inhero_MR2_repeater, Inhero_MR2_repeater_bridge_rs232,
    Inhero_MR2_sensor

Quality/testing: field-proven for months on the manufacturer's own
installations (shipping boards come with bootloader only; users flash these
builds themselves); all three environments build green; docs were verified
against the code (CLI replies, thresholds, register values) before submission.

Transparency: this variant was developed with AI assistance under my
continuous engineering direction and review, followed by a full pre-submission
review pass. Stated upfront in line with this project's position on code
provenance. If the project prefers not to take AI-assisted contributions, I
will keep providing the variant through my fork instead — but I would prefer
it to live upstream where every MeshCore release builds it automatically.

Boards can now expose their own functionality without core changes:

- MainBoard::tick(): called from the example main loops; default no-op.
  Lets a board feed its watchdog and run periodic housekeeping.
- MainBoard::getCustomGetter()/setCustomSetter(): CommonCLI forwards
  'get board.*' / 'set board.*' to the board class; unknown commands
  reply with an error as before. Default no-op returns keep behavior
  identical for all existing boards.
- MainBoard::queryBoardTelemetry(CayenneLPP&): simple_repeater asks the
  board for extra telemetry channels (gated by TELEM_PERM_ENVIRONMENT).

All defaults are no-ops, so existing variants build and behave
unchanged. Used by the Inhero MR-2 variant (separate PR).
Application-specific repeater platform for autonomous off-grid
operation, in production and field-deployed:

- RAK4630 core module (nRF52840 + SX1262), 45 x 40 mm
- BQ25798 buck/boost charger: universal solar input 3.6-24V with MPPT,
  JEITA temperature-controlled charging
- INA228 coulomb counter for SOC tracking and 7-day energy statistics
- Li-Ion, LiFePO4, LTO and Na-Ion battery chemistry profiles
- RV-3028 RTC wakeup with low-voltage system sleep (<500uA) and
  autonomous recovery
- BME280 environment telemetry
- board.* CLI namespace for configuration and diagnostics (uses the
  board hooks from the previous PR)
- documentation under variants/inhero_mr2/docs/

Build environments: Inhero_MR2_repeater, Inhero_MR2_repeater_bridge_rs232,
Inhero_MR2_sensor.
@liekmarflow liekmarflow changed the title Feature/inhero mr2 variant Add Inhero MR-2 board variant (nRF52840/RAK4630 solar repeater) Aug 8, 2026
liekmarflow added a commit to liekmarflow/MeshCore that referenced this pull request Aug 8, 2026
…ev#3131/meshcore-dev#3132) - CONTEXT.md getrackt

Stand-Block neu: Issue + beide PRs mit Branch-Zeigern und Naechster-Schritt-
Ablauf nach Merge von meshcore-dev#3131. Ueberholte Doktrin ('kein PR-Verkehr zu
upstream') entfernt; stattdessen die Sicherungsregel: PR-Branches immer von
upstream/main schneiden. Feature-Branches als live PR-Koepfe markiert
(nicht loeschen). CONTEXT.md aus .gitignore genommen - auf main getrackt
ist sie PR-sicher, weil PR-Branches nie von Fork-main abstammen.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature request] Hardware support: Inhero MR-2 (CE-certified BQ25798/RAK4630 based solar repeater board)

1 participant