vault / meshtastic-android / v2.7.11
meshtastic-android @ v2.7.11
integrity
- size
- 4.6 MiB
- downloaded
- last checked
release notes
What's Changed
🏗️ Features
- feat(logging): Replace Timber with Kermit for multiplatform logging by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4083
- Consider hopStart=0 when calculating hops for packets by @esev in https://github.com/meshtastic/Meshtastic-Android/pull/4101
- Convert Room DAO methods to suspend functions by @romansl in https://github.com/meshtastic/Meshtastic-Android/pull/4102
- feat: add retention period to meshLog. Defaults to 7 days, with a settings dropdown to change by @mdecourcy in https://github.com/meshtastic/Meshtastic-Android/pull/4078
- Fix: Use dynamic year for copyright headers by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4116
- feat: auto retry text message send on max retransmit by @mdecourcy in https://github.com/meshtastic/Meshtastic-Android/pull/4124
- feat: Add separate notifications for waypoints by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4131
- feat: Enhance message notifications with history and actions by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4133
- feat: Add initial handling for Store and Forward PlusPlus packets by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4136
- feat: Add acknowledgement status and retry for emoji reactions by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4142
- feat: Mute broadcast Reaction notifications by default by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4159
- feat: Add SFPP confirmed status to Messages and Reactions by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4139
- feat(i18n): Add string for PKI public key send failure by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4165
- feat: Handle Store and Forward heartbeat packets by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4168
- refactor(build): centralize Dokka documentation generation by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4171
- Dedup repeat messages/reactions due to sfpp by @mdecourcy in https://github.com/meshtastic/Meshtastic-Android/pull/4174
- feat: Add mute node functionality by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4181
- feat: Add
forceEnableAlltoCapabilitiesby @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4184 - feat(messaging): Overhaul message bubbles and add actions by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4206
- Refactor: Improve MessageItem layout and styling by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4208
- refactor(messaging): Redesign message bubbles and reaction UI by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4217
- feat: Add ESP32 Unified OTA update support by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4095
- feat: Add Client Base role strings by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4227
- feat: Localize traceroute strings by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4228
- feat: retry message/reaction dialog by @mdecourcy in https://github.com/meshtastic/Meshtastic-Android/pull/4195
- refactor: Enable test coverage and update CI by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4233
- feat(service): Overhaul MeshServiceExample by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4263
- feat(test): Add comprehensive unit and instrumentation tests by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4260
- fix(ui): Hide battery icon when no power data is available by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4274
🛠️Fixes
- refactor: Migrate to Android Gradle Plugin 9.0 by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4072
- feat: Refactor back navigation in adaptive screens by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4085
- fix: update schema 27 with packet index by @mdecourcy in https://github.com/meshtastic/Meshtastic-Android/pull/4086
- feat: Improve POSIX time zone string generation by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4087
- feat(build): Set JVM toolchain to 21 by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4090
- feat: Refactor MeshService into smaller, single-responsibility components by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4108
- Refactor: Improve analytics plugin application and task configuration by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4120
- fix: Update copyright year to 2026 by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4121
- feat: Send emoji codepoint in reaction packets by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4123
- feat: Improve node handling and add client notifications by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4130
- fix: reaction display regression by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4141
- refactor: use location compat by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4143
- fix: fix strings.xml by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4147
- fix: Make node details selectable by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4151
- refactor(datetime): Standardize date/time formatting with
DateUtilsby @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4164 - refactor(deps): inject CoroutineDispatchers by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4170
- refactor(build): Centralize Dokka configuration into convention plugin by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4173
- fix(meshlog): Change default retention to 30 days by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4177
- feat: Add "now" string and update formatAgo function by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4183
- fix #4150: display
0°Cinstead of-0°Cfor near-zero negative temperatures by @lohwasser in https://github.com/meshtastic/Meshtastic-Android/pull/4186 - fix(deps): resolve faraday-multipart ruby 4 incompatibility by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4199
- Revert "fix(deps): resolve faraday-multipart ruby 4 incompatibility" by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4200
- Revert "chore(deps): update ruby to v4" by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4201
- feat(connections): Improve connection screen UI and logic by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4224
- ci(actions): Set up JDK 21 in scheduled-updates workflow by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4236
- ci: Run tests and generate coverage for all modules by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4238
- Revert "ci: Run tests and generate coverage for all modules" by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4240
- fix(ci): Run tests for both F-Droid and Google flavors by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4239
- feat(firmware): Use pio_env to select correct firmware variant by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4244
- ci: fix coverage report paths and improve test result inclusivity by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4245
- refactor(ui): Improve EmojiPicker layout constraints by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4250
- refactor: Use device address to manage service lifecycle by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4251
- fix(node): Correct owner ID and local user detection by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4256
- Display traceroutes with 0 hops by @esev in https://github.com/meshtastic/Meshtastic-Android/pull/4261
- refactor(firmware): Simplify ESP32 firmware check by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4272
- fix(4269): Add LongTurbo preset name and tests by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4273
- fix(configs): Improve loading state feedback and dialog behavior by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4271
- refactor(service): Add destination node number to remote admin commands by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4276
- fix: crashes by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4281
- chore: Add gradle-daemon-jvm.properties to specify toolchain by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4282
- Fix(firmware): Disable serial/USB updates for ESP32 devices by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4283
- feat: Configure Pre-Commit run for debugging by @jamesarich in https://github.com/meshtastic/Meshtastic-Android/pull/4284
New Contributors
- @esev made their first contribution in https://github.com/meshtastic/Meshtastic-Android/pull/4101
- @romansl made their first contribution in https://github.com/meshtastic/Meshtastic-Android/pull/4102
- @lohwasser made their first contribution in https://github.com/meshtastic/Meshtastic-Android/pull/4186
Full Changelog: https://github.com/meshtastic/Meshtastic-Android/compare/v2.7.10...v2.7.11
download
unix · zip
curl -fL -o v2.7.11.zip https://ratatoskr.space/pkg/meshtastic-android/v2.7.11.zip
printf '%s %s\n' '26ad6efb8d6d3124fa463786f831cb76d0b8054dc78add8361267a67cf06007e' 'v2.7.11.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/meshtastic-android/v2.7.11.zip"
$out = "v2.7.11.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "26ad6efb8d6d3124fa463786f831cb76d0b8054dc78add8361267a67cf06007e") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v2.7.11.tar.gz https://ratatoskr.space/pkg/meshtastic-android/v2.7.11.tar.gz
printf '%s %s\n' '66ff7ec70cce8062bb0ba277263177ed5635b65a55585b10df7eb7f9bfc635f4' 'v2.7.11.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/meshtastic-android/v2.7.11.tar.gz"
$out = "v2.7.11.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "66ff7ec70cce8062bb0ba277263177ed5635b65a55585b10df7eb7f9bfc635f4") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v2.7.11.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meshtastic-android/v2.7.11.zip
printf '%s %s\n' '26ad6efb8d6d3124fa463786f831cb76d0b8054dc78add8361267a67cf06007e' 'v2.7.11.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meshtastic-android/v2.7.11.zip"
$out = "v2.7.11.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "26ad6efb8d6d3124fa463786f831cb76d0b8054dc78add8361267a67cf06007e") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v2.7.11.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meshtastic-android/v2.7.11.tar.gz
printf '%s %s\n' '66ff7ec70cce8062bb0ba277263177ed5635b65a55585b10df7eb7f9bfc635f4' 'v2.7.11.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meshtastic-android/v2.7.11.tar.gz"
$out = "v2.7.11.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "66ff7ec70cce8062bb0ba277263177ed5635b65a55585b10df7eb7f9bfc635f4") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v2.7.11.zip | zip | 4.5 MiB |
blake3-24 adcb311feceaa75f34d90851358d6dab255956021ebc8375
sha256 26ad6efb8d6d3124fa463786f831cb76d0b8054dc78add8361267a67cf06007e
sha1 7145b6da5db639b289e82adfff1b507b561dc7e2
|
| v2.7.11.tar.gz | tar.gz | 3.7 MiB |
blake3-24 3deefdbc7f56644c5839dd52b377dc0f3a78bbf06ff4e48b
sha256 66ff7ec70cce8062bb0ba277263177ed5635b65a55585b10df7eb7f9bfc635f4
sha1 aaa2d0c68b91c4b6c84302e9cd2018f093db3a7c
|
install
bazel
http_archive(
name = "meshtastic-android",
urls = ["https://ratatoskr.space/pkg/meshtastic-android/v2.7.11.tar.gz"],
integrity = "sha256-Zv9+xwzOgGK7C6J3JjF37VY1tlpVWFsQ3363+b/GNfQ=",
strip_prefix = "meshtastic-android-v2.7.11",
)
zig
.url = "https://ratatoskr.space/pkg/meshtastic-android/v2.7.11.tar.gz",
install via yggdrasil mesh
bazel
http_archive(
name = "meshtastic-android",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meshtastic-android/v2.7.11.tar.gz"],
integrity = "sha256-Zv9+xwzOgGK7C6J3JjF37VY1tlpVWFsQ3363+b/GNfQ=",
strip_prefix = "meshtastic-android-v2.7.11",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/meshtastic-android/v2.7.11.tar.gz",