70 lines
2.3 KiB
Markdown
70 lines
2.3 KiB
Markdown
# TCKRTUIYO - Rainfall Station RTU Web Interface
|
|
|
|
## What This Is
|
|
|
|
A modern web-based interface for a Base Station/Real-Time Unit (RTU) rainfall monitoring system, designed for a 7" capacitive touchscreen display (1024x600). The system monitors and logs rainfall and related sensors, transmits data to a server, and provides both a kiosk-mode local display and a full HD remote interface.
|
|
|
|
## Core Value
|
|
|
|
Real-time rainfall and environmental sensor monitoring with automatic data transmission to myvscada server.
|
|
|
|
## Requirements
|
|
|
|
### Validated
|
|
|
|
(None yet — ship to validate)
|
|
|
|
### Active
|
|
|
|
- [ ] Modern web UI for 7" touchscreen (1024x600)
|
|
- [ ] Dashboard with rainfall readings (Today, Hourly, MAR Acc, Yearly Acc)
|
|
- [ ] Solar/Battery voltage monitoring display
|
|
- [ ] Communication status indicator
|
|
- [ ] Settings/Calibration menus
|
|
- [ ] Flash memory file management
|
|
- [ ] CSV data transmission to server
|
|
|
|
### Out of Scope
|
|
|
|
- [Mobile app] — Web-first approach
|
|
- [Real-time chat] — Not relevant to monitoring use case
|
|
- [Third-party cloud integration] — Direct server connection only
|
|
|
|
## Context
|
|
|
|
**Target Hardware:**
|
|
- Raspberry Pi Zero 2 W (primary)
|
|
- Raspberry Pi 3B (alternative)
|
|
- 7-inch capacitive touchscreen 1024x600
|
|
|
|
**Software Stack:**
|
|
- HTML/CSS/JavaScript web UI
|
|
- Chromium Kiosk Mode for local display
|
|
- Python backend for sensor communication
|
|
- Network protocols: FTP, SCP, SFTP, WebDAV
|
|
|
|
**Existing System:**
|
|
- Current RTU runs on embedded system with 4-inch display
|
|
- Monitors rainfall sensors (RF1, RF2), water level, solar/battery voltage
|
|
- Data logged to CSV files
|
|
- Periodic transmission to myvscada server
|
|
|
|
## Constraints
|
|
|
|
- **Performance**: Must run smoothly on Pi Zero 2 W (low-powered)
|
|
- **Display**: Fixed 1024x600 resolution for local kiosk
|
|
- **Remote Access**: Full HD interface on PC via separate port (9090)
|
|
- **Dependencies**: Minimal (for maintainability on embedded device)
|
|
|
|
## Key Decisions
|
|
|
|
| Decision | Rationale | Outcome |
|
|
|----------|-----------|---------|
|
|
| Web-based UI | Cross-platform, no native app development | — Pending |
|
|
| Chromium Kiosk Mode | Reliable on Raspberry Pi, full-screen | — Pending |
|
|
| Python backend | Good sensor integration, CSV handling | — Pending |
|
|
| Kiosk (8080) vs Remote (9090) ports | Separate interfaces for local/remote | — Pending |
|
|
|
|
---
|
|
*Last updated: 2026-03-12 after initialization*
|