3781 Commits

Author SHA1 Message Date
James Rich
d3cfc46148 2.5.22 (#1775) 2.5.22 2025-04-21 15:05:55 -05:00
James Rich
5d5a4938a2 fix: clear local DB after reset (#1746) 2025-04-21 13:52:41 -05:00
renovate[bot]
a28b03fde7 chore(deps): update com.google.devtools.ksp to v2.1.20-2.0.0 (#1756)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-04-19 02:33:27 -05:00
renovate[bot]
30d432cc92 chore(deps): update hilt to v2.56.2 (#1768)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:31:01 -05:00
renovate[bot]
180f033a5e chore(deps): update kotlinx.coroutines.android to v1.10.2 (#1754)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:30:17 -05:00
renovate[bot]
ab5109e771 chore(deps): update room to v2.7.0 (#1759)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:13:15 -05:00
renovate[bot]
043bb71304 chore(deps): update androidx.core:core-ktx to v1.16.0 (#1758)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:12:39 -05:00
renovate[bot]
ba59c6873f chore(deps): update androidx.compose:compose-bom to v2025.04.00 (#1757)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:11:56 -05:00
renovate[bot]
f700febb75 chore(deps): update org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.1 (#1747)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:09:31 -05:00
renovate[bot]
b7a179a382 chore(deps): update com.google.protobuf:protobuf-gradle-plugin to v0.9.5 (#1745)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:09:06 -05:00
renovate[bot]
bd2092b6a7 chore(deps): update com.google.firebase:firebase-bom to v33.12.0 (#1743)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-18 20:08:18 -05:00
Robert-0410
25fe0a1e05 fix: avoiding NaN values for temperature readings (#1744) 2025-04-05 12:22:53 -04:00
James Rich
b6876bba64 fix: disable editing of Public Key field (#1737) 2025-03-31 12:18:13 -05:00
James Rich
d0816d3495 fix: Remove nodeDb size from status string (#1734) 2025-03-31 12:17:33 -05:00
James Rich
e9d6916529 fix: remove notification grouping (#1735) 2025-03-31 12:16:22 -05:00
James Rich
4548434b7e chore (repo): Add release configuration (#1731) 2025-03-29 15:43:34 -05:00
James Rich
ba1416e95a 2.5.21 (#1729) 2.5.21 2025-03-29 07:01:12 -05:00
renovate[bot]
86ea315f15 chore(deps): update com.google.devtools.ksp to v2.1.20-1.0.32 (#1699)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-28 16:03:55 -05:00
James Rich
b20fb93e8f fix: udp toggle display logic (#1728) 2025-03-27 20:40:25 -05:00
renovate[bot]
690e05affc chore(deps): update androidx.compose:compose-bom to v2025.03.01 (#1723)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27 20:37:33 -05:00
renovate[bot]
ba74c1d3c2 chore(deps): update protobuf.kotlin to v4.30.2 (#1727)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27 20:37:03 -05:00
renovate[bot]
bd6ccc95f8 chore(deps): update androidx.datastore:datastore to v1.1.4 (#1724)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27 20:36:20 -05:00
renovate[bot]
64dd9e6b78 chore(deps): update hilt to v2.56.1 (#1721)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27 20:35:57 -05:00
renovate[bot]
cb543bbf5f chore(deps): update com.android.tools.build:gradle to v8.9.1 (#1717)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-27 20:35:19 -05:00
Robert-0410
5379f9dede fix: use the appropriate min when scaling the barometric pressure data (#1719) 2025-03-27 20:27:30 -05:00
James Rich
a28dc377ae fix: Handle node public key mismatch and show warning (#1720)
* Handle node public key mismatch and show warning

- Add a mismatchKey flag to Node and MessageTopBar to indicate a public key mismatch.
- Set the public key to a default error value (all zeros) when a node's public key changes.
- Display a warning in the MessageTopBar when a key mismatch is detected in PKC.
- Only clear all nodes when a different mynode number is present.

* feat: Add key mismatch detection to NodeInfoDao

This commit introduces a new feature to the `NodeInfoDao` that detects and handles public key mismatches for existing nodes.

-   A new function `upsertCheckKeyMatch` is added to `NodeInfoDao` that checks for public key changes when upserting a node. If a mismatch is detected, the public key is set to `ERROR_BYTE_STRING`, and a warning is logged.
- The function `upsertCheckKeyMatch` is used instead of `upsert` in `NodeRepository` and in `putAll` inside of `NodeInfoDao`.
-   A new test `testPkcMismatch` is added to `NodeInfoDaoTest` to verify the key mismatch detection.
- Changed `testNodes` to have unique public keys.
- Added `mismatchKey` state to the node model.

* detekt spacing

* Refactor: Correctly handle different node installations in NodeRepository

The logic for detecting different node installations in `NodeRepository.kt` was inverted, this commit fixes the logic to use `!=` instead of `==` to detect if the node number has changed.
2025-03-27 15:58:43 -05:00
James Rich
53c240198c 2.5.20 2.5.20 2025-03-23 22:26:20 -05:00
James Rich
7effb9f73c chore(dependencies): Upgrade Kotlin to 2.1.20 and KSP to 2.1.20-1.0.31 (#1711)
The Kotlin version has been bumped to 2.1.20 and Kotlin Symbol Processing (KSP) has been updated to version 2.1.20-1.0.31 in the `libs.versions.toml` file.
2025-03-23 22:09:54 -05:00
James Rich
34542fa6cf chore(renovate): revert grouping (#1710) 2025-03-23 21:55:59 -05:00
James Rich
e055e76584 chore(renovate): Update Renovate config to group Kotlin and KSP dependencies(take 2). (#1708) 2025-03-23 21:39:32 -05:00
James Rich
e9bebf3828 chore(renovate): Update Renovate config to group Kotlin and KSP dependencies. (#1706) 2025-03-23 21:00:44 -05:00
renovate[bot]
1728dc58ba chore(deps): update com.google.firebase:firebase-bom to v33.11.0 (#1698)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-23 20:28:14 -05:00
renovate[bot]
0538e73d7d chore(deps): update hilt to v2.56 (#1695)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-23 20:27:36 -05:00
todd2982
7902e21a4a feat #1632: Accessibility updates (#1705)
* Add description for node sort option button

* Add description for location view button

* Update description for channel url copy button

* appease detekt

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-03-23 20:26:28 -05:00
niccellular
3bc4454c0e Expose wantAck in Mesh Packet (#1703)
* Expose wantAck in Mesh Packet

* Update DataPacket.kt

* Update DataPacket.kt

* Update DataPacket.kt

* Update DataPacket.kt

* Refactor: Change wantAck field type in DataPacket

- Changed the `wantAck` field in `DataPacket` from `Int` to `Boolean`.
- Updated read/write and equals/hashcode functions accordingly.

* Update MeshService.kt

* Update MeshService.kt

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-03-21 20:51:52 -05:00
todd2982
123b296b6c fix #1692: Clarify request options to exchange. (#1701) 2025-03-21 16:21:58 -05:00
todd2982
0a7d0ff4be feat: Allow sorting by favorite nodes (#1700) 2025-03-21 16:16:54 -05:00
James Rich
8a8ee27ad9 fix: Conditionally show UDP settings (#1702)
Only show UDP settings if the device has both Ethernet and WiFi.
2025-03-21 15:33:32 -05:00
Ken Piper
373cfe7838 feat: Add a bit more info to the node marker popup (#1691) 2025-03-19 10:02:58 -05:00
James Rich
08c69f3cf2 feat: Update README.md to add repository statistics (#1694)
analytics from https://repobeats.axiom.co/
2025-03-19 10:01:03 -05:00
James Rich
c4ef442037 chore(protos): Meshtastic Protobufs v2.6.2 (#1693) 2025-03-19 10:00:32 -05:00
Ken Piper
ff261c2304 fix: Add some smarts to low battery notification triggers (#1686)
* Add some smarts to low battery notification triggers

* Always bypass cooldown on critically-low battery

* thx detekt

* revert whitespace changes

* Switch newer timestamp code to more widely-compatible version

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-03-19 04:39:52 -05:00
Robert-0410
e839c43542 feat: Graph Barometric Pressure (#1684)
* refactor: condensed the process of drawing the lines in the env metrics

* feat: only include iaq in the env metric graph when we have actual values

* feat: plotting barometric pressure when we have actual values

* detekt: spacing after (

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-03-18 19:37:16 -05:00
Andrew Reitz
903e304964 Update README.md (#1687)
Added info about using Obtainum for getting latest updates directly from github releases.
2025-03-18 19:36:14 -05:00
James Rich
451be0b98c feat #1688: Add UDP mesh toggle (#1689)
Adds a toggle to enable or disable mesh via UDP.
2025-03-18 18:44:39 -05:00
Andre K
6720764ed4 feat: support custom ports in TCP interface (#1534) 2025-03-17 18:13:27 -05:00
James Rich
f3ba084d5b fix #1678: Update MeshService.kt to store the channel for received packets. (#1683)
* Update MeshService.kt to store the channel for received packets.

The channel for received packets is now stored, allowing for better tracking and management.

* Update node info creation to include channel data

- Updates `getOrCreateNodeInfo` to accept a channel parameter and to save the channel to the node info during instantiation of a new/unknown node.
- Updates `updateNodeInfo` to accept a channel parameter and pass it to the updated function.
- Updates call to `updateNodeInfo` in `handleReceivedData` to pass the packet channel data to it.
2025-03-17 17:47:48 -05:00
James Rich
8e5accd518 fix #1484: Filter out ignored nodes from map (#1676)
* fix #1484: Filter out ignored nodes from map

- Created a new `filteredNodeList` `StateFlow` in `UIState.kt` that filters out nodes marked as ignored.
- Updated `MapFragment.kt` to use `filteredNodeList` instead of `nodeList`, ensuring that ignored nodes are not displayed on the map.

* Refactor: Remove ExperimentalCoroutinesApi opt-in and add it to compiler args

- Removes the `@OptIn(ExperimentalCoroutinesApi::class)` annotation from multiple files.
- Adds `-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi` to the `freeCompilerArgs` in the `build.gradle` file, enabling the use of Experimental Coroutines API project-wide without the need for per-file opt-ins.
- The coroutine api is now applied globally.

Signed-off-by: James Rich <james.a.rich@gmail.com>

* detekt

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>

---------

Signed-off-by: James Rich <james.a.rich@gmail.com>
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-03-17 11:40:08 -05:00
renovate[bot]
559b47355d chore(deps): update com.github.mik3y:usb-serial-for-android to v3.9.0 - abandoned (#1666)
* chore(deps): update com.github.mik3y:usb-serial-for-android to v3.9.0

* fix: Use SerialInputOutputManager.start() according to change https://github.com/mik3y/usb-serial-for-android/releases/tag/v3.9.0

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-03-14 06:14:24 -05:00
James Rich
f2355f5a32 chore(proto): Meshtastic Protobufs v2.6.1 (#1677)
updates Meshtastic Protobufs to v2.6.1
2025-03-13 19:34:26 -05:00