flasher.meshcore.dev/config.json

4754 lines
145 KiB
JSON
Raw Permalink Normal View History

2025-02-23 10:19:53 +01:00
{
2026-01-10 23:15:50 +01:00
"staticPath": "/firmware",
"role": {
"meshos": {
"icon": "dashboard",
"title": "MeshOS"
},
2026-01-10 23:15:50 +01:00
"gui": {
"icon": "gradient",
"title": "Ripple GUI",
"tooltip": "all your device settings are saved on internal flash"
},
"guiSD": {
"icon": "gradient",
"title": "Ripple GUI: data on SD card",
"tooltip": "all your device settings are saved on SD card"
},
"companionBle": {
"icon": "smartphone",
"title": "Companion",
"subTitle": "Bluetooth",
"tooltip": "Chat via mobile phone App or Web Client - Radio can only connect via Bluetooth"
},
"companionUsb": {
"icon": "usb",
"title": "Companion",
"subTitle": "USB",
"tooltip": "Chat via Web client or command line client - Radio can only connect via USB"
},
"repeater": {
"icon": "cell_tower",
"title": "Repeater",
"tooltip": "Special role just for routing packets. Configured via Config/Console on flasher main page"
},
"roomServer": {
"icon": "forum",
"title": "Room Server",
"tooltip": "Special role for local room server. Configured via Config/Console on flasher main page"
}
},
"notice": {
"otafixRecommended": "<article class='tertiary-container'>We strongly recommend installing <a target='_blank' href='/firmware/${bootloader}'>OTAFIX bootloader</a> for more reliable Bluetooth OTA DFU. <a target='_blank' href='https://github.com/meshcore-dev/MeshCore/blob/main/docs/faq.md#73-q-is-there-a-way-to-lower-the-chance-of-a-failed-ota-device-firmware-update-dfu'>Read more</a></article>",
"otafixNeeded": "<article class='tertiary-container'>WARNING: We strongly recommend installing <a target='_blank' href='/firmware/${bootloader}'>OTAFIX bootloader</a> if you plan to update firmware via OTA bluetooth, as factory bootloader does not support it! <a target='_blank' href='https://github.com/meshcore-dev/MeshCore/blob/main/docs/faq.md#73-q-is-there-a-way-to-lower-the-chance-of-a-failed-ota-device-firmware-update-dfu'>Read more</a></article>"
},
2026-01-10 23:15:50 +01:00
"maker": {
"elecrow": {
"name": "Elecrow"
},
"heltec": {
"name": "Heltec"
},
"seeed": {
"name": "Seeed Studio"
},
"rak": {
"name": "RAK Wireless"
},
"promicro": {
"name": "ProMicro"
},
"lilygo": {
"name": "LilyGo"
},
"raspberry": {
"name": "Raspberry Pi"
}
},
"device": [
{
"maker": "heltec",
"class": "ripple",
"name": "Heltec v4 + Expansion Kit (Touch)",
"tooltip": "<img class='device' src='/img/heltec_v4_exp.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "gui",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-HeltecV4-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-HeltecV4-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* faster map rendering\n* Bandwidth 500 support\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/491480'>Full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-HeltecV4-ExpKit-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-HeltecV4-ExpKit-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/491480'>Full changelog</a></b>"
}
}
}
]
},
2026-01-10 23:15:50 +01:00
{
"maker": "lilygo",
"class": "ripple",
"name": "LilyGo T-Deck",
"tooltip": "<img class='device' src='/img/lilygo_tdeck.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "gui",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* faster map rendering\n* Bandwidth 500 support\n* trackball crash fix\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/361676'>Full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/361676'>Full changelog</a></b>"
},
2026-01-10 23:15:50 +01:00
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.12-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.12.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Vibe pref now saved\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by \n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.11": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.11-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.11.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New: Kid Mode and remote admin\n* message details, ENTER to goto next message\n* Group channel message rendering improved"
},
"v7.10": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.10.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New network: region presets\n* Security: new PIN Lock Screen\n* Pixel art: improved colour picker\n* Message details: new Show on Map menu\n* New clipboard system: long press for copy/paste"
},
"v7.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max group channels now 4\n* Auto channel support (name starting with #)\n* Home Screen: $ key jumps to next contact with unread > 0\n* New message details screen (scroll up to msg, then select)\n* GPS Config screen redesign\n* Home Screen, tap on top-right of screen opens GPS Info\n* Repeater and room server admin CLI: added “setperm” and “get acl” support"
},
"v7.7": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max contacts now doubled\n* Only (home) contacts can now DM you\n* Home Screen, swipe left/right to go thru filters\n* Identity screen: new advert location pref\n* New “Permissions” screen: set Telemetry permissions\n* Map view: new “Set Advert Loc” menu.\n* Canned Message: special “< prev msg>” item (re-type last msg)"
},
"v7.6": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.6.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* \"Multi ACKs\" support (Optimise menu)\n* Advert path details (from node details screen)\n* Group channel chats, message path details\n* Home menu: Brightness DAY/NIGHT\n* Canned Messages support\n* MeshCore lib updates/fixes"
},
"v7.5": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sensor node support\n* Preamble now 16\n* Home Screen: node ID prefixes displayed\n* Discover list: space to toggle ID prefixes"
},
"v7.4": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.4-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.4.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Discover, Node details now shows advert path\n* New GPS telemetry permissions: ALLOW:Home, ALLOW:All\n* Group channel outbound messages now with confirmation counters\n* T-Deck Plus (new keyboard model) auto backlight on/off\n* Map labels now non-overlapping\n* Network profiles now with customisable BW and CR"
},
"v7.3": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-v7.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-v7.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* GPS tracks!\n* Optimise menu: Interference threshold, AGC reset interval"
},
"v7.1": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-UKStore-v7.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-UKStore-v7.1.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Channel details hex or base64 input\n* Screen off long press shortened to 1 sec\n* A-Z key press now jumps to contacts\n* @ key now refreshes/reorders list by most recent advert\n* MeshCore lib updates/fixes\n* better Help/Tutorial screens"
},
"v7.0": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-UKStore-v7.0-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-UKStore-v7.0.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Saved paths, manual set path,\n* Trackball press is now select, long press for screen off,\n* Room keep-alive packets now not sent,\n* Discover screen, max now 140,\n* New customisable sounds: new-advert.mp3, existing-advert.mp3"
},
"v6.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-UKStore-v6.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-UKStore-v6.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sound and other prefs now persisted\n* New “Show on Map” conversation menu\n* MeshCore lib fixes"
},
"v6.8": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-UKStore-v6.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-UKStore-v6.8.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Repeater & Room UI redesign\n* Room, admin CLI now from menu"
},
"v6.7": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-v6.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-v6.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Public channel auto-configured (new profiles)\n* Telemetry support (location, online indicator)\n* Rooms, unsynced counter (green)\n* Room stats dialog\n* Discover, Send ID Broadcast menu"
},
"v6.6": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-v6.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-v6.6.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* now saves repeater and room server passwords.\n* New 'auto advert ON/OFF' option"
},
"v6.5": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-v6.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-v6.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Existing profiles have SF editable"
},
"v6.3": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-v6.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-v6.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* BUG Fix: advert verify caused memory corruption"
},
"v6.2": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-v6.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-v6.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
]
},
"v6.0-beta22": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-v6.0-beta22-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-v6.0-beta22.bin",
"title": "App firmware bin (use with m5 booloader)"
}
]
}
}
},
{
"role": "guiSD",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* faster map rendering\n* Bandwidth 500 support\n* trackball crash fix\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/361676'>Full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/361676'>Full changelog</a></b>"
},
2026-01-10 23:15:50 +01:00
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.12-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.12.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Vibe pref now saved\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by \n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.11": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.11-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.11.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New: Kid Mode and remote admin\n* message details, ENTER to goto next message\n* Group channel message rendering improved"
},
"v7.10": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.10.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New network: region presets\n* Security: new PIN Lock Screen\n* Pixel art: improved colour picker\n* Message details: new Show on Map menu\n* New clipboard system: long press for copy/paste"
},
"v7.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max group channels now 4\n* Auto channel support (name starting with #)\n* Home Screen: $ key jumps to next contact with unread > 0\n* New message details screen (scroll up to msg, then select)\n* GPS Config screen redesign\n* Home Screen, tap on top-right of screen opens GPS Info\n* Repeater and room server admin CLI: added “setperm” and “get acl” support"
},
"v7.7": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max contacts now doubled\n* Only (home) contacts can now DM you\n* Home Screen, swipe left/right to go thru filters\n* Identity screen: new advert location pref\n* New “Permissions” screen: set Telemetry permissions\n* Map view: new “Set Advert Loc” menu.\n* Canned Message: special “< prev msg>” item (re-type last msg)"
},
"v7.6": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.6.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* \"Multi ACKs\" support (Optimise menu)\n* Advert path details (from node details screen)\n* Group channel chats, message path details\n* Home menu: Brightness DAY/NIGHT\n* Canned Messages support\n* MeshCore lib updates/fixes"
},
"v7.5": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sensor node support\n* Preamble now 16\n* Home Screen: node ID prefixes displayed\n* Discover list: space to toggle ID prefixes"
},
"v7.4": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.4-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.4.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Discover, Node details now shows advert path\n* New GPS telemetry permissions: ALLOW:Home, ALLOW:All\n* Group channel outbound messages now with confirmation counters\n* T-Deck Plus (new keyboard model) auto backlight on/off\n* Map labels now non-overlapping\n* Network profiles now with customisable BW and CR"
},
"v7.3": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-v7.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-v7.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* GPS tracks!\n* Optimise menu: Interference threshold, AGC reset interval"
},
"v7.1": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-UKStore-v7.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-UKStore-v7.1.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Channel details hex or base64 input\n* Screen off long press shortened to 1 sec\n* A-Z key press now jumps to contacts\n* @ key now refreshes/reorders list by most recent advert\n* MeshCore lib updates/fixes\n* better Help/Tutorial screens"
},
"v7.0": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-UKStore-v7.0-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-UKStore-v7.0.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Saved paths, manual set path,\n* Trackball press is now select, long press for screen off,\n* Room keep-alive packets now not sent,\n* Discover screen, max now 140,\n* New customisable sounds: new-advert.mp3, existing-advert.mp3"
},
"v6.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-UKStore-v6.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-UKStore-v6.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sound and other prefs now persisted\n* New “Show on Map” conversation menu\n* MeshCore lib fixes"
},
"v6.8": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeck-SD-UKStore-v6.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeck-SD-UKStore-v6.8.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Repeater & Room UI redesign\n* Room, admin CLI now from menu"
},
"v6.7": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-SD-v6.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-SD-v6.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Public channel auto-configured (new profiles)\n* Telemetry support (location, online indicator)\n* Rooms, unsynced counter (green)\n* Room stats dialog\n* Discover, Send ID Broadcast menu"
},
"v6.6": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-SD-v6.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-SD-v6.6.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* now saves repeater and room server passwords.\n* New 'auto advert ON/OFF' option"
},
"v6.5": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-SD-v6.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-SD-v6.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Existing profiles have SF editable"
},
"v6.3": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-SD-v6.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-SD-v6.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* BUG Fix: advert verify caused memory corruption"
},
"v6.2": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-SD-v6.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-SD-v6.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
]
},
"v6.0-beta22": {
"files": [
{
"type": "flash-wipe",
"name": "RippleUltra-TDeck-SD-v6.0-beta22-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "RippleUltra-TDeck-SD-v6.0-beta22.bin",
"title": "App firmware bin (use with m5 booloader)"
}
]
}
}
}
]
},
{
"maker": "lilygo",
"class": "ripple",
"name": "LilyGo T-Deck Pro",
"tooltip": "<img class='device' src='/img/lilygo_tdeck_pro.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "gui",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\nv9.0 changes:\n*support for v1.0 and v1.1 hardware models (separate .bin files in zip)\n* Discover list now overwrites oldest entry if full\n* new UI: customisable home icon grid, and new icon grid menus\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/450194'>Full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/450194'>Full changelog</a></b>"
},
2026-01-10 23:15:50 +01:00
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.12-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.12.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Vibe pref now saved\n* Display off pref (to locked screen)\n* UI style updates\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by\n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.11": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.11-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.11.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New: Kid Mode and remote admin\n* message details, ENTER to goto next message\n* Group channel message rendering improved"
},
"v7.10": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.10.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New network: region presets\n* Security: new PIN Lock Screen\n* Map view: keys 0..9 change map contrast\n* Message details: new Show on Map menu\n* New clipboard system: long press for copy/paste\n* Locked screen redesign\n* LED alert option: now flashes keyboard backlight"
},
"v7.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max group channels now 4\n* Auto channel support (name starting with #)\n* Home Screen: $ key jumps to next contact with unread > 0\n* Home Screen, tap on top-right of screen opens GPS Info\n* Repeater and room server admin CLI: added “setperm” and “get acl” support\n* Map tiles dir now “/tiles-bw” (or “/tiles” as fallback)"
},
"v7.8": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.8.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Map support!\n* GPS Config screen fixed\n* Lock screen, current date added\n* Various screen layout fixes"
},
"v7.7": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-v7.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-v7.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Initial release"
}
}
},
{
"role": "guiSD",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\nv9.0 changes:\n*support for v1.0 and v1.1 hardware models (separate .bin files in zip)\n* Discover list now overwrites oldest entry if full\n* new UI: customisable home icon grid, and new icon grid menus\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/450194'>Full changelog</a></b>"
},
2026-01-10 23:15:50 +01:00
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.12-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.12.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Vibe pref now saved\n* Display off pref (to locked screen)\n* UI style updates\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by\n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.11": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.11-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.11.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New: Kid Mode and remote admin\n* message details, ENTER to goto next message\n* Group channel message rendering improved"
},
"v7.10": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.10.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New network: region presets\n* Security: new PIN Lock Screen\n* Map view: keys 0..9 change map contrast\n* Message details: new Show on Map menu\n* New clipboard system: long press for copy/paste\n* Locked screen redesign\n* LED alert option: now flashes keyboard backlight"
},
"v7.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max group channels now 4\n* Auto channel support (name starting with #)\n* Home Screen: $ key jumps to next contact with unread > 0\n* Home Screen, tap on top-right of screen opens GPS Info\n* Repeater and room server admin CLI: added “setperm” and “get acl” support\n* Map tiles dir now “/tiles-bw” (or “/tiles” as fallback)"
},
"v7.8": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.8.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Map support!\n* GPS Config screen fixed\n* Lock screen, current date added\n* Various screen layout fixes"
},
"v7.7": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckPro-SD-v7.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckPro-SD-v7.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Initial release"
}
}
},
2026-01-10 23:15:50 +01:00
{
"role": "gui",
"title": "Ripple GUI (T-Deck Pro v1.1)",
2026-01-10 23:15:50 +01:00
"version": {
"v9.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckProV11-v9.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckProV11-v9.2.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\nv9.0 changes:\n*support for v1.0 and v1.1 hardware models (separate .bin files in zip)\n* Discover list now overwrites oldest entry if full\n* new UI: customisable home icon grid, and new icon grid menus\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/450194'>Full changelog</a></b>"
}
}
},
{
"role": "guiSD",
"title": "Ripple GUI: data on SD card (T-Deck Pro v1.1)",
"version": {
"v9.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDeckProV11-SD-v9.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDeckProV11-SD-v9.2.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\nv9.0 changes:\n*support for v1.0 and v1.1 hardware models (separate .bin files in zip)\n* Discover list now overwrites oldest entry if full\n* new UI: customisable home icon grid, and new icon grid menus\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/450194'>Full changelog</a></b>"
}
}
}
]
},
{
"maker": "lilygo",
"class": "ripple",
"name": "LilyGo T5 E-Paper S3 Pro (H752-XX)",
"tooltip": "<img class='device' src='/img/lilygo_t5_pro.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "gui",
"version": {
"v9.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-T5Pro-v9.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-T5Pro-v9.2.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\n<b><a target='blank' href='https://buymeacoffee.com/ripplebiz/e/478441'>full changelog</a></b>"
2026-01-10 23:15:50 +01:00
},
"v8.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-T5Pro-v8.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-T5Pro-v8.2.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v8.2 changes:\n* updated UI colour scheme\n* new Regions screen, with 'Scan Local' menu\n* new 'Owner Info' menu, from Discover > Scan Local\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/478441'>Full changelog</a></b>"
}
}
}
]
},
{
"maker": "lilygo",
"class": "ripple",
"name": "LilyGo T-Lora Pager",
"tooltip": "<img class='device' src='/img/lilygo_pager.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "gui",
"title": "[SX1262] Ripple GUI",
"version": {
"v9.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SX1262-v9.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SX1262-v9.2.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\n<b><a target='blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>full changelog</a></b>"
2026-01-10 23:15:50 +01:00
},
"v8.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-sx1262-v8.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-sx1262-v8.2.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>Full changelog</a></b>"
2026-01-10 23:15:50 +01:00
},
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-sx1262-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-sx1262-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.12-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.12.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Vibe pref now saved\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by\n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.11": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.11-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.11.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New: Kid Mode and remote admin\n* message details, ENTER to goto next message\n* Group channel message rendering improved"
},
"v7.10": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.10.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New network: region presets\n* Security: new PIN Lock Screen\n* Channel details: “Type #’” menu\n* Message details: new Show on Map menu\n* New clipboard system: long press scroll wheel for copy/paste"
},
"v7.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max group channels now 4\n* Auto channel support (name starting with #)\n* Scroll wheel disabled while screen off\n* Keyboard backlight now flashes on new message (config via LED menu option)\n* Home Screen: $ key jumps to next contact with unread > 0\n* New message details screen (scroll up to msg, then select)\n* GPS Config screen redesign\n* Home Screen, tap on top-right of screen opens GPS Info\n* Repeater and room server admin CLI: added “setperm” and “get acl” support"
},
"v7.7": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max contacts now doubled\n* Only (home) contacts can now DM you\n* Home Screen, . and , keys to go thru filters\n* Identity screen: new advert location pref\n* New “Permissions” screen: set Telemetry permissions\n* Canned Message: special “< prev msg>” item (re-type last msg)\n* Long press Enter and Backspace now more snappy\n* New GPS power ON / OFF setting\n* New Brightness: DAY / NIGHT setting"
},
"v7.6": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.6.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* \"Multi ACKs\" support (Optimise menu)\n* Advert path details (from node details screen)\n* Group channel chats, message path details\n* Home menu: Brightness DAY/NIGHT\n* Canned Messages support\n* MeshCore lib updates/fixes"
},
"v7.5": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sensor node support\n* Map panning, keys: W,S,A,D\n* Preamble now 16\n* Home Screen: node ID prefixes displayed\n* Discover list: space to toggle ID prefixes"
},
"v7.4": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.4-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.4.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Discover, Node details now shows advert path\n* New GPS telemetry permissions: ALLOW:Home, ALLOW:All\n* Group channel outbound messages now with confirmation counters\n* Map labels now non-overlapping\n* Network profiles now with customisable BW and CR"
},
"v7.3": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-v7.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-v7.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* GPS tracks!\n* Optimise menu: Interference threshold, AGC reset interval"
},
"v7.1": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-UKStore-v7.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-UKStore-v7.1.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Channel details hex or base64 input\n* A-Z key press now jumps to contacts\n* @ key now refreshes/reorders list by most recent advert\n* MeshCore lib updates/fixes"
},
"v7.0": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-UKStore-v7.0-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-UKStore-v7.0.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Initial release"
}
}
},
{
"role": "guiSD",
"title": "[SX1262] Ripple GUI: data on SD card",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SX1262-SD-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SX1262-SD-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\n<b><a target='blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-sx1262-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-sx1262-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>Full changelog</a></b>"
},
2026-01-10 23:15:50 +01:00
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-sx1262-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-sx1262-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.12-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.12.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Vibe pref now saved\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by \n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.11": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.11-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.11.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New: Kid Mode and remote admin\n* message details, ENTER to goto next message\n* Group channel message rendering improved"
},
"v7.10": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.10.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* New network: region presets\n* Security: new PIN Lock Screen\n* Channel details: “Type #’” menu\n* Message details: new Show on Map menu\n* New clipboard system: long press scroll wheel for copy/paste"
},
"v7.9": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.9-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.9.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max group channels now 4\n* Auto channel support (name starting with #)\n* Scroll wheel disabled while screen off\n* Keyboard backlight now flashes on new message (config via LED menu option)\n* Home Screen: $ key jumps to next contact with unread > 0\n* New message details screen (scroll up to msg, then select)\n* GPS Config screen redesign\n* Home Screen, tap on top-right of screen opens GPS Info\n* Repeater and room server admin CLI: added “setperm” and “get acl” support"
},
"v7.7": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.7.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Max contacts now doubled\n* Only (home) contacts can now DM you\n* Home Screen, . and , keys to go thru filters\n* Identity screen: new advert location pref\n* New “Permissions” screen: set Telemetry permissions\n* Canned Message: special “< prev msg>” item (re-type last msg)\n* Long press Enter and Backspace now more snappy\n* New GPS power ON / OFF setting\n* New Brightness: DAY / NIGHT setting"
},
"v7.5": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sensor node support\n* Map panning, keys: W,S,A,D\n* Preamble now 16\n* Home Screen: node ID prefixes displayed\n* Discover list: space to toggle ID prefixes"
},
"v7.4": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.4-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.4.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Discover, Node details now shows advert path\n* New GPS telemetry permissions: ALLOW:Home, ALLOW:All\n* Group channel outbound messages now with confirmation counters\n* Map labels now non-overlapping\n* Network profiles now with customisable BW and CR"
},
"v7.3": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-v7.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-v7.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* GPS tracks!\n* Optimise menu: Interference threshold, AGC reset interval"
},
"v7.1": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-UKStore-v7.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-UKStore-v7.1.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Channel details hex or base64 input\n* A-Z key press now jumps to contacts\n* @ key now refreshes/reorders list by most recent advert\n* MeshCore lib updates/fixes"
},
"v7.0": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-UKStore-v7.0-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-UKStore-v7.0.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Initial release"
}
}
},
{
"role": "gui",
"title": "[LR1121] Ripple GUI",
"version": {
"v9.2": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-LR1121-v9.2-merged.bin",
2026-01-10 23:15:50 +01:00
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-LR1121-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\n<b><a target='blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-LR1121-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-LR1121-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>Full changelog</a></b>"
},
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-LR1121-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-LR1121-v7.14.bin",
2026-01-10 23:15:50 +01:00
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
}
}
},
{
"role": "guiSD",
"title": "[LR1121] Ripple GUI: data on SD card",
"version": {
"v9.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-LR1121-SD-v9.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-LR1121-SD-v9.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "v9.2 changes:\n* multibyte path hash support\n\nv9.1 changes:\n* Off-grid (client repeat) mode\n* Bandwidth 500 support\n\n<b><a target='blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>full changelog</a></b>"
},
"v8.2": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-LR1121-v8.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-LR1121-v8.2.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/415984'>Full changelog</a></b>"
},
2026-01-10 23:15:50 +01:00
"v7.14": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TPager-SD-LR1121-v7.14-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TPager-SD-LR1121-v7.14.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
}
}
}
]
},
{
"maker": "lilygo",
"class": "ripple",
"name": "LilyGo T-Display Pro",
"icon": "/img/esp_now.svg",
"tooltip": "<img class='device' src='/img/lilygo_tdisplay.svg'>",
"type": "esp32",
"firmware": [
{
"role": "gui",
"version": {
"v7.5": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-ESPNOW-TDisplayPro-v7.5-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-ESPNOW-TDisplayPro-v7.5.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Sensor node support\n* LoRa spreading factor now 16\n* Home Screen: node ID prefixes displayed\n* Discover, Node details now shows advert path\n* new GPS telemetry permissions: ALLOW:Home, ALLOW:All\n* group channel outbound messages now with confirmation counters\n* map labels now non-overlapping\n* network profiles now with customisable BW and CR\n* GPS tracks!\n* Optimise menu: Interference threshold, AGC reset interval\n* Channel details hex or base64 input"
},
"v6.8": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TDisplayPro-ESPNOW-UKStore-v6.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TDisplayPro-ESPNOW-UKStore-v6.8.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Repeater & Room UI redesign\n* Room, admin CLI now from menu"
}
}
}
]
},
{
"maker": "lilygo",
"class": "ripple",
"name": "LilyGo T-Watch S3 Plus",
"tooltip": "<img class='device' src='/img/lilygo_twatch_plus.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "gui",
"version": {
"v9.3": {
"files": [
{
"type": "flash-wipe",
"name": "Ultra-TWatchS3Plus-v9.3.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "Ultra-TWatchS3Plus-v9.3.bin",
"title": "App firmware bin (use with m5 booloader)"
}
],
"notes": "* Power saving added (battery life from ~12 hr to ~20 hr)\n* Stopwatch and countdown Timer home screen widgets\n* Help tutorial screens"
}
}
}
]
},
{
"maker": "seeed",
"class": "ripple",
"name": "Seeed Studio Wio Tracker L1 Pro",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/wio_tracker_l1.svg'>",
"type": "nrf52",
"erase": "WioTrackerL1_QSPIFlash_Format-v1.2.zip",
"bootloader": "wio_tracker_l1_bootloader-0.9.2-OTAFIX2.1.uf2",
"firmware": [
{
"role": "gui",
"version": {
"v8.2": {
"files": [
{
"type": "download",
"name": "Ultra-WioTrackerL1-v8.2.uf2",
"title": "UF2 file for manual USB DFU mass storage update"
},
{
"type": "flash-update",
"name": "Ultra-WioTrackerL1-v8.2.zip",
"title": "App firmware"
}
],
"notes": "* Updated UI colour scheme\n* New Regions screen, with 'Scan Local' menu\n* New 'Owner Info' menu, from Discover > Scan Local\n\n<b><a target='_blank' href='https://buymeacoffee.com/ripplebiz/e/469784'>Full changelog</a></b>"
},
"v7.14": {
"files": [
{
"type": "download",
"name": "Ultra-WioTrackerL1-v7.14.uf2",
"title": "UF2 file for manual USB DFU mass storage update"
},
{
"type": "flash-update",
"name": "Ultra-WioTrackerL1-v7.14.zip",
"title": "App firmware"
}
],
"notes": "* NEW: 'Scan Local' menu in Discover\n* Message text: now converts accented chars to ASCII equivalent\n* Popular emojis now converted, eg ':thumbsup'\n* Contacts can be tagged and custom notes added\n* Repeater CLI, 'neighbors' command now using binary req/resp\n* Max group channels now upped to 6\n* Bug fix: some CLI responses were lost from dup timestamp.\n* #channel key calc now forces lowercase\n* Better canned messages for CLI screens\n* Group channel message, 'Reply To' menu\n* Kid Mode: now supports up to 1 group channel chat"
},
"v7.12.1": {
"files": [
{
"type": "download",
"name": "Ultra-WioTrackerL1-v7.12.1.uf2",
"title": "UF2 file for manual USB DFU mass storage update"
},
{
"type": "flash-update",
"name": "Ultra-WioTrackerL1-v7.12.1.zip",
"title": "App firmware"
}
],
"notes": "* Battery scale fix\n* UI style updates\n* Remote admin prefixes, extra spaces allowed\n* Presets updated\n* Msg details: heard by\n* Repeater and room CLI: “get” command (get full telemetry)\n* Channel details: Alerts ON/OFF menu"
},
"v7.12": {
"files": [
{
"type": "download",
"name": "Ultra-WioTrackerL1-v7.12.uf2",
"title": "UF2 file for manual USB DFU mass storage update"
},
{
"type": "flash-update",
"name": "Ultra-WioTrackerL1-v7.12.zip",
"title": "App firmware"
}
],
"notes": "* Fixed PIN unlock screen\n* Added kid mode support\n* Repeater and Room CLI: new \"get\" command for full telemetry fetch"
}
}
}
]
},
{
"maker": "lilygo",
"class": "meshos",
"name": "LilyGo T-Deck",
"tooltip": "<img class='device' src='/img/lilygo_tdeck.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "meshos",
"version": {
"v1.1.8": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.8.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.8.zip",
"title": "SD Update zip"
}
],
"notes": "* Better compatibility with MeshCore app\n* Channels increased to 20 when used with the app\n* Low memory messages fix\n* other bug fixes"
},
"v1.1.7": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.7.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.7.zip",
"title": "SD Update zip"
}
],
"notes": "* Bluetooth companion (Beta)\n* Improved heard list\n* bug fixes\n* SD card discovery/heard storage"
},
"v1.1.6": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.6.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.6.zip",
"title": "SD Update zip"
}
],
"notes": "* Bluetooth companion (Beta)\n* Improved heard list\n* bug fixes\n* SD card discovery/heard storage"
},
"v1.1.3": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.3-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.3.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.3.zip",
"title": "SD Update zip"
}
],
"notes": "* UI Optimsiations\n* PSK Channel entry (channel 5)\n* Bugfixes"
},
"v1.1.2": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.2-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.2.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.2.zip",
"title": "SD Update zip"
}
],
"notes": "* Timezone fixes\n* Home & Lock Screen Wallpaper settings\n* Terminal buffer increased\n* Bugfixes"
},
"v1.1.1": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.1.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.1.zip",
"title": "SD Update zip"
}
],
"notes": "* Map Fixes\n* Notification optimisations\n* Other fixes"
},
"v1.1.0": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.1.0-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.1.0.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.1.0.zip",
"title": "SD Update zip"
}
],
"notes": "* DM UI updated for easier DM chat, badge message notifications.\n* DM notifications on homescreen.\n* Emoji fixes.\n* 179 extra glyphs added to the main font to support text display for 9 countries/regions.\n* International keyboard support for 9 countries/regions.\n* GPS Time Sync update.\n* Tile support for maps in zoom view.\n* Lots of bug fixes, tweaks etc."
},
"v1.0.10": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.0.10-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.0.10.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TDeck-1.0.10.zip",
"title": "SD Update zip"
}
],
"notes": "* Path set for contacts fixed.\n* Added delete contacts, repeaters, rooms from the contact details panel.\n* Bulk delete repeaters, rooms, chat with /clearcontacts repeaters|rooms|chat\n* Radio Profiles updated to match most recent MeshCore App profiles.\n* Map bug that showed wierd UK outline when no GPS was set.\n* Keyboard backlight fix when AOD off and device wakes. (T-Deck + with new KB only)\n* Low entropy key fix."
},
"v1.0.8": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDeck-1.0.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDeck-1.0.8.bin",
"title": "App firmware bin"
}
],
"notes": "* Initial release"
}
}
}
]
},
{
"maker": "lilygo",
"class": "meshos",
"name": "LilyGo T-Lora Pager",
"tooltip": "<img class='device' src='/img/lilygo_pager.svg'>",
"icon": "/img/lora.svg",
"type": "esp32",
"firmware": [
{
"role": "meshos",
"version": {
"v1.1.8": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TPager-1.1.8-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TPager-1.1.8.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TPager-1.1.8.zip",
"title": "SD Update zip"
}
],
"notes": "* Better compatibility with MeshCore app\n* Channels increased to 20 when used with the app\n* Low memory messages fix\n* other bug fixes"
},
"v1.1.7": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TPager-1.1.7-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TPager-1.1.7.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TPager-1.1.7.zip",
"title": "SD Update zip"
}
],
"notes": "* Bug fixes\n* Update compatibility with MeshOS android app\n* Contacts fixed for official MeshCore app"
},
"v1.1.6": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TPager-1.1.6-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TPager-1.1.6.bin",
"title": "App firmware bin"
},
{
"type": "download",
"name": "MeshOS-TPager-1.1.6.zip",
"title": "SD Update zip"
}
],
"notes": "* Initial release"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "lilygo",
"class": "meshos",
"name": "LilyGo T-Display P4",
"tooltip": "<img class='device' src='/img/lilygo_tdisplay_p4.svg'>",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"type": "esp32",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "meshos",
"title": "MeshOS (AMOLED Version)",
2026-01-10 23:15:50 +01:00
"version": {
"v1.0.1": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDisplay-P4-1.0.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
2026-01-10 23:15:50 +01:00
},
{
"type": "flash-update",
"name": "MeshOS-TDisplay-P4-1.0.1.bin",
"title": "App firmware bin"
2026-01-10 23:15:50 +01:00
}
],
"notes": "* Channel Delete\n* Multibyte Path setting\n* GPS Manual Position\n* PTT app"
2026-01-10 23:15:50 +01:00
},
"v1.0.0": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-V1.0.0-Tdisplay-p4-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
2026-01-10 23:15:50 +01:00
},
{
"type": "flash-update",
"name": "MeshOS-V1.0.0-Tdisplay-p4.bin",
"title": "App firmware bin"
2026-01-10 23:15:50 +01:00
}
],
"notes": "* Initial release"
}
}
},
{
"role": "meshos",
"title": "MeshOS (LCD Version)",
"version": {
"v1.0.1": {
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-TDisplay-P4-LCD-1.0.1-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
},
{
"type": "flash-update",
"name": "MeshOS-TDisplay-P4-LCD-1.0.1.bin",
"title": "App firmware bin"
}
],
"notes": "* Channel Delete\n* Multibyte Path setting\n* GPS Manual Position\n* PTT app"
2026-01-10 23:15:50 +01:00
},
"v1.0.0": {
2026-01-10 23:15:50 +01:00
"files": [
{
"type": "flash-wipe",
"name": "MeshOS-V1.0.0-Tdisplay-p4-LCD-merged.bin",
"title": "Combined app+partition+bootloader firmware bin"
2026-01-10 23:15:50 +01:00
},
{
"type": "flash-update",
"name": "MeshOS-V1.0.0-Tdisplay-p4-LCD.bin",
"title": "App firmware bin"
2026-01-10 23:15:50 +01:00
}
],
"notes": "* Initial release"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T3 S3 (SX126x)",
"group": "LilyGo T3 S3",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_t3s3.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1262_companion_radio_ble.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1262_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1262_companion_radio_usb.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1262_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1262_[rR]epeater.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1262_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1262_room_server.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1262_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T3 S3 (SX127x)",
"group": "LilyGo T3 S3",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_t3s3.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1276_companion_radio_ble.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1276_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1276_companion_radio_usb.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1276_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1276_[rR]epeater.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1276_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "LilyGo_T3S3_sx1276_room_server.*?-merged\\.bin",
"flash-update": "LilyGo_T3S3_sx1276_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T-Beam (SX1262)",
"group": "LilyGo T-Beam",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_tbeam.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Tbeam_SX1262_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Tbeam_SX1262_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Tbeam_SX1262_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Tbeam_SX1262_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Tbeam_SX1262_[rR]epeater.*?-merged\\.bin",
"flash-update": "Tbeam_SX1262_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Tbeam_SX1262_room_server.*?-merged\\.bin",
"flash-update": "Tbeam_SX1262_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T-Beam 1.2 (SX1276)",
"group": "LilyGo T-Beam",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_tbeam.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Tbeam(_SX1276)?_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Tbeam(_SX1276)?_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Tbeam(_SX1276)?_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Tbeam(_SX1276)?_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Tbeam(_SX1276)?_[rR]epeater.*?-merged\\.bin",
"flash-update": "Tbeam(_SX1276)?_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Tbeam(_SX1276)?_room_server.*?-merged\\.bin",
"flash-update": "Tbeam(_SX1276)?_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T-Beam Supreme (SX1262)",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_tbeam_supreme.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "T_Beam_S3_Supreme_SX1262_companion_radio_ble.*?-merged\\.bin",
"flash-update": "T_Beam_S3_Supreme_SX1262_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "T_Beam_S3_Supreme_SX1262_companion_radio_usb.*?-merged\\.bin",
"flash-update": "T_Beam_S3_Supreme_SX1262_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "T_Beam_S3_Supreme_SX1262_[rR]epeater.*?-merged\\.bin",
"flash-update": "T_Beam_S3_Supreme_SX1262_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "T_Beam_S3_Supreme_SX1262_room_server.*?-merged\\.bin",
"flash-update": "T_Beam_S3_Supreme_SX1262_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T-Deck (community)",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_tdeck.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_TDeck_companion_radio_ble.*?-merged\\.bin",
"flash-update": "LilyGo_TDeck_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_TDeck_companion_radio_usb.*?-merged\\.bin",
"flash-update": "LilyGo_TDeck_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "LilyGo_TDeck_[rR]epeater.*?-merged\\.bin",
"flash-update": "LilyGo_TDeck_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "LilyGo_TDeck_room_server.*?-merged\\.bin",
"flash-update": "LilyGo_TDeck_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T-Echo",
"icon": "/img/lora.svg",
"type": "nrf52",
"erase": "LilyGo_T-Echo_QSPIFlash_Format-v1.2.zip",
"tooltip": "<img class='device' src='/img/lilygo_techo.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "LilyGo_T-Echo_companion_radio_ble.*?\\.zip",
"download": "LilyGo_T-Echo_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "LilyGo_T-Echo_companion_radio_usb.*?\\.zip",
"download": "LilyGo_T-Echo_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "LilyGo_T-Echo_[rR]epeater.*?\\.zip",
"download": "LilyGo_T-Echo_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "LilyGo_T-Echo_room_server.*?\\.zip",
"download": "LilyGo_T-Echo_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo T-Echo Lite",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"tooltip": "<img class='device' src='/img/lilygo_techo_lite.svg'>",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "LilyGo_T-Echo-Lite_companion_radio_ble.*?\\.zip",
"download": "LilyGo_T-Echo-Lite_companion_radio_ble.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "LilyGo_T-Echo-Lite_companion_radio_usb.*?\\.zip",
"download": "LilyGo_T-Echo-Lite_companion_radio_usb.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "LilyGo_T-Echo-Lite_[rR]epeater.*?\\.zip",
"download": "LilyGo_T-Echo-Lite_[rR]epeater.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "LilyGo_T-Echo-Lite_room_server.*?\\.zip",
"download": "LilyGo_T-Echo-Lite_room_server.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "lilygo",
"class": "community",
"name": "LilyGo LoRa32 V2.1_1.6",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/lilygo_tlora_1.6.svg'>",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_TLora_V2_1_1_6_companion_radio_ble.*?-merged\\.bin",
"flash-update": "LilyGo_TLora_V2_1_1_6_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "LilyGo_TLora_V2_1_1_6_companion_radio_usb.*?-merged\\.bin",
"flash-update": "LilyGo_TLora_V2_1_1_6_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "LilyGo_TLora_V2_1_1_6_[rR]epeater.*?-merged\\.bin",
"flash-update": "LilyGo_TLora_V2_1_1_6_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "LilyGo_TLora_V2_1_1_6_room_server.*?-merged\\.bin",
"flash-update": "LilyGo_TLora_V2_1_1_6_room_server.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "gat-iot",
2026-01-10 23:15:50 +01:00
"class": "community",
"name": "GAT-IoT GAT562 Tracker",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/gatiot_gat562.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"wiscore_rak4631_board_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "GAT562_Mesh_Tracker_Pro_companion_radio_ble.*?\\.zip",
"download": "GAT562_Mesh_Tracker_Pro_companion_radio_ble.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "GAT562_Mesh_Tracker_Pro_companion_radio_usb.*?\\.zip",
"download": "GAT562_Mesh_Tracker_Pro_companion_radio_usb.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "GAT562_Mesh_Tracker_Pro_[rR]epeater.*?\\.zip",
"download": "GAT562_Mesh_Tracker_Pro_[rR]epeater.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "GAT562_Mesh_Tracker_Pro_room_server.*?\\.zip",
"download": "GAT562_Mesh_Tracker_Pro_room_server.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "gat-iot",
2026-01-10 23:15:50 +01:00
"class": "community",
"name": "GAT-IoT GAT562 30s",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/gatiot_gat562_30s.svg'>",
2026-01-10 23:15:50 +01:00
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"wiscore_rak4631_board_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "GAT562_30S_Mesh_Kit_companion_radio_ble.*?\\.zip",
"download": "GAT562_30S_Mesh_Kit_companion_radio_ble.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "GAT562_30S_Mesh_Kit_companion_radio_usb.*?\\.zip",
"download": "GAT562_30S_Mesh_Kit_companion_radio_usb.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "GAT562_30S_Mesh_Kit_[rR]epeater.*?\\.zip",
"download": "GAT562_30S_Mesh_Kit_[rR]epeater.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "GAT562_Mesh_Tracker_Pro_room_server.*?\\.zip",
"download": "GAT562_Mesh_Tracker_Pro_room_server.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "heltec",
2026-01-10 23:15:50 +01:00
"class": "community",
"name": "Heltec Vision Master E213",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_e213.svg'>",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_E213_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_E213_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_E213_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_E213_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_E213_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_E213_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_E213_room_server.*?-merged\\.bin",
"flash-update": "Heltec_E213_room_server.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "heltec",
2026-01-10 23:15:50 +01:00
"class": "community",
"name": "Heltec Vision Master E290",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_e290.svg'>",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_E290_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_E290_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_E290_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_E290_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_E290_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_E290_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_E290_room_server.*?-merged\\.bin",
"flash-update": "Heltec_E290_room_server.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec v2",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_v2.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_v2_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_v2_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_v2_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_v2_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_v2_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_v2_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_v2_room_server.*?-merged\\.bin",
"flash-update": "Heltec_v2_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec v3",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_v3.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_v3_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_v3_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_v3_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_v3_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_v3_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_v3_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_v3_room_server.*?-merged\\.bin",
"flash-update": "Heltec_v3_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec v4",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_v4.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "heltec_v4_companion_radio_ble.*?-merged\\.bin",
"flash-update": "heltec_v4_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "heltec_v4_companion_radio_usb.*?-merged\\.bin",
"flash-update": "heltec_v4_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "heltec_v4_[rR]epeater.*?-merged\\.bin",
"flash-update": "heltec_v4_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "heltec_v4_room_server.*?-merged\\.bin",
"flash-update": "heltec_v4_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec T114",
"icon": "/img/lora.svg",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"heltec_t114_board_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"tooltip": "<img class='device' src='/img/heltec_t114.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "Heltec_t114_companion_radio_ble.*?\\.zip",
"download": "Heltec_t114_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "Heltec_t114_companion_radio_usb.*?\\.zip",
"download": "Heltec_t114_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixRecommended",
"github": {
"type": "repeater",
"files": {
"flash": "Heltec_t114_[rR]epeater.*?\\.zip",
"download": "Heltec_t114_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixRecommended",
"github": {
"type": "room-server",
"files": {
"flash": "Heltec_t114_room_server.*?\\.zip",
"download": "Heltec_t114_room_server.*?\\.uf2"
}
}
},
2026-01-10 23:15:50 +01:00
{
"role": "companionBle",
"title": "Companion",
"subTitle": "Bluetooth [no display]",
"github": {
"type": "companion",
"files": {
"flash": "Heltec_t114_without_display_companion_radio_ble.*?\\.zip",
"download": "Heltec_t114_without_display_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"title": "Companion",
"subTitle": "USB [no display]",
"github": {
"type": "companion",
"files": {
"flash": "Heltec_t114_without_display_companion_radio_ble.*?\\.zip",
"download": "Heltec_t114_without_display_companion_radio_ble.*?\\.uf2"
}
}
},
2026-01-10 23:15:50 +01:00
{
"role": "repeater",
"notice":"otafixRecommended",
"subTitle": "[no display]",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "Heltec_t114_without_display_[rR]epeater.*?\\.zip",
"download": "Heltec_t114_without_display_[rR]epeater.*?\\.uf2"
2026-01-10 23:15:50 +01:00
}
}
},
{
"role": "roomServer",
"notice":"otafixRecommended",
"subTitle": "[no display]",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "Heltec_t114_without_display_room_server.*?\\.zip",
"download": "Heltec_t114_without_display_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec Wireless Tracker v2",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_wt2.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "heltec_tracker_v2_companion_radio_ble.*?-merged\\.bin",
"flash-update": "heltec_tracker_v2_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "heltec_tracker_v2_companion_radio_usb.*?-merged\\.bin",
"flash-update": "heltec_tracker_v2_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "heltec_tracker_v2_[rR]epeater.*?-merged\\.bin",
"flash-update": "heltec_tracker_v2_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "heltec_tracker_v2_room_server.*?-merged\\.bin",
"flash-update": "heltec_tracker_v2_room_server.*?-[a-f0-9]{7}\\.bin"
2026-01-10 23:15:50 +01:00
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec MeshPocket",
"icon": "/img/lora.svg",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"tooltip": "<img class='device' src='/img/heltec_meshpocket.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "Mesh_pocket_companion_radio_ble.*?\\.zip",
"download": "Mesh_pocket_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "Mesh_pocket_companion_radio_usb.*?\\.zip",
"download": "Mesh_pocket_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "Mesh_pocket_[rR]epeater.*?\\.zip",
"download": "Mesh_pocket_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "Mesh_pocket_room_server.*?\\.zip",
"download": "Mesh_pocket_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec MeshSolar / MeshTower",
"icon": "/img/lora.svg",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"tooltip": "<img class='device' src='/img/heltec_mesh_solar.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "Heltec_mesh_solar_companion_radio_ble.*?\\.zip",
"download": "Heltec_mesh_solar_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "Heltec_mesh_solar_companion_radio_usb.*?\\.zip",
"download": "Heltec_mesh_solar_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "Heltec_mesh_solar_[rR]epeater.*?\\.zip",
"download": "Heltec_mesh_solar_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "Heltec_mesh_solar_room_server.*?\\.zip",
"download": "Heltec_mesh_solar_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec Wireless Tracker",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_wt3.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_Wireless_Tracker_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Tracker_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_Wireless_Tracker_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Tracker_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_Wireless_Tracker_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Tracker_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_Wireless_Tracker_room_server.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Tracker_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec Heltec Wireless Paper",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_paper.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_Wireless_Paper_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Paper_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_Wireless_Paper_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Paper_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_Wireless_Paper_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Paper_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_Wireless_Paper_room_server.*?-merged\\.bin",
"flash-update": "Heltec_Wireless_Paper_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "heltec",
"class": "community",
"name": "Heltec WSL3",
"icon": "/img/lora.svg",
"type": "esp32",
"tooltip": "<img class='device' src='/img/heltec_wsl3.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_WSL3_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Heltec_WSL3_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Heltec_WSL3_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Heltec_WSL3_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Heltec_WSL3_[rR]epeater.*?-merged\\.bin",
"flash-update": "Heltec_WSL3_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Heltec_WSL3_room_server.*?-merged\\.bin",
"flash-update": "Heltec_WSL3_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "Ikoka",
"class": "community",
"name": "Ikoka Stick",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/ikoka_stick.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v7.zip",
"bootloader":"xiao_nrf52840_ble_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"title": "Companion radio - 22dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_stick_nrf_22dbm_companion_radio_ble.*?\\.zip",
"download": "ikoka_stick_nrf_22dbm_companion_radio_ble.*?\\.uf2"
}
}
},
{
"title": "Companion radio - 22dBm",
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_stick_nrf_22dbm_companion_radio_usb.*?\\.zip",
"download": "ikoka_stick_nrf_22dbm_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Repeater - 22dBm",
"github": {
"type": "repeater",
"files": {
"flash": "ikoka_stick_nrf_22dbm_[Rr]epeater.*?\\.zip",
"download": "ikoka_stick_nrf_22dbm_[Rr]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Room Server - 22dBm",
"github": {
"type": "room-server",
"files": {
"flash": "ikoka_stick_nrf_22dbm_room_server.*?\\.zip",
"download": "ikoka_stick_nrf_22dbm_room_server.*?\\.uf2"
}
}
},
{
"role": "companionBle",
"title": "Companion radio - 30dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_stick_nrf_30dbm_companion_radio_ble.*?\\.zip",
"download": "ikoka_stick_nrf_30dbm_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"title": "Companion radio - 30dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_stick_nrf_30dbm_companion_radio_usb.*?\\.zip",
"download": "ikoka_stick_nrf_30dbm_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Repeater - 30dBm",
"github": {
"type": "repeater",
"files": {
"flash": "ikoka_stick_nrf_30dbm_[Rr]epeater.*?\\.zip",
"download": "ikoka_stick_nrf_30dbm_[Rr]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Room Server - 30dBm",
"github": {
"type": "room-server",
"files": {
"flash": "ikoka_stick_nrf_30dbm_room_server.*?\\.zip",
"download": "ikoka_stick_nrf_30dbm_room_server.*?\\.uf2"
}
}
},
{
"role": "companionBle",
"title": "Companion radio - 33dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_stick_nrf_33dbm_companion_radio_ble.*?\\.zip",
"download": "ikoka_stick_nrf_33dbm_companion_radio_ble.*?\\.uf2"
}
}
},
{
"title": "Companion radio - 33dBm",
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_stick_nrf_33dbm_companion_radio_usb.*?\\.zip",
"download": "ikoka_stick_nrf_33dbm_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Repeater - 33dBm",
"github": {
"type": "repeater",
"files": {
"flash": "ikoka_stick_nrf_33dbm_[Rr]epeater.*?\\.zip",
"download": "ikoka_stick_nrf_33dbm_[Rr]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Room Server - 33dBm",
"github": {
"type": "room-server",
"files": {
"flash": "ikoka_stick_nrf_33dbm_room_server.*?\\.zip",
"download": "ikoka_stick_nrf_33dbm_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "Ikoka",
"class": "community",
"name": "Ikoka Nano",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/ikoka_nano.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v7.zip",
"bootloader":"xiao_nrf52840_ble_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"title": "Companion radio - 22dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_nano_nrf_22dbm_companion_radio_ble.*?\\.zip",
"download": "ikoka_nano_nrf_22dbm_companion_radio_ble.*?\\.uf2"
}
}
},
{
"title": "Companion radio - 22dBm",
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_nano_nrf_22dbm_companion_radio_usb.*?\\.zip",
"download": "ikoka_nano_nrf_22dbm_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Repeater - 22dBm",
"github": {
"type": "repeater",
"files": {
"flash": "ikoka_nano_nrf_22dbm_[Rr]epeater.*?\\.zip",
"download": "ikoka_nano_nrf_22dbm_[Rr]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Room Server - 22dBm",
"github": {
"type": "room-server",
"files": {
"flash": "ikoka_nano_nrf_22dbm_room_server.*?\\.zip",
"download": "ikoka_nano_nrf_22dbm_room_server.*?\\.uf2"
}
}
},
{
"role": "companionBle",
"title": "Companion radio - 30dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_nano_nrf_30dbm_companion_radio_ble.*?\\.zip",
"download": "ikoka_nano_nrf_30dbm_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"title": "Companion radio - 30dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_nano_nrf_30dbm_companion_radio_usb.*?\\.zip",
"download": "ikoka_nano_nrf_30dbm_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Repeater - 30dBm",
"github": {
"type": "repeater",
"files": {
"flash": "ikoka_nano_nrf_30dbm_[Rr]epeater.*?\\.zip",
"download": "ikoka_nano_nrf_30dbm_[Rr]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Room Server - 30dBm",
"github": {
"type": "room-server",
"files": {
"flash": "ikoka_nano_nrf_30dbm_room_server.*?\\.zip",
"download": "ikoka_nano_nrf_30dbm_room_server.*?\\.uf2"
}
}
},
{
"role": "companionBle",
"title": "Companion radio - 33dBm",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_nano_nrf_33dbm_companion_radio_ble.*?\\.zip",
"download": "ikoka_nano_nrf_33dbm_companion_radio_ble.*?\\.uf2"
}
}
},
{
"title": "Companion radio - 33dBm",
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ikoka_nano_nrf_33dbm_companion_radio_usb.*?\\.zip",
"download": "ikoka_nano_nrf_33dbm_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Repeater - 33dBm",
"github": {
"type": "repeater",
"files": {
"flash": "ikoka_nano_nrf_33dbm_[Rr]epeater.*?\\.zip",
"download": "ikoka_nano_nrf_33dbm_[Rr]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixNeeded",
2026-01-10 23:15:50 +01:00
"title": "Room Server - 33dBm",
"github": {
"type": "room-server",
"files": {
"flash": "ikoka_nano_nrf_33dbm_room_server.*?\\.zip",
"download": "ikoka_nano_nrf_33dbm_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "keepteen",
"class": "community",
"name": "Keepteen LT1",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/keepteen_lt1.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"wiscore_rak4631_board_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "KeepteenLT1_companion_radio_ble.*?\\.zip",
"download": "KeepteenLT1_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "KeepteenLT1_companion_radio_usb.*?\\.zip",
"download": "KeepteenLT1_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "KeepteenLT1_[rR]epeater.*?\\.zip",
"download": "KeepteenLT1_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "KeepteenLT1_room_server.*?\\.zip",
"download": "KeepteenLT1_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "rak",
"class": "community",
"name": "RAK WisBlock 3112",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/rak_3112.svg'>",
"type": "esp32",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "RAK3112_companion_radio_ble.*?-merged\\.bin",
"flash-update": "RAK3112_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "RAK3112_companion_radio_usb.*?-merged\\.bin",
"flash-update": "RAK3112_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "RAK3112_[rR]epeater.*?-merged\\.bin",
"flash-update": "RAK3112_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "RAK3112_room_server.*?-merged\\.bin",
"flash-update": "RAK3112_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "rak",
"class": "community",
"name": "RAK WisBlock / WisMesh (RAK 4631)",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/rak_4631.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"wiscore_rak4631_board_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "RAK_4631_companion_radio_ble.*?\\.zip",
"download": "RAK_4631_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "RAK_4631_companion_radio_usb.*?\\.zip",
"download": "RAK_4631_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixRecommended",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "RAK_4631_[rR]epeater.*?\\.zip",
"download": "RAK_4631_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixRecommended",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "RAK_4631_room_server.*?\\.zip",
"download": "RAK_4631_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "rak",
"class": "community",
"name": "RAK WisMesh 1W Booster (3401 + 13302)",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/rak_13302.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"wiscore_rak4631_board_bootloader-0.9.2-OTAFIX2.1.uf2",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "RAK_3401_companion_radio_ble.*?\\.zip",
"download": "RAK_3401_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "RAK_3401_companion_radio_usb.*?\\.zip",
"download": "RAK_3401_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixRecommended",
"github": {
"type": "repeater",
"files": {
"flash": "RAK_3401_[rR]epeater.*?\\.zip",
"download": "RAK_3401_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixRecommended",
"github": {
"type": "room-server",
"files": {
"flash": "RAK_3401_room_server.*?\\.zip",
"download": "RAK_3401_room_server.*?\\.uf2"
}
}
}
]
},
2026-01-10 23:15:50 +01:00
{
"maker": "rak",
"class": "community",
"name": "RAK WisMesh Tag",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/rak_wismesh_tag.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"wismesh_tag_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "RAK_WisMesh_Tag_companion_radio_ble.*?\\.zip",
"download": "RAK_WisMesh_Tag_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "RAK_WisMesh_Tag_companion_radio_usb.*?\\.zip",
"download": "RAK_WisMesh_Tag_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixRecommended",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "RAK_WisMesh_Tag_[rR]epeater.*?\\.zip",
"download": "RAK_WisMesh_Tag_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixRecommended",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "RAK_WisMesh_Tag_room_server.*?\\.zip",
"download": "RAK_WisMesh_Tag_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio SenseCAP Solar",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/sensecap_solar.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v7.zip",
"bootloader":"sensecap_solar_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "SenseCap_Solar_companion_radio_ble.*?\\.zip",
"download": "SenseCap_Solar_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "SenseCap_Solar_companion_radio_usb.*?\\.zip",
"download": "SenseCap_Solar_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "SenseCap_Solar_[rR]epeater.*?\\.zip",
"download": "SenseCap_Solar_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "SenseCap_Solar_room_server.*?\\.zip",
"download": "SenseCap_Solar_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio SenseCAP T1000-E",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/sensecap_t1000e.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v7.zip",
"bootloader":"t1000_e_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "t1000e_companion_radio_ble.*?\\.zip",
"download": "t1000e_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "t1000e_companion_radio_usb.*?\\.zip",
"download": "t1000e_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "t1000e_[rR]epeater.*?\\.zip",
"download": "t1000e_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "t1000e_room_server.*?\\.zip",
"download": "t1000e_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio Wio Tracker L1 Pro",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/wio_tracker_l1.svg'>",
"type": "nrf52",
"erase": "WioTrackerL1_QSPIFlash_Format-v1.2.zip",
"bootloader": "wio_tracker_l1_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "WioTrackerL1_companion_radio_ble.*?\\.zip",
"download": "WioTrackerL1_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "WioTrackerL1_companion_radio_usb.*?\\.zip",
"download": "WioTrackerL1_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "WioTrackerL1_[rR]epeater.*?\\.zip",
"download": "WioTrackerL1_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "WioTrackerL1_room_server.*?\\.zip",
"download": "WioTrackerL1_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio Wio Tracker L1 EINK",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/wio_tracker_l1_eink.svg'>",
"bootloader": "wio_tracker_l1_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"type": "nrf52",
"erase": "WioTrackerL1_QSPIFlash_Format-v1.2.zip",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "WioTrackerL1Eink_companion_radio_ble.*?\\.zip",
"download": "WioTrackerL1Eink_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "WioTrackerL1Eink_companion_radio_usb.*?\\.zip",
"download": "WioTrackerL1Eink_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "WioTrackerL1Eink_[rR]epeater.*?\\.zip",
"download": "WioTrackerL1Eink_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "WioTrackerL1Eink_room_server.*?\\.zip",
"download": "WioTrackerL1Eink_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio Xiao C3",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/xiao_esp32c3.svg'>",
"type": "esp32",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Xiao_C3_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Xiao_C3_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Xiao_C3_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Xiao_C3_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"subTitle": "(SX1262 version)",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Xiao_C3_sx1262_[rR]epeater.*?-merged\\.bin",
"flash-update": "Xiao_C3_sx1262_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"subTitle": "(SX1268 version)",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Xiao_C3_sx1268_[rR]epeater.*?-merged\\.bin",
"flash-update": "Xiao_C3_sx1268_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio Xiao S3 WIO",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/xiao_esp32s3.svg'>",
"type": "esp32",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Xiao_S3_WIO_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Xiao_S3_WIO_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Xiao_S3_WIO_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Xiao_S3_WIO_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Xiao_S3_WIO_[rR]epeater.*?-merged\\.bin",
"flash-update": "Xiao_S3_WIO_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Xiao_S3_WIO_room_server.*?-merged\\.bin",
"flash-update": "Xiao_S3_WIO_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "seeed",
"class": "community",
"name": "Seeed Studio Xiao nRF52 WIO",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/xiao_nrf52.svg'>",
"type": "nrf52",
"erase": "Xiao_nrf52_QSPIFlash_Format-v1.2.zip",
"bootloader": "xiao_nrf52840_ble_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "Xiao_nrf52_companion_radio_ble.*?\\.zip",
"download": "Xiao_nrf52_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "Xiao_nrf52_companion_radio_usb.*?\\.zip",
"download": "Xiao_nrf52_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "Xiao_nrf52_[rR]epeater.*?\\.zip",
"download": "Xiao_nrf52_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice": "otafixNeeded",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "Xiao_nrf52_room_server.*?\\.zip",
"download": "Xiao_nrf52_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "elecrow",
"class": "community",
"name": "Elecrow ThinkNode M1",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/thinknode_m1.svg'>",
"type": "nrf52",
"erase": "ThinkNode_M1_QSPIFlash_Format-v1.2.zip",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "ThinkNode_M1_companion_radio_ble.*?\\.zip",
"download": "ThinkNode_M1_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ThinkNode_M1_companion_radio_usb.*?\\.zip",
"download": "ThinkNode_M1_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "ThinkNode_M1_[rR]epeater.*?\\.zip",
"download": "ThinkNode_M1_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "ThinkNode_M1_room_server.*?\\.zip",
"download": "ThinkNode_M1_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "elecrow",
"class": "community",
"name": "Elecrow ThinkNode M2",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/thinknode_m2.svg'>",
"type": "esp32",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "ThinkNode_M2_companion_radio_ble.*?-merged\\.bin",
"flash-update": "ThinkNode_M2_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "ThinkNode_M2_companion_radio_usb.*?-merged\\.bin",
"flash-update": "ThinkNode_M2_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "ThinkNode_M2_repeater.*?-merged\\.bin",
"flash-update": "ThinkNode_M2_repeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "ThinkNode_M2_room_server.*?-merged\\.bin",
"flash-update": "ThinkNode_M2_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "elecrow",
"class": "community",
"name": "Elecrow ThinkNode M3",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/thinknode_m3.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "ThinkNode_M3_companion_radio_ble.*?\\.zip",
"download": "ThinkNode_M3_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ThinkNode_M3_companion_radio_usb.*?\\.zip",
"download": "ThinkNode_M3_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "ThinkNode_M3_[rR]epeater.*?\\.zip",
"download": "ThinkNode_M3_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "ThinkNode_M3_room_server.*?\\.zip",
"download": "ThinkNode_M3_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "elecrow",
"class": "community",
"name": "Elecrow ThinkNode M5",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/thinknode_m5.svg'>",
"type": "esp32",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "ThinkNode_M5_companion_radio_ble.*?-merged\\.bin",
"flash-update": "ThinkNode_M5_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "ThinkNode_M5_companion_radio_usb.*?-merged\\.bin",
"flash-update": "ThinkNode_M5_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "ThinkNode_M5_repeater.*?-merged\\.bin",
"flash-update": "ThinkNode_M5_repeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "ThinkNode_M5_room_server.*?-merged\\.bin",
"flash-update": "ThinkNode_M5_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "elecrow",
"class": "community",
"name": "Elecrow ThinkNode M6",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/thinknode_m6.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "ThinkNode_M6_companion_radio_ble.*?\\.zip",
"download": "ThinkNode_M6_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "ThinkNode_M6_companion_radio_usb.*?\\.zip",
"download": "ThinkNode_M6_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash": "ThinkNode_M6_[rR]epeater.*?\\.zip",
"download": "ThinkNode_M6_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash": "ThinkNode_M6_room_server.*?\\.zip",
"download": "ThinkNode_M6_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "uniteng",
"class": "community",
"name": "UnitEng Station G2",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/station_g2.svg'>",
"type": "esp32",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Station_G2_companion_radio_ble.*?-merged\\.bin",
"flash-update": "Station_G2_companion_radio_ble.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash-wipe": "Station_G2_companion_radio_usb.*?-merged\\.bin",
"flash-update": "Station_G2_companion_radio_usb.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"flash-wipe": "Station_G2_[rR]epeater.*?-merged\\.bin",
"flash-update": "Station_G2_[rR]epeater.*?-[a-f0-9]{7}\\.bin"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"flash-wipe": "Station_G2_room_server.*?-merged\\.bin",
"flash-update": "Station_G2_room_server.*?-[a-f0-9]{7}\\.bin"
}
}
}
]
},
{
"maker": "uniteng",
"class": "community",
"name": "UnitEng Nano G2 Ultra",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/nano_g2.svg'>",
"type": "nrf52",
"erase": "Nano_G2_Ultra_QSPIFlash_Format-v1.2.zip",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "Nano_G2_Ultra_companion_radio_ble.*?\\.zip",
"download": "Nano_G2_Ultra_companion_radio_ble.*?\\.uf2"
}
}
}
]
},
{
"maker": "promicro",
"class": "community",
"name": "ProMicro nrf52 (faketec)",
"icon": "/img/lora.svg",
"tooltip": "<img class='device' src='/img/faketec.svg'>",
"type": "nrf52",
"erase": "FLASH_ERASE_nrf52_softdevice_v6.zip",
"bootloader":"promicro_nrf52840_bootloader-0.9.2-OTAFIX2.1.uf2",
2026-01-10 23:15:50 +01:00
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"flash": "(?:ProMicro|Faketec)_companion_radio_ble.*?\\.zip",
"download": "(?:ProMicro|Faketec)_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"flash": "(?:ProMicro|Faketec)_companion_radio_usb.*?\\.zip",
"download": "(?:ProMicro|Faketec)_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"notice":"otafixRecommended",
2026-01-10 23:15:50 +01:00
"github": {
"type": "repeater",
"files": {
"flash": "(?:ProMicro|Faketec)_[rR]epeater.*?\\.zip",
"download": "(?:ProMicro|Faketec)_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"notice":"otafixRecommended",
2026-01-10 23:15:50 +01:00
"github": {
"type": "room-server",
"files": {
"flash": "(?:ProMicro|Faketec)_room_server.*?\\.zip",
"download": "(?:ProMicro|Faketec)_room_server.*?\\.uf2"
}
}
}
]
},
{
"maker": "raspberry",
"class": "community",
"name": "RPI Pico 2040 + WaveShare SX1262",
2026-01-10 23:15:50 +01:00
"icon": "/img/lora.svg",
"type": "noflash",
"tooltip":"<img class='device' src='/img/rpi_picow.svg'>",
"firmware": [
{
"role": "companionBle",
"github": {
"type": "companion",
"files": {
"download": "PicoW_companion_radio_ble.*?\\.uf2"
}
}
},
{
"role": "companionUsb",
"github": {
"type": "companion",
"files": {
"download": "PicoW_companion_radio_usb.*?\\.uf2"
}
}
},
{
"role": "repeater",
"github": {
"type": "repeater",
"files": {
"download": "PicoW_[rR]epeater.*?\\.uf2"
}
}
},
{
"role": "roomServer",
"github": {
"type": "room-server",
"files": {
"download": "PicoW_room_server.*?\\.uf2"
}
}
}
]
}
]
2025-02-23 10:19:53 +01:00
}