docs: define v1 requirements

This commit is contained in:
2026-03-13 01:36:43 +08:00
parent 906d84bc4c
commit 4df2f68039

106
.planning/REQUIREMENTS.md Normal file
View File

@@ -0,0 +1,106 @@
# Requirements
**Project:** TCKRTUIYO - RTU Web Interface
**Date:** 2026-03-13
---
## v1 Requirements
### Dashboard
- [ ] **DASH-01**: Display real-time rainfall (Today, Hourly, MAR Acc, Yearly Acc) in mm
- [ ] **DASH-02**: Display solar voltage reading
- [ ] **DASH-03**: Display battery voltage with status indicator (HIGH/LOW)
- [ ] **DASH-04**: Display station ID and version info
- [ ] **DASH-05**: Display real-time clock (HH:MM:SS) and date (YYYY-MM-DD)
- [ ] **DASH-06**: Display communication status (ASU/dBm/percentage)
- [ ] **DASH-07**: Display login status indicator
### Settings - Station
- [ ] **STAT-01**: View/edit Station Info
- [ ] **STAT-02**: Set Date and Time manually
- [ ] **STAT-03**: Configure Mobile/GPRS settings (Master/SubMaster numbers, Engineer numbers)
### Settings - Sensors
- [ ] **SENS-01**: Configure ADC channels (4-20mA, 0-10vDC types)
- [ ] **SENS-02**: Set Datum offset for each ADC channel
- [ ] **SENS-03**: Set Range for each ADC channel
- [ ] **SENS-04**: Configure Rainfall sensor ID and thresholds
- [ ] **SENS-05**: Set Danger/Warning/Start rainfall thresholds with time windows
- [ ] **SENS-06**: Configure Water Level sensor IDs and thresholds
- [ ] **SENS-07**: Configure EVAP settings (ID, reset times, max/min levels)
- [ ] **SENS-08**: Configure SIREN settings
### Settings - Network
- [ ] **NETW-01**: Configure Local IP Address, Subnet Mask, Gateway, DNS
- [ ] **NETW-02**: Display MAC address
- [ ] **NETW-03**: Configure Transfer Protocol (FTP/SCP/SFTP/WEBDAV)
- [ ] **NETW-04**: Configure Server IP, Port, File Directory
- [ ] **NETW-05**: Configure Tide Hour settings
- [ ] **NETW-06**: Display/Set Latitude and Longitude (manual or from GPS)
### Data Management
- [ ] **DATA-01**: View Flash Memory file list
- [ ] **DATA-02**: View CSV file contents
- [ ] **DATA-03**: Delete CSV files from Flash Memory
- [ ] **DATA-04**: Export data via CSV
- [ ] **DATA-05**: Configure Tieda data transmission
### Calibration
- [ ] **CALB-01**: View live ADC readings for all channels
- [ ] **CALB-02**: View calculated sensor values based on Datum/Range
- [ ] **CALB-03**: Reset rainfall tip counters
- [ ] **CALB-04**: Reset calibration readings
### UI/UX
- [ ] **UI-01**: Modern, compact UI design optimized for 1024x600 display
- [ ] **UI-02**: Touch-friendly interface (44px+ touch targets)
- [ ] **UI-03**: Responsive layout for Full HD remote access
- [ ] **UI-04**: Fast performance on Pi Zero 2 W (< 200KB JS bundle)
- [ ] **UI-05**: Navigation menu with utility/settings, calibration, flash memory
---
## v2 Requirements (Deferred)
- Graph/Chart views with extended time ranges
- Advanced alarm threshold configuration
- Calibration wizard
- Multiple station support
- Extended data export options
---
## Out of Scope
- **Mobile app** — Web-only interface
- **Cloud server** — RTU side only
- **Hardware sensor integration** — UI only
- **AI/predictive analytics** — Overkill for rainfall monitoring
- **3D visualizations** — Resource-heavy, not needed
- **Multi-touch gestures** — Error-prone, standard touch sufficient
---
## Traceability
| REQ-ID | Phase | Status |
|--------|-------|--------|
| DASH-01 — DASH-07 | TBD | Not planned |
| STAT-01 — STAT-03 | TBD | Not planned |
| SENS-01 — SENS-08 | TBD | Not planned |
| NETW-01 — NETW-06 | TBD | Not planned |
| DATA-01 — DATA-05 | TBD | Not planned |
| CALB-01 — CALB-04 | TBD | Not planned |
| UI-01 — UI-05 | TBD | Not planned |
---
*Last updated: 2026-03-13 after requirements definition*