Skip to content

feat: Enhance mPWRD-os WiFi provisioning success state and UI components#5225

Merged
jamesarich merged 11 commits into
mainfrom
feat/polish-nymea-mpwr-os-provisioning
Apr 23, 2026
Merged

feat: Enhance mPWRD-os WiFi provisioning success state and UI components#5225
jamesarich merged 11 commits into
mainfrom
feat/polish-nymea-mpwr-os-provisioning

Conversation

@jamesarich

Copy link
Copy Markdown
Collaborator

This pull request enhances the Wi-Fi provisioning feature by adding support for displaying the device's IP address after a successful connection and enriching the user experience with more detailed connection information. The changes span protocol updates, UI state management, and new UI strings for improved feedback to the user.

Wi-Fi Provisioning Protocol and Data Model Enhancements:

  • Added a new BLE command (CMD_GET_CONNECTION) to request current connection details, including the device's IP address, and a short timeout constant for this optional metadata lookup (CONNECTION_INFO_TIMEOUT). [1] [2]
  • Updated the protocol data models to include NymeaConnectionInfo, which holds details such as SSID, BSSID, signal strength, protection status, and IP address. The NymeaResponse model now optionally includes this connection info payload. [1] [2]
  • Modified the provisioning result model (ProvisionResult.Success) to carry the IP address if available.

Business Logic and State Management:

  • Enhanced the provisioning workflow in NymeaWifiService to extract and return the IP address after a successful connection, using either the immediate response or a best-effort follow-up query. [1] [2] [3] [4] [5]
  • Updated WifiProvisionViewModel and WifiProvisionUiState to store and propagate the IP address to the UI layer, resetting it appropriately during new provisioning attempts. [1] [2] [3]

User Interface Improvements:

  • Added new UI strings to support displaying connection status, IP address, SSH command, and related instructions after successful Wi-Fi provisioning.
  • Updated UI preview functions to handle and display the new ipAddress property in various connection states. [1] [2] [3] [4] [5] [6] [7] [8]
  • Minor UI code improvements and imports to support the new features. [1] [2] [3]

These changes collectively provide a more informative and user-friendly Wi-Fi provisioning experience, making it easier for users to complete device setup and connect via SSH.

image

Copilot AI and others added 4 commits April 22, 2026 22:18
- Refactor ProvisionInfoCard into ProvisionInfoItem using Material3 ListItem for better alignment
- Update ProvisionSuccessContent spacing and padding to improve visual hierarchy
- Replace standard Button with FilledTonalButton for the SSH action
- Add a Light/Dark mode Compose preview for the provisioning success state
@github-actions github-actions Bot added the enhancement New feature or request label Apr 23, 2026
Copilot AI and others added 4 commits April 22, 2026 20:11
- Refactor ProvisionInfoCard into ProvisionInfoItem using Material3 ListItem for better alignment
- Update ProvisionSuccessContent spacing and padding to improve visual hierarchy
- Replace standard Button with FilledTonalButton for the SSH action
- Add a Light/Dark mode Compose preview for the provisioning success state
@jamesarich
jamesarich force-pushed the feat/polish-nymea-mpwr-os-provisioning branch from 9298f93 to b338323 Compare April 23, 2026 01:11
@jamesarich
jamesarich enabled auto-merge April 23, 2026 01:16
@jamesarich
jamesarich added this pull request to the merge queue Apr 23, 2026
Merged via the queue into main with commit cf834a7 Apr 23, 2026
11 checks passed
@jamesarich
jamesarich deleted the feat/polish-nymea-mpwr-os-provisioning branch April 23, 2026 02:22
Copilot AI added a commit that referenced this pull request Apr 24, 2026
…nts (#5225)

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: garthvh <1795163+garthvh@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants