Commit graph

423 commits

Author SHA1 Message Date
andrekir
22b1cf0f16 feat: add encryption status icon and dialog to node list items 2024-09-23 10:13:27 -03:00
andrekir
587c6c91f4 refactor: ensure backward compatibility for PKC encryption 2024-09-22 23:01:33 -03:00
Andre K
36a13d7687
fix(conifg): implement sessionPasskey handling for admin requests (#1263) 2024-09-20 06:07:35 -03:00
andrekir
8c07532995 fix(MeshService): revert nodeDBbyNodeNum to local variable
avoids performance issues causing data loss by reverting `nodeDBbyNodeNum` to a local `ConcurrentHashMap`
2024-09-19 18:17:30 -03:00
andrekir
852c6e1bc2 refactor: enable remote admin to set/remove fixed_position 2024-09-18 19:50:33 -03:00
andrekir
81d8a9f93f fix(MeshService): revert myNodeInfo to local variable
avoids performance issues and simplifies state management as `MyNodeInfo` is only relevant during an active session
2024-09-18 19:46:39 -03:00
andrekir
0b72486506 fix: deviceMetrics reference in NodeInfo.toEntity mapper 2024-09-17 07:52:34 -03:00
Andre K
396195a1b8
refactor: introduce NodeEntity protobuf-based database entity (#1250) 2024-09-16 17:57:30 -03:00
andrekir
2433cbc00a feat: show names with a lock for DMs using PKC 2024-09-16 10:30:15 -03:00
DJ Holt
610e5f1049
Show results for two-way traceroute, including SNR values between hops (#1248) 2024-09-16 09:16:06 -03:00
andrekir
ac928b40d4 fix: avoid starting FGS with location type without permission 2024-09-14 18:38:30 -03:00
andrekir
2ce306b5be fix(MeshService): ensure proper handling of NodeInfo user field 2024-09-14 17:48:09 -03:00
andrekir
9a332e8367 refactor(MeshService): remove redundant updateNodeInfo call 2024-09-13 19:08:36 -03:00
andrekir
a98d3899e6 refactor(MeshService): remove discardNodeDB and simplify logic 2024-09-13 19:03:28 -03:00
andrekir
1252b67fce refactor(MeshService): update getNodes() to use nodeDBbyNodeNum 2024-09-13 18:37:10 -03:00
andrekir
52e79da803 fix(MeshService): wait for node db initialization with a timeout 2024-09-13 18:36:30 -03:00
andrekir
39a18e6418 refactor: replace service local node db with Room NodeDB 2024-09-13 00:19:21 -03:00
andrekir
3a6511b7f9 refactor: unify service node DB into a single source 2024-09-11 18:59:11 -03:00
andrekir
7411455e17 feat: send AdminMessage set_time_only on ConfigComplete 2024-09-09 19:13:13 -03:00
andrekir
e9248c9440 refactor: remove unused firmware update code 2024-09-09 19:03:30 -03:00
andrekir
9a810885da refactor: remove redundant time check in MeshPacket handling 2024-09-09 19:02:21 -03:00
andrekir
2a58fe09c1 refactor: build MyNodeInfo hwModel from DeviceMetadata 2024-09-09 18:57:36 -03:00
andrekir
a916871596 chore: remove MeshServiceTest 2024-09-08 08:43:50 -03:00
andrekir
716b75c6be feat: implement AdminMessage session_passkey handling 2024-09-04 09:31:15 -03:00
andrekir
3182fad723 refactor: tag LocSource.LOC_EXTERNAL to Android GPS positions 2024-09-04 09:20:51 -03:00
andrekir
3a97e6dbcb refactor: remove BACKGROUND_LOCATION permission 2024-08-29 08:10:09 -03:00
andrekir
dd00f79241 feat: add fromRadio client notification 2024-08-25 10:55:55 -03:00
andrekir
cd05f8d565 feat: add SecurityConfig 2024-08-25 09:32:31 -03:00
andrekir
3a11ca9a1c refactor: add shortName to traceroute response
closes #1164
2024-08-18 09:34:47 -03:00
andrekir
6d4b0b60f8 refactor: rename admin factory reset method
references:
- https://github.com/meshtastic/protobufs/pull/539
- https://github.com/meshtastic/firmware/pull/4427
2024-08-18 06:36:24 -03:00
andrekir
df6b0e1949 fix: queued messages not being sent once reconnected 2024-07-28 07:17:06 -03:00
andrekir
4f5c6a5fd1 refactor: implement ServiceCompat.startForeground with error handling
- replaces `Service.startForeground` with `ServiceCompat.startForeground` with support for different API levels;
- adds try-catch block to handle exceptions and report errors if startForeground fails.

references:
- https://issuetracker.google.com/issues/307329994
- https://developer.android.com/develop/background-work/services/foreground-services#start
2024-07-25 18:04:11 -03:00
andrekir
4d2dcad50e refactor: raise minimum firmware version to 2.3.2
closes #1031
2024-06-30 08:52:52 -03:00
andrekir
e5396524fb fix: getMslAltitudeMeters call when MSL altitude is not available 2024-06-16 08:33:45 -03:00
andrekir
d7013e1386 feat: add unread message count 2024-06-15 12:42:55 -03:00
Andre K
001b18be95
feat: implement MSL altitude using AltitudeConverterCompat (#1094)
- Added `androidx.core:core-location-altitude:1.0.0-alpha02`;
- Implemented `AltitudeConverterCompat.addMslAltitudeToLocation(context, location)` to convert `altitude` (above the WGS84 reference ellipsoid) to Mean Sea Level (MSL) and add MSL altitude and accuracy to the location object.

Reference:
- https://issuetracker.google.com/issues/195660815
- Brian Julian and Michael Angermann. "Resource efficient and accurate altitude conversion to Mean Sea Level." [2023 IEEE/ION Position, Location and Navigation Symposium (PLANS)](https://www.ion.org/plans/abstracts.cfm?paperID=12011).
2024-06-13 07:26:56 -03:00
Andre K
5b3c78316b
feat: support for switching between devices (#1078) 2024-06-08 10:25:47 -03:00
andrekir
814cf41f90 refactor: simplify wantConfig feedback 2024-06-03 10:17:20 -03:00
andrekir
de3d74b979 refactor: show nodes with unknown user info
closes #912
2024-05-19 06:45:03 -03:00
andrekir
a12c5052bc refactor: improve connection status feedback using new wantConfig state 2024-05-05 06:57:04 -03:00
andrekir
4203b28a45 fix: don't show notifications for sent messages 2024-04-30 19:51:00 -03:00
Andre K
ecaf35d7f3
feat: add ActionMenu option to mute contacts (#1003) 2024-04-28 16:18:16 -03:00
andrekir
0187bc4c72 refactor: simplify position requests 2024-04-21 08:49:09 -03:00
andrekir
d7812c5777 fix #973: ignore data from traceroute requests 2024-04-21 08:48:40 -03:00
Dayle Drinkwater
47b2ecc8aa
Hops Away implementation (#966)
* Initial Hops Away feature

* Generate our own hopsAway, comparing hopStart to hopLimit

* Remove import of hopsAway from device nodeInfo, as this only shows 0 when hopStart isn't included on packets (with this info, we can't differentiate between a node which is Hops Away but on old firmware, or nodes which are on new firmware but direct. Both are 0)

Check if hopStart is 0 but hopLimit is not 0, if true set hopsAway to -1.

Show nodes with hopsAway with -1 with a (!) appended to the RSSI details, to show this probably isn't true. (eg they are using old firmware)

Change the default of hopsAway to -1, until we know it is direct (0) or hops away (1+)

* tidy up: move from nested if else to when

* Revert Project_Default.xml

* Move hopsAway when block in to updateNodeInfo() block above it.

Move hopsAway var to end of NodeInfo Class.

Schema update due to change above.

* hopsAway now follows firmware implementation.
hopsAway now imported from radio (installNodeInfo)

* reformat

---------

Co-authored-by: andrekir <andrekir@pm.me>
2024-04-21 08:14:35 -03:00
andrekir
c15c3d8c09 refactor(config): pass destNum via setFragmentResultListener 2024-04-15 17:56:47 -03:00
Jonathan Bennett
828696aca7
Add option to delete single node from nodeDB (#958) 2024-04-09 07:18:38 -03:00
andrekir
5b43089392 refactor: simplify RadioConfigViewModel packet processing 2024-04-07 19:50:27 -03:00
andrekir
76151e153f refactor: move error message handling to ServiceRepository 2024-04-07 16:44:45 -03:00
andrekir
cf239e3634 refactor: move tracerouteResponse logic to service 2024-04-07 16:26:47 -03:00