James Rich
8b459881e0
feat: integrate meshtastic-sdk POC vertical slice
...
Wires core flows to the meshtastic-sdk (0.1.0-SNAPSHOT) while keeping the
legacy path alive. Goal: prove the SDK works with a real Android app and
surface API deficiencies.
Build:
- settings.gradle.kts: composite build inclusion for meshtastic-sdk
(../meshtastic-sdk) with dependency substitution for all SDK artifacts
- libs.versions.toml: sdk = "0.1.0-SNAPSHOT", mavenCentral snapshots repo
- app/build.gradle.kts: sdk-core, sdk-proto, sdk-transport-ble,
sdk-storage-sqldelight dependencies
Bootstrap:
- MeshUtilApplication: AndroidContextHolder.context set in onCreate()
before startKoin so SqlDelightStorageProvider can locate app files
- RadioClientProvider (@Single, binds SdkClientLifecycle): mutex-serialized
rebuildAndConnect(), strips 'x' prefix from BLE devAddr, holds
RadioClient StateFlow
- RadioClientViewModel: exposes RadioClientProvider to UI layer
SDK ViewModels (POC quality, compile-verified):
- SdkNodeListViewModel: NodeChange.Snapshot/Added/Updated/Removed → UiNode
- SdkMessagingViewModel: sendText() via client.sendText(), incomingText
via client.textMessages (Gap B — now fixed in SDK)
- SdkConfigViewModel: configBundle reads, setConfig/setOwner writes,
loadChannels() via admin, Gap G workaround (local override map)
- SdkTelemetryViewModel: TelemetryApi.observe(NodeId), requestDeviceMetrics
Service lifecycle:
- SdkClientLifecycle interface in core:service (avoids reverse dep from
service → app); RadioClientProvider implements it
- MeshService.onDestroy: calls sdkClientLifecycle.disconnect() before
serviceJob.cancel()
- BlePeripheralFactory.kt in core:ble: public buildPeripheralForAddress()
wrapper (Gap F workaround; proper fix needed in SDK transport-ble)
SDK gaps discovered and logged:
Gap B - textMessages flow (FIXED in SDK feat/meshtastic-android-integration-gaps)
Gap C - channels StateFlow (no reactive cache, only admin.listChannels())
Gap F - BleTransport MAC string factory (requires live Peripheral today)
Gap G - configBundle not refreshed after editSettings writes
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-06 17:52:05 -05:00
renovate[bot]
0b75fd4140
chore(deps): update paging to v3.5.0 ( #5375 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 14:20:43 -05:00
renovate[bot]
d28d684d05
chore(deps): update compose-multiplatform to v1.11.1 ( #5371 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 14:18:59 -05:00
renovate[bot]
2f2a71587d
chore(deps): update androidx.camera.viewfinder:viewfinder-compose to v1.6.1 ( #5370 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 14:06:21 -05:00
renovate[bot]
f547be6cbf
chore(deps): update room to v3.0.0-alpha04 ( #5368 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 12:10:34 -05:00
renovate[bot]
8434b57613
chore(deps): update androidx.camera:camera-view to v1.6.1 ( #5367 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 12:10:10 -05:00
renovate[bot]
f97900b558
chore(deps): update org.jetbrains.androidx.navigation3:navigation3-ui to v1.1.1 ( #5364 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 12:07:52 -05:00
renovate[bot]
7db0f9a032
chore(deps): update jetbrains.lifecycle to v2.11.0-beta01 ( #5359 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 11:55:26 -05:00
renovate[bot]
94e3901bd4
chore(deps): update compose-multiplatform to v1.11.0-rc01 ( #5358 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 10:13:14 -05:00
renovate[bot]
5a303e148c
chore(deps): update agp to v9.2.1 ( #5361 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 10:12:58 -05:00
renovate[bot]
7021984281
chore(deps): update com.android.tools:common to v32.2.1 ( #5362 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-06 10:12:49 -05:00
James Rich
78ff3f599c
chore(ble): don't surface ui message when canceling scope ( #5352 )
2026-05-04 17:23:57 +00:00
renovate[bot]
fca1fd8248
chore(deps): update org.meshtastic:mqtt-client to v0.3.6 ( #5350 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 11:44:42 -05:00
renovate[bot]
08ff14235d
chore(deps): update org.meshtastic:mqtt-client to v0.3.5 ( #5344 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-04 00:23:57 +00:00
renovate[bot]
82562f8028
chore(deps): update org.meshtastic:mqtt-client to v0.3.4 ( #5343 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-03 15:18:31 -05:00
renovate[bot]
94540aabb1
chore(deps): update vico to v3.2.0-next.3 ( #5341 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-03 15:17:55 -05:00
renovate[bot]
61af98e966
chore(deps): update org.meshtastic:mqtt-client to v0.3.3 ( #5337 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-02 13:22:08 -05:00
renovate[bot]
519b9633a1
chore(deps): update org.meshtastic:mqtt-client to v0.3.2 ( #5331 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-02 10:16:07 -05:00
James Rich
c0b0b9edd4
fix(network): resolve empty MQTT address and enforce TLS on default server ( #5333 )
...
Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai >
2026-05-02 14:59:44 +00:00
renovate[bot]
770fe3f626
chore(deps): update aboutlibraries to v14.1.0 ( #5322 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-02 02:02:39 +00:00
James Rich
e198f52de5
refactor(coroutines): migrate to kotlinx-coroutines 1.11.0-rc02 ( #5312 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-05-01 03:11:22 +00:00
James Rich
2822290908
refactor(build): build-logic cleanup, CC safety, and detekt 2.0 upgrade ( #5311 )
2026-05-01 02:48:37 +00:00
renovate[bot]
54339c6fa1
chore(deps): update org.meshtastic:mqtt-client to v0.3.0 ( #5272 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-28 11:03:27 -05:00
renovate[bot]
ef33f6a76a
chore(deps): update gradle to v9.5.0 ( #5270 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: James Rich <james.a.rich@gmail.com >
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-28 08:12:29 -05:00
James Rich
b60f29d772
feat(desktop): native OS notifications via libnotify/osascript/PowerShell ( #5253 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-27 15:53:53 -05:00
renovate[bot]
79331bcc77
chore(deps): update datadog.gradle to v1.26.0 ( #5248 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-27 09:06:39 -05:00
renovate[bot]
b1c7902ec1
chore(deps): update vico to v3.2.0-next.2 ( #5243 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-25 16:14:42 +00:00
renovate[bot]
fb1092e3c7
chore(deps): update io.nlopez.compose.rules:detekt to v0.5.8 ( #5242 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-25 16:14:36 +00:00
renovate[bot]
e6f6369f49
chore(deps): update dd.sdk.android to v3.9.1 ( #5237 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-23 17:26:17 -05:00
James Rich
2e6730d1e3
fix(desktop): unbreak release crash via correct ProGuard rules ( #5236 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-23 21:33:16 +00:00
James Rich
2c001c47d1
fix(desktop): unbreak release builds (CMP beta03 + pwsh -P quoting) ( #5230 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-23 06:22:31 -05:00
renovate[bot]
91a61a36ca
chore(deps): update kotlin to v2.3.21 ( #5228 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-23 05:10:10 -05:00
renovate[bot]
9dae0f5c8b
chore(deps): update devtools.ksp to v2.3.7 ( #5223 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-22 18:48:12 -05:00
renovate[bot]
0be5334cd9
chore(deps): update koin.plugin to v1.0.0-rc2 ( #5213 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-22 10:32:35 -05:00
renovate[bot]
9b20d980ef
chore(deps): update ktor to v3.4.3 ( #5214 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-22 10:32:20 -05:00
renovate[bot]
e8db1495dc
chore(deps): update agp to v9.2.0 ( #5201 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-21 14:44:16 +00:00
renovate[bot]
dfcfac18b1
chore(deps): update com.android.tools:common to v32.2.0 ( #5202 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-21 14:38:37 +00:00
renovate[bot]
02cb12cac4
chore(deps): update org.jetbrains.androidx.navigation3:navigation3-ui to v1.1.0 ( #5199 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-21 13:01:30 +00:00
renovate[bot]
9dd57725f2
chore(deps): update vico to v3.2.0-next.1 ( #5191 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-19 12:31:11 -05:00
renovate[bot]
68a414b75b
chore(deps): update compose-multiplatform to v1.11.0-rc01 ( #5184 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-17 22:00:34 -05:00
James Rich
4257e7b7e4
chore(deps): split androidx-compose version ref from CMP ( #5183 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-17 21:41:36 -05:00
James Rich
14e86b90f1
feat(mqtt): adopt mqttastic-client-kmp 0.2.0 — disconnect reasons + Test Connection ( #5181 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-17 21:33:55 -05:00
James Rich
61d7f6fef3
fix(deps): pin androidx-compose runtime-tracing/ui-test to CMP version ( #5179 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-17 15:46:59 -05:00
James Rich
a97f704300
feat(mqtt): migrate to MQTTastic-Client-KMP ( #5165 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-17 15:19:08 +00:00
James Rich
17e69c6d4c
chore: review-cleanup fleet (audit + fix + hardening) ( #5158 )
2026-04-17 00:02:59 +00:00
renovate[bot]
3a2f2fc56b
chore(deps): update kotlin to v2.3.21-rc2 ( #5155 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-16 16:33:25 +00:00
renovate[bot]
50896d455b
chore(deps): update dd.sdk.android to v3.9.0 ( #5156 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-16 16:33:13 +00:00
James Rich
a580cd0467
chore(analytics): disable Datadog Compose action tracking ( #5153 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-15 23:09:21 +00:00
renovate[bot]
f72b91328d
chore(deps): update androidx.compose to v1.11.0-rc01 ( #5144 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-15 07:47:53 -05:00
James Rich
d0057752f6
fix(ci): remove Renovate groupings and decouple AndroidX Compose version ref ( #5143 )
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-15 07:23:20 -05:00