Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| report:dvp [2026/06/14 13:22] – [Software] team2 | report:dvp [2026/06/14 22:14] (current) – [Smart System] team2 | ||
|---|---|---|---|
| Line 398: | Line 398: | ||
| The tablet application manages all user interactions, | The tablet application manages all user interactions, | ||
| - | The ESP32 receives these commands and applies them to the physical | + | The ESP32 receives these commands and applies them to the physical |
| This architecture ensures a clear separation between user interaction and hardware control, making the system easier to develop, test, and extend. | This architecture ensures a clear separation between user interaction and hardware control, making the system easier to develop, test, and extend. | ||
| Line 453: | Line 453: | ||
| <WRAP centeralign> | <WRAP centeralign> | ||
| <figure fig: | <figure fig: | ||
| - | {{ : | + | {{ : |
| < | < | ||
| </ | </ | ||
| Line 471: | Line 471: | ||
| The client receives commands from the server in a simple string-based message format, for example: message = " | The client receives commands from the server in a simple string-based message format, for example: message = " | ||
| - | **Software Implementation and Code Flowcharts** | + | === Software Implementation and Code Flowcharts |
| The Bloem application was developed as a native Android tablet app. The app is responsible for the main user interaction, | The Bloem application was developed as a native Android tablet app. The app is responsible for the main user interaction, | ||
| Line 477: | Line 477: | ||
| The prototype software is divided into two main parts. The Android app manages the interface, session logic, timer, and audio playback through a Bluetooth speaker. The ESP32 is responsible for controlling the LED lighting system. Communication between the app and the ESP32 is done through Wi-Fi using TCP commands. | The prototype software is divided into two main parts. The Android app manages the interface, session logic, timer, and audio playback through a Bluetooth speaker. The ESP32 is responsible for controlling the LED lighting system. Communication between the app and the ESP32 is done through Wi-Fi using TCP commands. | ||
| - | {{: | + | <WRAP centeralign> |
| + | <figure fig: | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| - | The above flowchart shows the session booking process. The user opens the app, selects “Book a Session”, chooses the session duration and time slot, and confirms the booking if the selected slot is available. If the slot is unavailable, | ||
| - | {{:report: | + | In the above Figure |
| - | The above flowchart shows the session | + | <WRAP centeralign> |
| + | <figure fig: | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| - | {{:report: | + | In the above Figure |
| - | The above flowchart shows the TCP communication used for LED control. When the user selects a color, the app converts it into RGB values, creates a command string, connects to the ESP32, sends the command, and waits for an acknowledgement response. If the response is valid, the app updates the interface as successful; otherwise, it displays an error. | + | <WRAP centeralign> |
| + | <figure fig: | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | In the above Figure {{ref> | ||
| Overall, the flowcharts explain how the app separates the user experience from the hardware control. The tablet application handles interaction and audio, while the ESP32 manages the physical lighting system inside the capsule. | Overall, the flowcharts explain how the app separates the user experience from the hardware control. The tablet application handles interaction and audio, while the ESP32 manages the physical lighting system inside the capsule. | ||
| Line 516: | Line 532: | ||
| == Software tests == | == Software tests == | ||
| - | Software | + | **Software |
| - | (i) functional tests regarding | + | |
| - | (ii) performance | + | The Bloem mobile application was tested through |
| - | (iii) usability tests according | + | |
| + | **Functional Tests** | ||
| + | |||
| + | Functional | ||
| + | |||
| + | <WRAP 100%> | ||
| + | |||
| + | <table tab: | ||
| + | < | ||
| + | ^ Test ID ^ Related Use Case / User Story ^ Test Description ^ Expected Result ^ Status ^ | ||
| + | | FT1 | Book a session | User selects session duration and available time slot | Booking is confirmed and session is saved | Passed | | ||
| + | | FT2 | Book a session | User selects an unavailable time slot | App displays an unavailable message and asks the user to choose again | Passed | | ||
| + | | FT3 | Start session | User starts a booked session | Session timer starts and environment options become available | Passed | | ||
| + | | FT4 | Choose environment preset | User selects Calm, Ocean, Rain, or Energetic | Correct sound and lighting preset is selected | Passed | | ||
| + | | FT5 | Set LED color | User selects a light color in the app | RGB command is sent to ESP32 and LED color changes | Passed | | ||
| + | | FT6 | Control sound setting | User selects a sound option | Audio plays through the tablet and Bluetooth speaker | Passed | | ||
| + | | FT7 | End session | User ends the session manually or timer expires | Audio stops and LED system is reset or turned off | Passed | | ||
| + | | FT8 | Connection error | ESP32 is unavailable during LED command | App displays an error message and does not crash | Passed | | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | **Performance Tests** | ||
| + | |||
| + | Performance | ||
| + | |||
| + | |||
| + | <WRAP 100%> | ||
| + | |||
| + | <table tab: | ||
| + | < | ||
| + | ^ Test ID ^ Operation ^ Data Exchanged ^ Repetitions ^ Metric Measured ^ Average Result | ||
| + | | PT1 | Send LED color command | ||
| + | | PT2 | Start session command | 200 B (session object write) | 10 | Runtime | ||
| + | | PT3 | End session command | 100 B (session status update) | 10 | Runtime | ||
| + | | PT4 | Change environment preset | 320 B (preset config read + commands) | 10 | Runtime | ||
| + | | PT5 | App screen navigation | Negligible (internal UI state) | 10 | Runtime | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | |||
| ==== Summary ==== | ==== Summary ==== | ||
| - | //Provide here the conclusions | + | The prototype demonstrates a functional and well-integrated system combining both hardware and software components. The structural design reflects |
| + | |||
| + | Although some elements of the design were simplified or not implemented due to limitations in time, budget, and materials, | ||
| + | |||
| + | This leads to the final discussion of the project, where the achievements, | ||