Commit graph

366 commits

Author SHA1 Message Date
Blake McAnally
b011cbde42 Create dedicated data layer types for querying and updating CoreData 2024-07-10 16:03:38 -05:00
Garth Vander Houwen
9db1692221 add powerstress app packet handling 2024-07-07 14:39:10 -07:00
Garth Vander Houwen
1d1b886dc7
Merge pull request #749 from meshtastic/log-record-characteristic
New BLE LogRecord characteristic
2024-07-04 09:02:22 -07:00
Ben Meadors
9cf5eb14f5 Plumb in new LogRecord based BLE characteristic 2024-07-02 13:13:12 -05:00
Ben Meadors
36cc22cc91 WIP 2024-07-02 08:04:09 -05:00
Garth Vander Houwen
0ffd3a06d0 Start to make the node list search async 2024-06-29 20:21:53 -07:00
Garth Vander Houwen
d5efb15aca Log updates 2024-06-29 11:05:29 -07:00
Garth Vander Houwen
d0d383f5ce Colorful logs 2024-06-28 18:21:54 -07:00
Blake McAnally
bc77834a86
Merge branch '2.3.12_Working_Changes' into fetch-request-api 2024-06-28 11:49:24 -05:00
Blake McAnally
58da532d32 Extract the generated protobufs into its own Swift package
This change modifies the process for generating and integrating the Meshtastic protobufs into the client application.

* The generated Swift code is now in a local SPM package `MeshtasticProtobufs`
* An Xcode Workspace file `Meshtastic.xcworkspace` was created to more easily manage the new build targets.
* The code generation script for the protos was modified to generate the Swift code into the new location.
* The README.md was updated to reflect these changes.

NOTE: After merging this PR, do not open the project file `Meshtastic.xcodeproj`. You must use the workspace `Meshtastic.xcworkspace`

Extracting out the generated protobuf code into its own library enables several opportunities for the project. This is just a first step, but with some more modularization, a standalone Apple Watch app or other targets starts to become a little bit more achievable to implement.

After extracting the protobufs into a Swift package, I validate these changes by building and running the Meshtastic app to an iPhone 15 Pro Max, and tried changing some settings on a local node. I then messaged back and forth using two local nodes connected to two different iOS devices.
2024-06-28 11:11:01 -05:00
Blake McAnally
a58c5d894b Refactor fetch requests to use the EntityName.fetchRequest() API to prevent unnecessary branching 2024-06-28 09:04:24 -05:00
Garth Vander Houwen
512f6b8c9e assorted backup fixes 2024-06-26 15:12:24 -07:00
Garth Vander Houwen
9d964f1614 Backup and restore database 2024-06-25 21:44:11 -07:00
Garth Vander Houwen
7cd1e897a7 Logging updates 2024-06-25 08:29:26 -07:00
Garth Vander Houwen
fb7ba12fc0 More logs cleanup 2024-06-24 06:31:45 -07:00
Garth Vander Houwen
2b0cb11ee5 Better emoji for dark mode 2024-06-23 19:28:12 -07:00
Garth Vander Houwen
5b092710e5 Emoji 2024-06-23 19:17:55 -07:00
Garth Vander Houwen
a4546247a9 Clean up logs with privacy 2024-06-23 18:25:22 -07:00
Garth Vander Houwen
fc97247b8c Logging and linting 2024-06-23 16:11:02 -07:00
Garth Vander Houwen
f132589e9c Log updates 2024-06-23 13:08:15 -07:00
Garth Vander Houwen
12e090059d Backup database functionality 2024-06-23 13:00:20 -07:00
Garth Vander Houwen
b73b3864ea Delete admin message list 2024-06-23 12:25:08 -07:00
Garth Vander Houwen
26e785926f OS Log Viewer, device serial log over BLE 2024-06-23 07:09:14 -07:00
Garth Vander Houwen
cd0f7dd9d6 Emoji in the logs 2024-06-03 10:23:20 -07:00
Garth Vander Houwen
847892d45d Log categories 2024-06-03 02:17:55 -07:00
Garth Vander Houwen
82a8336e35 Additional swift lint fixes 2024-06-02 20:13:40 -07:00
Garth Vander Houwen
51929b3a35 Swiftlint fixes 2024-06-02 18:32:14 -07:00
Blake McAnally
4c7cd0d923 Adopt OSLog for logging and replace the majority of calls to print() 2024-06-01 11:30:29 -05:00
Blake McAnally
4d547e48db This change fixes several lint errors throughout the project, and moves the SwiftLint build phase to before compilation.
After this change, a developer can now clone the project and run without the build failing due to lint errors! 😃

* I ran `swiftlint --fix` to resolve many auto-correctable issues (mostly whitespace)
* Excluded the `Meshtastic/Protobufs` directory from lint, since that code is automatically generated.
* Converted some single letter method parameters to lowercase.
* Converted several instances `force_cast` to instead use `guard` or `if let` to unwrap optional values. During this change, some of the SwiftUI views became "too complex to be solved in a reasonable time", so I broke up the views into distinct sub-expressions.

I was able to build and run the app on an iOS simulator.
2024-05-31 21:48:50 -05:00
Garth Vander Houwen
3aefd67d06 Check for last postion before sending phone location 2024-05-26 10:37:22 -07:00
Garth Vander Houwen
0997cc7dba Cleanup 2024-05-14 23:07:09 -07:00
Garth Vander Houwen
a4c1fc4fe6 Remove up and downlink from QR codes
Open node details view from new node notification
Fix speed
Simple deep linking structure
2024-05-14 22:39:07 -07:00
Garth Vander Houwen
8bcf40f543 Deep Links
Updated position precision
2024-05-06 23:03:51 -07:00
Garth Vander Houwen
4af2fbc749 Remove unused variable 2024-05-05 09:22:29 -07:00
Garth Vander Houwen
70fb1eb8d8 Don't add channels with the same name
Add additional precision options
2024-05-05 08:38:27 -07:00
Garth Vander Houwen
5e4d542460 Handle nil nodeinfo better 2024-05-04 20:59:16 -07:00
Garth Vander Houwen
016a3b748f Clean up fixed position logging 2024-05-04 13:57:35 -07:00
Garth Vander Houwen
a3a5c4084b Try and fix a nil context crash, created shareed ble manager 2024-05-04 08:20:53 -07:00
Garth Vander Houwen
9663cd69ff Let the firmware handle position precision value from channel 2024-04-30 12:44:47 -07:00
Garth Vander Houwen
04fef0cba9 Get out of disconnect loop 2024-04-30 12:26:57 -07:00
Garth Vander Houwen
2627858e33 Fix some crashes 2024-04-19 13:36:17 -07:00
Garth Vander Houwen
50f2ce5ece Allow cancelling the timer connection 2024-04-13 09:46:13 -07:00
Garth Vander Houwen
2066bdc1cd Set last heard on a node info for a traceroute packet. 2024-04-12 16:34:28 -07:00
Garth Vander Houwen
a80502484e Stop reseting app settings when connecting a new device as fixed position as been refactored.
Make trace route positions be 24 hours
2024-04-08 08:21:37 -07:00
Garth Vander Houwen
b5e621df89 Show mqtt errors for the client proxy 2024-04-05 17:14:04 -07:00
Garth Vander Houwen
95109a3d9d Send want config after channels changes to get new data now that lora config does not reboot 2024-04-03 08:13:16 -07:00
Garth Vander Houwen
85b8c0b091 Yolo 2024-04-03 00:04:46 -07:00
Garth Vander Houwen
2a38dbbb1c Wire up adding instead of replacing channels via qr code. 2024-04-02 23:43:00 -07:00
Garth Vander Houwen
6a41cf63be Put qr code experiment in place, fix up channel editor 2024-04-02 21:49:36 -07:00
Garth Vander Houwen
515bc7fcd6 Finish hooking up favorites 2024-03-31 14:45:30 -07:00