{
  "id": "meshcore-wio-tracker-l1-pro-sosprz",
  "name": "MeshCore Wio Tracker L1 Pro (sosprz)",
  "type": "fork",
  "maintainer": "sosprz",
  "description": "Binary-distributed MeshCore fork for the Seeed Studio Wio Tracker L1 Pro, adding a substantial on-device companion UI for messaging, contacts, radio configuration and repeater administration.\n",
  "repository": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro",
  "license_type": "proprietary",
  "status": "active",
  "scope": "device-specific",
  "lifecycle": "active",
  "maturity": "beta",
  "distribution": "personal",
  "lineage": {
    "kind": "fork",
    "upstreamFirmwareId": "meshcore"
  },
  "roles": [
    "companion",
    "standalone-ui"
  ],
  "features": [
    "On-device direct and channel messaging",
    "Contacts, adverts and message history",
    "Radio and repeater administration",
    "UF2 and browser-assisted flashing"
  ],
  "capabilities": {
    "protocol": {
      "meshcoreCompatible": true
    },
    "transports": {
      "ble": true,
      "usbSerial": true
    },
    "operations": {
      "webFlasher": true
    },
    "hardware": {
      "gps": true,
      "display": true
    }
  },
  "devices": [
    {
      "id": "wio-tracker-l1-pro",
      "status": "supported"
    }
  ],
  "verification": {
    "sourceAvailable": true,
    "releasesAvailable": true,
    "hasDocumentation": false,
    "lastChecked": "2026-07-21",
    "notes": [
      "The repository contains release binaries and usage notes but no firmware source or license."
    ],
    "ciBuilds": false
  },
  "popularity": {
    "githubStars": 160,
    "githubForks": 8,
    "githubWatchers": 16,
    "githubOpenIssues": 23,
    "githubContributors": 2,
    "releaseDownloads": 5210,
    "latestReleaseDownloads": 46,
    "lastChecked": "2026-07-21"
  },
  "source": {
    "path": "data/firmwares/meshcore-wio-tracker-l1-pro-sosprz/firmware.yaml",
    "updatedAt": "2026-07-21T08:04:18Z"
  },
  "latest_version": "1.16.91",
  "released": "2026-07-20",
  "releases": [
    {
      "version": "v1.16.91",
      "name": "v1.16.91",
      "datetime": "2026-07-20T18:42:07Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.91",
      "prerelease": false,
      "notes": "- **GPS home details** - The Home GPS page now shows fix status, satellite count, DMS latitude/longitude, and altitude when GPS data is available.\r\n- **GPS DMS format** - GPS data views now display coordinates in degrees, minutes, and seconds instead of decimal degrees.\r\n- **Wio Tracker L1 EINK input bounce fix** - Bounced GPIO interrupt edges are now coalesced into one UI press, preventing a single physical joystick or button press from triggering multiple actions.\r\n- **Region scope settings** - Added `System -> Radio -> Region scope` so companion-radio devices can view, set, and clear the persisted default flood scope name and 16-byte key without the companion app.",
      "notesHtml": "<ul>\n<li><strong>GPS home details</strong> - The Home GPS page now shows fix status, satellite count, DMS latitude/longitude, and altitude when GPS data is available.</li>\n<li><strong>GPS DMS format</strong> - GPS data views now display coordinates in degrees, minutes, and seconds instead of decimal degrees.</li>\n<li><strong>Wio Tracker L1 EINK input bounce fix</strong> - Bounced GPIO interrupt edges are now coalesced into one UI press, preventing a single physical joystick or button press from triggering multiple actions.</li>\n<li><strong>Region scope settings</strong> - Added <code>System -&gt; Radio -&gt; Region scope</code> so companion-radio devices can view, set, and clear the persisted default flood scope name and 16-byte key without the companion app.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.90",
      "name": "v1.16.90",
      "datetime": "2026-07-07T20:42:20Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.90",
      "prerelease": false,
      "notes": "- **eInk display flip setting** - `System -> Screen -> Rotation` now toggles supported displays between the build default orientation and a 180-degree flip for upside-down installs.",
      "notesHtml": "<ul>\n<li><strong>eInk display flip setting</strong> - <code>System -&gt; Screen -&gt; Rotation</code> now toggles supported displays between the build default orientation and a 180-degree flip for upside-down installs.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.89",
      "name": "v1.16.89",
      "datetime": "2026-07-05T11:37:05Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.89",
      "prerelease": false,
      "notes": "- **DM delivery confirmation refresh** - Delivery ACKs now invalidate the cached DM render lines so sent messages update from pending to confirmed immediately on the tracker screen.\r\n- **Message hop display fix** - On-device DM/channel views now decode encoded path length before showing hops.\r\n- **Sound OFF menu option** - Sound volume cycling now includes `OFF` after `HIGH`, so users can mute from the Sound menu as well as with the triple-back shortcut.",
      "notesHtml": "<ul>\n<li><strong>DM delivery confirmation refresh</strong> - Delivery ACKs now invalidate the cached DM render lines so sent messages update from pending to confirmed immediately on the tracker screen.</li>\n<li><strong>Message hop display fix</strong> - On-device DM/channel views now decode encoded path length before showing hops.</li>\n<li><strong>Sound OFF menu option</strong> - Sound volume cycling now includes <code>OFF</code> after <code>HIGH</code>, so users can mute from the Sound menu as well as with the triple-back shortcut.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.88",
      "name": "v1.16.88",
      "datetime": "2026-06-29T20:16:59Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.88",
      "prerelease": false,
      "notes": "- **LoRaGotchi MVP** - Added `Tools -> LoRaGotchi` mesh pet that derives level, mood, stats, and five badges from existing local packet/contact counters.\r\n- **Sound mute/volume split** - Triple-back now only mutes or unmutes sound, while the Sound UI cycles the selected volume level separately.",
      "notesHtml": "<ul>\n<li><strong>LoRaGotchi MVP</strong> - Added <code>Tools -&gt; LoRaGotchi</code> mesh pet that derives level, mood, stats, and five badges from existing local packet/contact counters.</li>\n<li><strong>Sound mute/volume split</strong> - Triple-back now only mutes or unmutes sound, while the Sound UI cycles the selected volume level separately.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.87",
      "name": "v1.16.87",
      "datetime": "2026-06-26T15:59:56Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.87",
      "prerelease": false,
      "notes": "- **Radio path hash setting** - Added `Radio Settings -> Path hash` so companion-radio devices can switch outgoing flood path hashes between `1B`, `2B`, and `3B` directly from the device UI.\r\n- **Wio Tracker L1 EINK viewport fix** - The EINK companion build now reports the actual usable `128x90` logical viewport, so lists scroll when the visible rows are exhausted and text-entry keyboards stay within the visible screen area.\r\n- **Wio Tracker L1 EINK input reliability** - EINK joystick, menu, and enter presses are now interrupt-queued while the display is refreshing, reducing missed inputs caused by slow e-paper update cycles.",
      "notesHtml": "<ul>\n<li><strong>Radio path hash setting</strong> - Added <code>Radio Settings -&gt; Path hash</code> so companion-radio devices can switch outgoing flood path hashes between <code>1B</code>, <code>2B</code>, and <code>3B</code> directly from the device UI.</li>\n<li><strong>Wio Tracker L1 EINK viewport fix</strong> - The EINK companion build now reports the actual usable <code>128x90</code> logical viewport, so lists scroll when the visible rows are exhausted and text-entry keyboards stay within the visible screen area.</li>\n<li><strong>Wio Tracker L1 EINK input reliability</strong> - EINK joystick, menu, and enter presses are now interrupt-queued while the display is refreshing, reducing missed inputs caused by slow e-paper update cycles.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.86",
      "name": "v1.16.86",
      "datetime": "2026-06-21T15:48:50Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.86",
      "prerelease": false,
      "notes": "- **EINK keyboard layout fix**",
      "notesHtml": "<ul>\n<li><strong>EINK keyboard layout fix</strong></li>\n</ul>\n"
    },
    {
      "version": "v1.16.85",
      "name": "v1.16.85",
      "datetime": "2026-06-12T19:33:32Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.85",
      "prerelease": false,
      "notes": "- **Scheduled advert fix** - `Adverts -> Settings -> 0-hop rate` now schedules automatic zero-hop self-adverts at the selected interval.",
      "notesHtml": "<ul>\n<li><strong>Scheduled advert fix</strong> - <code>Adverts -&gt; Settings -&gt; 0-hop rate</code> now schedules automatic zero-hop self-adverts at the selected interval.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.84",
      "name": "v1.16.84",
      "datetime": "2026-06-09T13:31:51Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.84",
      "prerelease": false,
      "notes": "- **Off-grid 869 Repeat menu fix**",
      "notesHtml": "<ul>\n<li><strong>Off-grid 869 Repeat menu fix</strong></li>\n</ul>\n"
    },
    {
      "version": "v1.16.83",
      "name": "v1.16.83",
      "datetime": "2026-06-08T19:28:32Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.83",
      "prerelease": false,
      "notes": "- updated the default EU off-grid repeat frequency from `869.000 MHz` to `869.495 MHz`, completing alignment with companion firmware v1.16.0.",
      "notesHtml": "<ul>\n<li>updated the default EU off-grid repeat frequency from <code>869.000 MHz</code> to <code>869.495 MHz</code>, completing alignment with companion firmware v1.16.0.</li>\n</ul>\n"
    },
    {
      "version": "v1.16.82",
      "name": "v1.16.82",
      "datetime": "2026-06-07T19:29:58Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.16.82",
      "prerelease": false,
      "notes": "**Aligned with latest companion v1.16.0 firmware**",
      "notesHtml": "<p><strong>Aligned with latest companion v1.16.0 firmware</strong></p>\n"
    },
    {
      "version": "v1.15.81",
      "name": "v1.15.81",
      "datetime": "2026-06-03T13:06:32Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.81",
      "prerelease": false,
      "notes": "- **Time settings GPS sync now** - Added `Settings -> Time -> Sync now from GPS` to request a one-off GPS time sync on demand, with progress stages.\r\n- **GPS boot time sync** - Added `Settings -> GPS -> Boot time sync`; when enabled, startup temporarily turns GPS on, waits for GPS time to sync the RTC, shows `GPS time synced`, and silently turns GPS back off if it was only enabled for the boot sync attempt.",
      "notesHtml": "<ul>\n<li><strong>Time settings GPS sync now</strong> - Added <code>Settings -&gt; Time -&gt; Sync now from GPS</code> to request a one-off GPS time sync on demand, with progress stages.</li>\n<li><strong>GPS boot time sync</strong> - Added <code>Settings -&gt; GPS -&gt; Boot time sync</code>; when enabled, startup temporarily turns GPS on, waits for GPS time to sync the RTC, shows <code>GPS time synced</code>, and silently turns GPS back off if it was only enabled for the boot sync attempt.</li>\n</ul>\n"
    },
    {
      "version": "v1.15.80",
      "name": "v1.15.80",
      "datetime": "2026-05-25T13:49:01Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.80",
      "prerelease": false,
      "notes": "- **Full sound mute on startup/reset** - Saved `Sound: OFF` is now applied before the startup tone is requested, so rebooting or resetting does not produce audio while muted.",
      "notesHtml": "<ul>\n<li><strong>Full sound mute on startup/reset</strong> - Saved <code>Sound: OFF</code> is now applied before the startup tone is requested, so rebooting or resetting does not produce audio while muted.</li>\n</ul>\n"
    },
    {
      "version": "v1.15.79",
      "name": "v1.15.79",
      "datetime": "2026-05-22T14:33:07Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.79",
      "prerelease": false,
      "notes": "- **Greek text support** - Added `GR` as a message input language with Greek T9 and on-screen keyboard layouts, tonos variants for vowels.",
      "notesHtml": "<ul>\n<li><strong>Greek text support</strong> - Added <code>GR</code> as a message input language with Greek T9 and on-screen keyboard layouts, tonos variants for vowels.</li>\n</ul>\n"
    },
    {
      "version": "v1.15.78",
      "name": "v1.15.78",
      "datetime": "2026-05-22T06:19:30Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.78",
      "prerelease": false,
      "notes": "- **Off-grid repeat frequency fix** - Client/off-grid repeat now matches upstream MeshCore presets and allows only `433.000`, `869.000`, and `918.000 MHz` instead of incorrectly blocking those bands.\r\n- **Repeat preset assist** - Enabling repeat from the Radio menu now opens an off-grid preset chooser, and disabling repeat restores the previous radio settings when available.",
      "notesHtml": "<ul>\n<li><strong>Off-grid repeat frequency fix</strong> - Client/off-grid repeat now matches upstream MeshCore presets and allows only <code>433.000</code>, <code>869.000</code>, and <code>918.000 MHz</code> instead of incorrectly blocking those bands.</li>\n<li><strong>Repeat preset assist</strong> - Enabling repeat from the Radio menu now opens an off-grid preset chooser, and disabling repeat restores the previous radio settings when available.</li>\n</ul>\n"
    },
    {
      "version": "v1.15.77",
      "name": "v1.15.77",
      "datetime": "2026-05-22T04:53:46Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.77",
      "prerelease": false,
      "notes": "- **Repeater admin blank-password login** - Repeater admin login now opens a choice between `Blank password` and `Enter password`; the blank option sends an empty admin login directly for ACL-only re-login to repeaters that already know the companion device.",
      "notesHtml": "<ul>\n<li><strong>Repeater admin blank-password login</strong> - Repeater admin login now opens a choice between <code>Blank password</code> and <code>Enter password</code>; the blank option sends an empty admin login directly for ACL-only re-login to repeaters that already know the companion device.</li>\n</ul>\n"
    },
    {
      "version": "v1.15.76",
      "name": "v1.15.76",
      "datetime": "2026-05-21T19:03:54Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.76",
      "prerelease": false,
      "notes": "- **Repeater blank-password login** - Repeater guest login now opens a choice between `Blank password` and `Enter password`; the blank option sends an empty login directly for ACL-only re-login to repeaters that already know the companion device.",
      "notesHtml": "<ul>\n<li><strong>Repeater blank-password login</strong> - Repeater guest login now opens a choice between <code>Blank password</code> and <code>Enter password</code>; the blank option sends an empty login directly for ACL-only re-login to repeaters that already know the companion device.</li>\n</ul>\n"
    },
    {
      "version": "v1.15.75",
      "name": "v1.15.75",
      "datetime": "2026-05-17T18:35:35Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.15.75",
      "prerelease": false,
      "notes": "- **Mainstream sync (v1.15 backend)** - Integrated upstream companion protocol/backend changes for v1.15 without adding new on-device UI screens.\r\n- **Default flood scope compatibility** - Added persisted default flood scope name/key handling and companion protocol commands for get/set default scope, while keeping scope editing out of the local UI.\r\n- **GROUP_DATA binary packets** - Added backend send/receive support for channel binary datagrams (`CMD_SEND_CHANNEL_DATA` / `RESP_CODE_CHANNEL_DATA_RECV`) so companion apps can use the new group-data protocol.\r\n- **Protocol/version update** - Bumped companion protocol metadata to firmware protocol code `11` / `v1.15.0` and aligned radio frequency validation with upstream lower-frequency support.",
      "notesHtml": "<ul>\n<li><strong>Mainstream sync (v1.15 backend)</strong> - Integrated upstream companion protocol/backend changes for v1.15 without adding new on-device UI screens.</li>\n<li><strong>Default flood scope compatibility</strong> - Added persisted default flood scope name/key handling and companion protocol commands for get/set default scope, while keeping scope editing out of the local UI.</li>\n<li><strong>GROUP_DATA binary packets</strong> - Added backend send/receive support for channel binary datagrams (<code>CMD_SEND_CHANNEL_DATA</code> / <code>RESP_CODE_CHANNEL_DATA_RECV</code>) so companion apps can use the new group-data protocol.</li>\n<li><strong>Protocol/version update</strong> - Bumped companion protocol metadata to firmware protocol code <code>11</code> / <code>v1.15.0</code> and aligned radio frequency validation with upstream lower-frequency support.</li>\n</ul>\n"
    },
    {
      "version": "v1.14.1.73",
      "name": "v1.14.1.73",
      "datetime": "2026-03-27T18:43:07Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.14.1.73",
      "prerelease": false,
      "notes": "- **Tracker -> phone message replay fix** - Messages sent from the Wio Tracker / companion device are now queued for companion-app sync as well, so outgoing DMs and channels show up in the mobile app and can also be replayed after reconnect.\r\n- **Muted channels survive reboot** - Channel mute/unmute state is now persisted and restored after restart, so accidental Wio Tracker L1 side-button reboots do not clear muted channels.\r\n- **Private/group message mix fix** - Fixed channel history/state corruption where removing or reordering channels could let a different hashtag/private group inherit old slot history, unread state, or mute state from another channel.\r\n- **Channel send text corruption fix** - Fixed channel send/local-echo handling for app-framed messages so private/group messages no longer pick up random garbage characters from non-null-terminated payload bytes.",
      "notesHtml": "<ul>\n<li><strong>Tracker -&gt; phone message replay fix</strong> - Messages sent from the Wio Tracker / companion device are now queued for companion-app sync as well, so outgoing DMs and channels show up in the mobile app and can also be replayed after reconnect.</li>\n<li><strong>Muted channels survive reboot</strong> - Channel mute/unmute state is now persisted and restored after restart, so accidental Wio Tracker L1 side-button reboots do not clear muted channels.</li>\n<li><strong>Private/group message mix fix</strong> - Fixed channel history/state corruption where removing or reordering channels could let a different hashtag/private group inherit old slot history, unread state, or mute state from another channel.</li>\n<li><strong>Channel send text corruption fix</strong> - Fixed channel send/local-echo handling for app-framed messages so private/group messages no longer pick up random garbage characters from non-null-terminated payload bytes.</li>\n</ul>\n"
    },
    {
      "version": "v1.14.0.72",
      "name": "v1.14.0.72",
      "datetime": "2026-03-19T17:34:15Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.14.0.72",
      "prerelease": false,
      "notes": "- **Wio Tracker L1: OLED invert theme** - Added `System -> Display -> Theme` options `Black/White` and `White/Black` for SH1106 companion-radio builds, so users can switch between normal and inverted monochrome display rendering.\r\n-  **On-screen keyboard: QWERTY layout** - Changed the soft keyboard letter order from alphabetical `ABC` layout to `QWERTY` sequence for companion-radio text entry.",
      "notesHtml": "<ul>\n<li><strong>Wio Tracker L1: OLED invert theme</strong> - Added <code>System -&gt; Display -&gt; Theme</code> options <code>Black/White</code> and <code>White/Black</code> for SH1106 companion-radio builds, so users can switch between normal and inverted monochrome display rendering.</li>\n<li><strong>On-screen keyboard: QWERTY layout</strong> - Changed the soft keyboard letter order from alphabetical <code>ABC</code> layout to <code>QWERTY</code> sequence for companion-radio text entry.</li>\n</ul>\n"
    },
    {
      "version": "v1.14.0.69",
      "name": "v1.14.0.69",
      "datetime": "2026-03-06T17:15:21Z",
      "url": "https://github.com/sosprz/Meshcore-Wio-Tracker-L1-Pro/releases/tag/v1.14.0.69",
      "prerelease": false,
      "notes": "- **Mainstream sync (v1.14.0)** - Merged upstream \r\n- **Screen lock hardening (3x PREV bug fix)** - Triple-click `PREV` no longer cycles `Sound` levels while `Screen lock` is active.",
      "notesHtml": "<ul>\n<li><strong>Mainstream sync (v1.14.0)</strong> - Merged upstream </li>\n<li><strong>Screen lock hardening (3x PREV bug fix)</strong> - Triple-click <code>PREV</code> no longer cycles <code>Sound</code> levels while <code>Screen lock</code> is active.</li>\n</ul>\n"
    }
  ],
  "changelogSource": "github",
  "changelogUpdatedAt": "2026-07-20T21:14:11.252Z",
  "deviceFamilies": [
    {
      "id": "seeed-wio-tracker-l1",
      "label": "Wio Tracker L1"
    }
  ],
  "primaryFamily": {
    "id": "seeed-wio-tracker-l1",
    "label": "Wio Tracker L1"
  },
  "scopeGroup": "Wio Tracker L1"
}
