192 lines
11 KiB
Markdown
192 lines
11 KiB
Markdown
# Feature Research
|
|
|
|
**Domain:** RTU/IoT Rainfall Monitoring Web Interface
|
|
**Researched:** 2026-03-13
|
|
**Confidence:** HIGH
|
|
|
|
## Feature Landscape
|
|
|
|
### Table Stakes (Users Expect These)
|
|
|
|
Features users assume exist. Missing these = product feels incomplete.
|
|
|
|
| Feature | Why Expected | Complexity | Notes |
|
|
|---------|--------------|------------|-------|
|
|
| **Real-time rainfall display** | Core purpose of RTU | LOW | Current values: Today, Hourly, Monthly Acc, Yearly Acc. Must update without page refresh |
|
|
| **Power monitoring (Solar/Battery voltage)** | Field devices run on solar/battery | LOW | Critical for maintenance scheduling. Color-coded warnings for low voltage |
|
|
| **Station identification** | Multiple stations in field | LOW | Station ID, coordinates, serial number visible on all screens |
|
|
| **Date/time display** | Data timestamping essential | LOW | Large, readable format. Sync status indicator |
|
|
| **Communication status** | Remote stations need connectivity visibility | LOW | GPRS/Network connection state, last sync timestamp |
|
|
| **Historical data viewing** | Rainfall analysis requires trends | MEDIUM | Time-series charts (24h, 7d, 30d, 1y views). Essential for hydrology analysis |
|
|
| **Device configuration** | Field calibration necessary | MEDIUM | Settings for rainfall parameters, ADC channels, thresholds |
|
|
| **Data export** | External analysis required | MEDIUM | CSV download for integration with hydrology software |
|
|
| **Alarm indicators** | Critical thresholds need attention | LOW | Visual/audible alerts for high rainfall, low battery, communication loss |
|
|
|
|
### Differentiators (Competitive Advantage)
|
|
|
|
Features that set the product apart. Not required, but valuable.
|
|
|
|
| Feature | Value Proposition | Complexity | Notes |
|
|
|---------|-------------------|------------|-------|
|
|
| **Touch-optimized 7" UI** | Purpose-built for 1024x600 industrial touchscreens | MEDIUM | Larger touch targets (44px+), finger-friendly navigation, no hover-dependent features. Most competitors use desktop-oriented interfaces |
|
|
| **Dual-mode display** | Single codebase serves both local kiosk and remote PC users | MEDIUM | 1024x600 optimized layout vs responsive Full HD. Unique value proposition |
|
|
| **Sub-1-second refresh** | Near real-time monitoring for critical events | MEDIUM | WebSocket or Server-Sent Events. Faster than typical 5-30s polling intervals |
|
|
| **Offline data buffering** | Field connectivity is unreliable | HIGH | Local storage sync when connection restored. Differentiates from cloud-only solutions |
|
|
| **Minimal dependencies** | Runs on Pi Zero 2 W with limited resources | MEDIUM | Small bundle size, fast load times. Competitors often resource-heavy |
|
|
| **One-touch calibration** | Simplified field maintenance | MEDIUM | Guided calibration wizard vs manual parameter entry |
|
|
| **Compact settings navigation** | 11 settings categories in small space | MEDIUM | Efficient category grouping, breadcrumbs, search. Reduces navigation depth |
|
|
|
|
### Anti-Features (Commonly Requested, Often Problematic)
|
|
|
|
Features that seem good but create problems.
|
|
|
|
| Feature | Why Requested | Why Problematic | Alternative |
|
|
|---------|---------------|-----------------|-------------|
|
|
| **Mobile app** | "Everyone wants mobile" | Adds complexity, separate codebase, app store overhead | Responsive web interface works on all devices, no installation |
|
|
| **Cloud data storage** | "Put it in the cloud" | Adds cost, connectivity dependency, latency, security concerns | Local storage + FTP/SCP/SFTP/WebDAV push to customer's own infrastructure |
|
|
| **Real-time 3D visualizations** | "Looks impressive" | Heavy on Pi Zero 2 W resources, adds no analytical value | Clean 2D charts with efficient rendering |
|
|
| **Multi-touch gestures** | "Modern interaction" | Error-prone with gloved hands, small screen, outdoor use | Simple tap interactions, large buttons |
|
|
| **Voice control** | "Hands-free operation" | Unreliable in outdoor/industrial noise, adds complexity | Physical buttons for critical operations |
|
|
| **Social sharing** | "Share data easily" | Security risk, irrelevant for industrial monitoring | Secure export to authorized systems only |
|
|
| **Predictive analytics/AI** | "Smart insights" | Overkill for rainfall monitoring, complex to implement | Simple threshold-based alerts with trend indicators |
|
|
|
|
## Feature Dependencies
|
|
|
|
```
|
|
[Real-time Data Display]
|
|
└──requires──> [API Integration Layer]
|
|
└──requires──> [Authentication]
|
|
└──requires──> [WebSocket/SSE Connection]
|
|
|
|
[Historical Charts]
|
|
└──requires──> [Data Storage/Retrieval]
|
|
└──requires──> [Time Range Selection]
|
|
└──enhanced_by──> [Data Aggregation]
|
|
|
|
[Data Export]
|
|
└──requires──> [File Management]
|
|
└──requires──> [CSV Processing]
|
|
|
|
[Alarm System]
|
|
└──requires──> [Real-time Data Display]
|
|
└──requires──> [Threshold Configuration]
|
|
└──conflicts_with──> [Frequent Polling] (performance)
|
|
|
|
[Dual-Mode Display]
|
|
└──requires──> [Responsive Layout System]
|
|
└──requires──> [Viewport Detection]
|
|
|
|
[Touch Optimization]
|
|
└──conflicts_with──> [Hover-Dependent Features]
|
|
└──requires──> [Minimum Touch Target Sizes]
|
|
```
|
|
|
|
### Dependency Notes
|
|
|
|
- **Real-time Data requires API Integration:** Must implement REST/HTTP API client before live data display works. Currently blocked by mock data throughout.
|
|
- **Historical Charts requires Data Storage:** Need backend data persistence with time-series queries. SQLite or similar for Pi-based deployment.
|
|
- **Alarm System conflicts with Frequent Polling:** Too many updates can cause performance issues on Pi Zero 2 W. Use WebSocket push instead of polling.
|
|
- **Touch Optimization conflicts with Hover Features:** Dropdown menus on hover won't work on touchscreens. Use explicit tap interactions.
|
|
- **Data Export requires File Management:** Flash memory view already exists but needs integration with CSV export workflow.
|
|
|
|
## MVP Definition
|
|
|
|
### Launch With (v1)
|
|
|
|
Minimum viable product — what's needed to validate the concept.
|
|
|
|
- [ ] **Dashboard with live rainfall display** — Core value proposition; shows Today's rainfall, Hourly, MAR Acc, Yearly Acc with real-time updates
|
|
- [ ] **Solar/Battery voltage monitoring** — Essential for field operations; power management is critical for remote stations
|
|
- [ ] **Station info header** — Context awareness; station ID, time, date, comm status visible on all screens
|
|
- [ ] **Historical chart (24-hour)** — Basic trend analysis; minimum viable for hydrology use cases
|
|
- [ ] **Key settings categories** — Field configuration; Rainfall, ADC, Network, GPRS settings
|
|
- [ ] **CSV data export** — External integration; download for analysis in external software
|
|
|
|
### Add After Validation (v1.x)
|
|
|
|
Features to add once core is working.
|
|
|
|
- [ ] **Extended time ranges** — 7-day, 30-day, 1-year charts; trigger: users requesting longer historical views
|
|
- [ ] **Alarm threshold configuration** — Custom alerts; trigger: need for site-specific thresholds
|
|
- [ ] **Full settings suite** — Remaining 7 settings categories; trigger: advanced configuration needs
|
|
- [ ] **Calibration wizard** — Guided sensor calibration; trigger: field maintenance feedback
|
|
- [ ] **Network protocol options** — FTP/SCP/SFTP/WebDAV; trigger: customer infrastructure requirements
|
|
|
|
### Future Consideration (v2+)
|
|
|
|
Features to defer until product-market fit is established.
|
|
|
|
- [ ] **Multi-station dashboard** — Aggregate view of multiple RTUs; defer: single-station focus for MVP
|
|
- [ ] **Advanced analytics** — Rainfall intensity, accumulation rates; defer: complex, niche use cases
|
|
- [ ] **Remote configuration API** — Third-party integration; defer: customer demand validation needed
|
|
- [ ] **Offline mode with sync** — Buffer data during outages; defer: adds significant complexity
|
|
|
|
## Feature Prioritization Matrix
|
|
|
|
| Feature | User Value | Implementation Cost | Priority |
|
|
|---------|------------|---------------------|----------|
|
|
| Real-time rainfall display | HIGH | LOW | P1 |
|
|
| Solar/Battery monitoring | HIGH | LOW | P1 |
|
|
| Station info header | HIGH | LOW | P1 |
|
|
| 24-hour historical chart | HIGH | MEDIUM | P1 |
|
|
| Basic settings (4 categories) | HIGH | LOW | P1 |
|
|
| CSV export | MEDIUM | MEDIUM | P1 |
|
|
| Touch optimization | HIGH | MEDIUM | P2 |
|
|
| Dual-mode display | HIGH | MEDIUM | P2 |
|
|
| Extended time ranges | MEDIUM | LOW | P2 |
|
|
| Alarm thresholds | MEDIUM | MEDIUM | P2 |
|
|
| Full settings suite | MEDIUM | LOW | P2 |
|
|
| Calibration wizard | MEDIUM | MEDIUM | P2 |
|
|
| Network protocols | MEDIUM | HIGH | P3 |
|
|
| Multi-station view | LOW | HIGH | P3 |
|
|
| Advanced analytics | LOW | HIGH | P3 |
|
|
| Offline sync | MEDIUM | HIGH | P3 |
|
|
|
|
**Priority key:**
|
|
- P1: Must have for launch
|
|
- P2: Should have, add when possible
|
|
- P3: Nice to have, future consideration
|
|
|
|
## Competitor Feature Analysis
|
|
|
|
| Feature | Traditional SCADA | Cloud IoT Platforms | Our Approach |
|
|
|---------|-------------------|---------------------|--------------|
|
|
| **Display optimization** | Desktop-oriented, small touch targets | Web-based, responsive but not touch-first | Purpose-built for 7" 1024x600 touchscreens |
|
|
| **Real-time updates** | 5-30 second polling typical | WebSocket streaming | Sub-1-second updates optimized for Pi hardware |
|
|
| **Deployment model** | On-premise servers, expensive licenses | Cloud subscription, connectivity dependent | Edge computing on Pi, local-first architecture |
|
|
| **Configuration UI** | Complex, multi-level menus | Generic dashboards, not sensor-specific | Streamlined settings for rainfall monitoring |
|
|
| **Data ownership** | Customer-controlled | Vendor cloud storage | Customer infrastructure via FTP/SCP/etc |
|
|
| **Hardware requirements** | Industrial PCs, high cost | Minimal (cloud handles processing) | Raspberry Pi, low cost, low power |
|
|
| **Mobile support** | Separate mobile apps or limited | Responsive web apps | Responsive web, same codebase for all devices |
|
|
|
|
### Competitive Positioning
|
|
|
|
**Traditional SCADA** (e.g., Wonderware, Ignition, WinCC):
|
|
- Strengths: Mature, feature-rich, industrial-grade reliability
|
|
- Weaknesses: Expensive, complex, resource-heavy, not optimized for small touchscreens
|
|
- Our advantage: Purpose-built for rainfall monitoring, cost-effective, touch-optimized
|
|
|
|
**Cloud IoT Platforms** (e.g., ThingsBoard, AWS IoT, Azure IoT):
|
|
- Strengths: Scalable, modern tech, managed infrastructure
|
|
- Weaknesses: Connectivity dependency, ongoing costs, data in third-party cloud
|
|
- Our advantage: Edge-first, works offline, customer controls data
|
|
|
|
**Embedded HMI Panels**:
|
|
- Strengths: Purpose-built for industrial touch, reliable
|
|
- Weaknesses: Proprietary, limited customization, expensive per-unit
|
|
- Our advantage: Open platform, customizable, runs on commodity hardware
|
|
|
|
## Sources
|
|
|
|
- ThingsBoard IoT Dashboard Documentation (thingsboard.io/docs/user-guide/dashboards/) — Dashboard patterns for IoT devices
|
|
- Grafana Dashboard Best Practices (grafana.com/docs) — Time-series visualization patterns
|
|
- Inductive Automation HMI Resources (inductiveautomation.com) — Industrial HMI design principles
|
|
- Existing codebase analysis: 16 view components in sample_interface/src/app/components/views/
|
|
- Project requirements from .planning/PROJECT.md — Validated requirements and constraints
|
|
- Industrial touchscreen UX research — 44px minimum touch targets, no hover states
|
|
- Raspberry Pi Zero 2 W specifications — Performance constraints guide feature scope
|
|
|
|
---
|
|
*Feature research for: RTU Rainfall Monitoring Interface*
|
|
*Researched: 2026-03-13*
|