-
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EEG Device Pairing #19
Conversation
7768fcb
to
014aa79
Compare
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #19 +/- ##
==========================================
+ Coverage 78.82% 81.29% +2.47%
==========================================
Files 28 49 +21
Lines 708 1608 +900
==========================================
+ Hits 558 1307 +749
- Misses 150 301 +151
Continue to review full report in Codecov by Sentry.
|
9c9a061
to
363da88
Compare
@Supereg As discussed in the last meeting: I took a look at the fastlane setup and changed it so the test are run on the main target while releases are created using the Muse target. Also updated some other elements in the scheme to allow testing for the different schemes using the test plan. I have seen some failing builds due to the settings app crashing in the simulator and just restarted our VM that host the builds here. Hope this will fix this. |
@Supereg Let me know if you continuously run into build errors due to our build agents. |
Seems like there were some issues with the Schemes. Xcode seemingly changed them itself? Or I messed up? Whatever, it works now. And I disabled CodeQL as the PR bumps the deployment target to iOS 17 due to new API usage (see StanfordSpezi/SpeziTemplateApplication#43). |
@PSchmiedmayer I'm fighting a bit with code coverage right now. It seems like codecov suddenly counts all previews as "Not covered" where they previously were seemingly excluded from code coverage. Do you have any experience or ideas where this might stem from? EDIT: it doesn't seem like CodeCov doesn't pick up any of the code coverage of the added tests 🙈 EDIT: Resolved. |
Nice job @Supereg! 🚀 |
EEG Device Pairing
♻️ Current situation & Problem
As of right now the app doesn't integrate any EEG devices to connect to and perform EEG measurements.
💡 Proposed solution
This PR adds an initial version of integration with Muse EEG devices for pairing. Particularly we add a
Nearby Devices
view to discovery and pair with nearby Muse EEG headbands and view the device details of a currently connected headband.Additionally, we add a very basic view to explore the live EEG measurement stream of the currently connected Muse headband.
Below are some visual illustrations of the new functionality:
The Muse SDK is available as invite only (see here). Therefore, the SDK itself is pulled in as a git submodule.
As the SDK only compiles for iOS and not for the iOS simulator, the Xcode project adds a new
NAMS Muse
target. TheNAMS
target uses a Mock Device Layer for previewing and testing whileNAMS Muse
includes the live Muse SDK used to deploy the app.⚙️ Release Notes
➕ Additional Information
Related PRs
--
Testing
Unit tests were added based on the mock device implementation. The Muse code cannot be tested in the CI setup as of right now.
Reviewer Nudging
It might make sense to visually navigate the new UI and, from that point, review the device layer implementation. It makes sense to review the device layer in conjunction with the Muse SDK implementation as this was one of the driving factors for the thin abstraction layer.
Code of Conduct & Contributing Guidelines
By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines: