M8T3:Perform Full System Validation Test
(Full-System Validation After Flashing Final Firmware)
With maximum details, zero code, and a pure developer instruction format.
1. Summary
This task ensures the entire system , both hardware + firmware + mobile app + dashboard + server integration, works together in real-world conditions exactly as intended.
It is the final and largest validation stage before long-term testing and demo preparation.
This is NOT unit testing.
This is NOT integration testing.
This is full end-to-end behavior validation , under realistic operation.
2. Goals / Deliverables
✔️ Full validation of
- Hardware
- MCAL Layer
- HAL Layer
- Application Layer
- ESP-01 WiFi firmware
- Mobile App and Dashboard
- Server communication
- Power system
- Sensor readings and decision logic
- Alerts and data storage
✔️ All functional scenarios validated
✔️ A detailed System Validation Report , including
- Test checklist
- Pass/Fail for each item
- Photos/screenshots of real hardware behavior
- Logs (MCU UART, ESP logs, server logs)
3. What This Test Covers
This task validates that:
1) System powers up correctly
- Power stability
- Brown-out behavior
- Splash screen
- Initial sensor detection
2) All sensors operate normally
- PMS5003
- MQ135
- DHT22
- BME680
- Internal ADC channels
3) All HAL outputs operate
- LCD / OLED
- Buzzer
- LEDs
- Bluetooth
- External EEPROM
- ESP-01 WiFi
4) All application tasks run within scheduler time limits
- Sensor manager
- Display manager
- Alerts manager
- Data processing
- Communication manager
- Storage manager
- System control
5) Mobile app syncs properly
- Bluetooth readings
- Commands (threshold update)
- Device status
6) Dashboard works
- Real-time data stream
- Historical logs
- Alerts notification
- Server endpoints
7) WiFi provisioning works
- AP mode
- Web UI
- Save credentials
- STA connect
- Auto-reconnect
8) Server communication
- POST sensor data
- GET thresholds
- Server acknowledgment
- Timeout recovery
9) EEPROM persistence
- Saving thresholds
- Loading config after reboot
10) Error handling
- Sensor failure
- WiFi disconnect
- Overflow of UART buffers
- Power dip
- Invalid ADC reading
4. Step-by-Step Validation Procedure
Step 1 — Pre-Test Setup
Developer prepares:
- Final hardware prototype (from M8T1)
- Final flashed firmware (from M8T2)
- Mobile app installed
- Web dashboard accessible
- ESP-01 provisioned + server online
- Serial terminals open (optional logs)
- All sensors connected and functioning
- Power supply stable (recommended: bench PSU)
Step 2 — Power-On Behavior
Check:
- MCU boots with splash screen
- No resets within first 10s
- ESP-01 sends boot messages
- LCD/OLED displays initial state
- No abnormal buzzer or LED behavior
Record observations.
Step 3 — Sensor Reading Validation
For each sensor:
Verify:
- Raw readings are stable
- Processed values follow specifications
- No out-of-range values
- Trends follow environmental changes
Perform dynamic tests:
- Blow air on PMS5003
- Use alcohol near MQ135
- Warm DHT22 slightly
- Breathing near BME680
Each sensor must react correctly.
Step 4 — Application Layer Tasks Validation
Check all scheduler tasks:
| Task |
Expected Behavior |
| System Control |
System state transitions correct |
| Sensor Manager |
Non-blocking sampling, updated values |
| Data Processing |
Threshold logic executes properly |
| Storage Manager |
No EEPROM corruption |
| Alerts Manager |
Alerts are correct and non-spammable |
| Display Manager |
Screen updates without flicker |
| Communication Manager |
WiFi/BT runs without blocking |
Ensure CPU time <= deadline for each task.
Step 5 — WiFi Provisioning Test
Trigger provisioning:
- MCU → CMD_ENTER_AP
- ESP-01 enters AP mode
- Connect mobile phone to AP
- Open Web UI
- Enter SSID, Password, Server URL
- Save
- ESP-01 connects to router
- MCU receives:
RESP_PROVISIONING_COMPLETED
Verify:
- Credentials saved in ESP flash
- Auto-connect on reboot
Step 6 — Communication (Server) Test
Push sensor data
MCU → ESP: CMD_SEND|{...}
Server must log the data.
Get thresholds
MCU → ESP: CMD_GET_THRESHOLDS
MCU updates internal config.
Simulate timeout
Disable router temporarily → ESP must retry.
Step 7 — Mobile App Sync
Check via Bluetooth:
- Live readings
- Update thresholds
- Control buzzer (if allowed)
- Device info
Ensure no lag > 1 sec.
Step 8 — Display Validation
LCD/OLED must show:
- Multi-sensor page
- Alerts page
- WiFi status page
- Device info
Switching must be smooth.
Step 9 — EEPROM Persistence
Test:
- Update thresholds
- Reboot device
- Confirm values restored from EEPROM
Step 10 — System Stress Test
Run device for 30–60 minutes :
- Monitor stability
- Sensor trends
- No memory leaks
- No reset loops
- No ESP hangs
5. Deliverables
Developer must deliver
✔️ System Validation Checklist (Filled)
Step-by-step table marking PASS / FAIL / NOTES.
✔️ Test Logs
- MCU UART logs
- ESP logs
- Server logs
- App screenshots
- Dashboard screenshots
✔️ Photo/Video Evidence
- Power-on behavior
- Alerts
- Display pages
✔️ Final Validation Report
Document containing:
- All test procedures
- Results
- Notes
- Issues found
- Fix suggestions
✔️ GitHub Issue Updated
With attachments + conclusions.
6. Acceptance Criteria
System passes validation if:
- All subsystems work as expected
- No critical or blocking issues
- All communications reliable
- Sensors produce stable readings
- Device can run for 1 hour continuously
- Dashboard + App both sync correctly
7. Definition of Done (DoD)
- ✔️ Full validation report complete
- ✔️ Test evidence attached
- ✔️ All PASS or minor issues only
- ✔️ Green light for M8T4 (Power Optimization)
M8T3:Perform Full System Validation Test
(Full-System Validation After Flashing Final Firmware)
With maximum details, zero code, and a pure developer instruction format.
1. Summary
This task ensures the entire system , both hardware + firmware + mobile app + dashboard + server integration, works together in real-world conditions exactly as intended.
It is the final and largest validation stage before long-term testing and demo preparation.
This is NOT unit testing.
This is NOT integration testing.
This is full end-to-end behavior validation , under realistic operation.
2. Goals / Deliverables
✔️ Full validation of
✔️ All functional scenarios validated
✔️ A detailed System Validation Report , including
3. What This Test Covers
This task validates that:
1) System powers up correctly
2) All sensors operate normally
3) All HAL outputs operate
4) All application tasks run within scheduler time limits
5) Mobile app syncs properly
6) Dashboard works
7) WiFi provisioning works
8) Server communication
9) EEPROM persistence
10) Error handling
4. Step-by-Step Validation Procedure
Step 1 — Pre-Test Setup
Developer prepares:
Step 2 — Power-On Behavior
Check:
Record observations.
Step 3 — Sensor Reading Validation
For each sensor:
Verify:
Perform dynamic tests:
Each sensor must react correctly.
Step 4 — Application Layer Tasks Validation
Check all scheduler tasks:
Ensure CPU time <= deadline for each task.
Step 5 — WiFi Provisioning Test
Trigger provisioning:
RESP_PROVISIONING_COMPLETEDVerify:
Step 6 — Communication (Server) Test
Push sensor data
MCU → ESP:
CMD_SEND|{...}Server must log the data.
Get thresholds
MCU → ESP:
CMD_GET_THRESHOLDSMCU updates internal config.
Simulate timeout
Disable router temporarily → ESP must retry.
Step 7 — Mobile App Sync
Check via Bluetooth:
Ensure no lag > 1 sec.
Step 8 — Display Validation
LCD/OLED must show:
Switching must be smooth.
Step 9 — EEPROM Persistence
Test:
Step 10 — System Stress Test
Run device for 30–60 minutes :
5. Deliverables
Developer must deliver
✔️ System Validation Checklist (Filled)
Step-by-step table marking PASS / FAIL / NOTES.
✔️ Test Logs
✔️ Photo/Video Evidence
✔️ Final Validation Report
Document containing:
✔️ GitHub Issue Updated
With attachments + conclusions.
6. Acceptance Criteria
System passes validation if:
7. Definition of Done (DoD)