Skip to content

FieldMesh v5.2

Choose a tag to compare

@TogeriX-hub TogeriX-hub released this 09 Apr 14:29
· 164 commits to main since this release

[5.2] — HomeScreen Redesign & Online Node Counter

New features

  • Online node counter — HomeScreen now shows how many nodes have been
    heard in the last 30 minutes, combining advert senders and message senders
    in a single deduplicated count (16-entry LRU cache)
  • Node counter icon — the online count is displayed with a filled circle
    icon (●) instead of plain [X] text
  • Real channel name in title bar — message history and favorite preview
    now show the actual channel name (e.g. "Public") instead of the hardcoded
    "[CH]" tag
  • Mode indicator — GPS-SHARE and OFF-GRID modes are now shown on the
    HomeScreen FIRST page

Changes

  • M1 HomeScreen layout — node counter fixed at y=22 regardless of
    connection state; MSG:X replaces < Connected > when disconnected;
    nodes_icon y-offset corrected (+3px) to align with text baseline
  • Channel message title bar — sender name omitted from title bar for
    channel messages (already visible inside the message text)
  • Favorite indicator — clears correctly after all messages are deleted
    (deleteEntry / clearAll); no longer persists stale data after app sync
  • MSG:X counter — hidden on HomeScreen while phone app is connected
  • RECENT/TRACKING pages — row limits now display-height-adaptive via
    max_y variable instead of hardcoded values

Bug fixes

  • BLE init: send_queue flood — between onSecured() and CMD_APP_START
    async pushes could fill all 12 send_queue slots, causing the app to time
    out. Fixed via _app_initialized flag and isWriteBusy() guard
  • Double-counting in node counter — nodes heard via both advert and
    message were counted twice. Fixed via countOnlineNodesExcluding()
  • adv_fresh buffer — was reusing the 4-entry RECENT display array,
    capping the advert-based node count at 4. Now uses a dedicated
    ADVERT_PATH_TABLE_SIZE (16) buffer
  • formatRelTime undefined behavior — replaced signed int cast with
    safe uint32_t arithmetic

Technical notes

  • Changes confined to UITask.cpp, UITask.h, MyMesh.cpp, MyMesh.h,
    icons.h
  • DataStore, AbstractUITask, platformio.ini unaffected

Download latest build

EU Offgrid frequency

ThinkNode_M1_companion_radio_ble_FieldMeshv5.2.zip
WioTrackerL1_companion_radio_ble_FieldMeshv5.2.zip
t1000e_companion_radio_ble_FieldMeshv5.2.zip

US Offgrid frequency

ThinkNode_M1_companion_radio_ble_USFieldMeshv5.2.zip
WioTrackerL1_companion_radio_ble_USFieldMeshv5.2.zip
t1000e_companion_radio_ble_USFieldMeshv5.2.zip