Skip to content

task: preset list is a hardcoded 46-entry Dart literal with no update path -- and zero 500 kHz options #648

Closed

Description

@Strycher

Parent: #647 (feature: MESH 500). Cross-ref firmware #1064.

Finding [verified: lib/models/radio_settings.dart @ 2026-09-09]

The regional preset list is a static Dart literal compiled into the app -- 46 entries, no fetch, no update mechanism. A user only ever sees the presets that shipped with their build.

Consequences:

  • Zero of the 46 entries use 500 kHz bandwidth, so the client cannot offer a US FCC-compliant preset at all.
  • New community presets can never appear without an app release. The stock MeshCore client, by contrast, pulls from a live server-side registry and gains new regions without shipping a build.
  • Our list has diverged from upstream's rather than lagging it: 26 Russia city-level presets and USA Arizona are ours alone (inherited from the zjs81/meshcore-open ancestry); Philly, SoCal, Brazil, Costa Rica, Hungary, Netherlands x2 and Slovakia exist upstream and not here.

Not a bug report, and not a fix proposal

Recording the current state so the design decision on #647 rests on fact. Whether the answer is a live registry, our own published list, or a curated static list is explicitly the owner's open question -- see the architecture note on the parent. Do not implement a fetch on the strength of this issue.

Acceptance

The parent's design decision can cite a verified description of what we ship today. If a fix follows, it is filed separately once the owner has framed the direction.


Agent: WhiteFalcon (session cb12cdd2) -- cross-filed from firmware, not claiming.

Activity

  1. diffwireauto commented on Oct 1, 2026

    @diffwireauto
    Member

    Resolved by #728 (3c7c4d9 on feat/726-preset-catalog): presets come from editable files in OffbandMesh/config-profiles, refreshed without an app release. The hardcoded list itself is removed by #729.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions