2025-02-23 10:19:53 +01:00
{
2026-01-10 23:15:50 +01:00
"staticPath" : "/firmware" ,
"role" : {
"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"
}
} ,
"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" : "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" : {
"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" : {
"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" : {
"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" : {
"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"
}
}
}
]
} ,
{
"maker" : "lilygo" ,
"class" : "ripple" ,
"name" : "LilyGo T5 E-Paper S3 Pro (non-gps, only rev. H752)" ,
"tooltip" : "<img class='device' src='/img/lilygo_t5_pro.svg'>" ,
"icon" : "/img/lora.svg" ,
"type" : "esp32" ,
"firmware" : [
{
"role" : "gui" ,
"version" : {
"v7.1" : {
"files" : [
{
"type" : "flash-wipe" ,
"name" : "Ultra-T5-epaper-UKStore-v7.1-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "Ultra-T5-epaper-UKStore-v7.1.bin" ,
"title" : "App firmware bin (use with m5 booloader)"
}
] ,
"notes" : "* Channel details hex or base64 input\n* MeshCore lib updates/fixes"
} ,
"v7.0" : {
"files" : [
{
"type" : "flash-wipe" ,
"name" : "Ultra-T5-epaper-UKStore-v7.0-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "Ultra-T5-epaper-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-T5-epaper-UKStore-v6.9-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "Ultra-T5-epaper-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-T5-epaper-UKStore-v6.8-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "Ultra-T5-epaper-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-T5-epaper-v6.7-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "RippleUltra-T5-epaper-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-T5-epaper-v6.6-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "RippleUltra-T5-epaper-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-T5-epaper-v6.5-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "RippleUltra-T5-epaper-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-T5-epaper-v6.3-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "RippleUltra-T5-epaper-v6.3.bin" ,
"title" : "App firmware bin (use with m5 booloader)"
}
] ,
"notes" : "* BUG Fix: advert verify caused memory corruption"
} ,
"v6.0-beta22" : {
"files" : [
{
"type" : "flash-wipe" ,
"name" : "RippleUltra-T5-epaper-v6.0-beta21-merged.bin" ,
"title" : "Combined app+partition+bootloader firmware bin"
} ,
{
"type" : "flash-update" ,
"name" : "RippleUltra-T5-epaper-v6.0-beta21.bin" ,
"title" : "App firmware bin (use with m5 booloader)"
}
]
}
}
}
]
} ,
{
"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" : {
"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" : {
"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" : {
"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" ,
"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" : {
"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" : "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" ,
"firmware" : [
{
"role" : "gui" ,
"version" : {
"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" : "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" ,
"icon" : "/img/lora.svg" ,
"type" : "nrf52" ,
"erase" : "FLASH_ERASE_nrf52_softdevice_v6.zip" ,
"tooltip" : "<img class='device' src='/img/lilygo_techo_lite.svg'>" ,
"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"
}
}
} ,
{
"role" : "companionUsb" ,
"github" : {
"type" : "companion" ,
"files" : {
"flash" : "LilyGo_T-Echo-Lite_companion_radio_usb.*?\\.zip" ,
"download" : "LilyGo_T-Echo-Lite_companion_radio_usb.*?\\.uf2"
}
}
} ,
{
"role" : "repeater" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "LilyGo_T-Echo-Lite_[rR]epeater.*?\\.zip" ,
"download" : "LilyGo_T-Echo-Lite_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"github" : {
"type" : "room-server" ,
"files" : {
"flash" : "LilyGo_T-Echo-Lite_room_server.*?\\.zip" ,
"download" : "LilyGo_T-Echo-Lite_room_server.*?\\.uf2"
}
}
}
]
} ,
{
"maker" : "lilygo" ,
"class" : "community" ,
"name" : "LilyGo LoRa32 V2.1_1.6" ,
"icon" : "/img/lora.svg" ,
"type" : "esp32" ,
"tooltip" : "<img class='device' src='/img/lilygo_tlora_1.6.svg'>" ,
"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"
}
}
} ,
{
"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"
}
}
} ,
{
"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"
}
}
} ,
{
"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"
}
}
}
]
} ,
{
"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" ,
"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" : "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" : "repeater" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "Heltec_t114_[rR]epeater.*?\\.zip" ,
"download" : "Heltec_t114_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"github" : {
"type" : "room-server" ,
"files" : {
"flash" : "Heltec_t114_room_server.*?\\.zip" ,
"download" : "Heltec_t114_room_server.*?\\.uf2"
}
}
}
]
} ,
{
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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" ,
"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 Wireless WisBlock / WisMesh (RAK 4631)" ,
"icon" : "/img/lora.svg" ,
"tooltip" : "<img class='device' src='/img/rak_4631.svg'>" ,
"type" : "nrf52" ,
"erase" : "FLASH_ERASE_nrf52_softdevice_v6.zip" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "RAK_4631_[rR]epeater.*?\\.zip" ,
"download" : "RAK_4631_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"github" : {
"type" : "room-server" ,
"files" : {
"flash" : "RAK_4631_room_server.*?\\.zip" ,
"download" : "RAK_4631_room_server.*?\\.uf2"
}
}
}
]
} ,
{
"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" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "RAK_WisMesh_Tag_[rR]epeater.*?\\.zip" ,
"download" : "RAK_WisMesh_Tag_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"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" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "SenseCap_Solar_[rR]epeater.*?\\.zip" ,
"download" : "SenseCap_Solar_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"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" ,
"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" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "WioTrackerL1_[rR]epeater.*?\\.zip" ,
"download" : "WioTrackerL1_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"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'>" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "WioTrackerL1Eink_[rR]epeater.*?\\.zip" ,
"download" : "WioTrackerL1Eink_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"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" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "Xiao_nrf52_[rR]epeater.*?\\.zip" ,
"download" : "Xiao_nrf52_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"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" ,
"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" ,
"github" : {
"type" : "repeater" ,
"files" : {
"flash" : "(?:ProMicro|Faketec)_[rR]epeater.*?\\.zip" ,
"download" : "(?:ProMicro|Faketec)_[rR]epeater.*?\\.uf2"
}
}
} ,
{
"role" : "roomServer" ,
"github" : {
"type" : "room-server" ,
"files" : {
"flash" : "(?:ProMicro|Faketec)_room_server.*?\\.zip" ,
"download" : "(?:ProMicro|Faketec)_room_server.*?\\.uf2"
}
}
}
]
} ,
{
"maker" : "raspberry" ,
"class" : "community" ,
"name" : "Raspberry Pi Pico RP2040 + WaveShare SX1262" ,
"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
}