- Live CPU temperature with color-coded indicator
- Real-time CPU & RAM usage
- Quick status overview at a glance
- Customizable layout — reorder sections via drag-and-drop, hide/show individually
- "At a Glance" card — Pi-hole status, Docker container count, one-tap Pi reboot
- Smooth animated theme transitions (light/dark)
- 24h charts for CPU, temperature and RAM (powered by local Room DB)
- Metrics collected every 15 minutes, 7-day retention
- List all containers with status
- Start / Stop / Restart containers
- View container logs in real time
- Scan the local network via SSH +
nmap - Detects hostnames, IPs, MAC addresses and vendors
- Smart device icons (smartphone, laptop, router, Pi...)
- Auto-installs
nmapif not present on the Pi
- Toggle WireGuard VPN directly from the app
- Peer status and connection info
- Control GPIO pins remotely
- LED on/off with real-time feedback
- Enable / Disable Pi-hole with one tap
- Home screen widget for quick toggle
- Pi-hole quick toggle
- CPU temperature with alert above 70°C
- Docker running/total container counter
- Stats and Sensor widgets
- Full VT100 / xterm-256color terminal emulator
- PTY support with sticky modifier keys (Ctrl, Alt, etc.)
- SSH session directly in the app
- CPU & RAM threshold alerts via WorkManager
- Disk space alerts with configurable threshold
- Systemd services monitoring (customizable list)
- Background metrics collection every 15 minutes
- Quick Settings Tiles to trigger SSH shortcuts instantly
- Cron Job Manager: Add, edit and delete scheduled tasks
- Wi-Fi Management: Scan and connect your Pi to local networks
- UFW Firewall: Manage rules and status
- Fail2Ban: Monitor security logs and bans
- Remote File Transfer: Background SFTP uploads/downloads
- Biometric authentication (fingerprint / face unlock)
- SSH credentials stored securely
- WireGuard VPN integration for remote access
- Material You design with teal/cyan palette
- Full dark & light theme support
- Drag-and-drop shortcut reordering
- Automatic update system with changelog
| Requirement | Details |
|---|---|
| Android | 8.0+ (API 26) |
| Raspberry Pi | Any model with SSH enabled |
| Network | WireGuard VPN recommended for remote access |
| Pi packages | nmap (auto-installed by the app if missing) |
sudo systemctl enable ssh
sudo systemctl start sshInstall WireGuard on your Pi and configure a peer for your phone. The app connects over VPN when you're away from home.
Download the latest APK from the Releases page and install it on your Android device.
On first launch, enter your Pi's:
- IP address (local or WireGuard)
- SSH port (default:
22) - Username
- Password
| Layer | Technology |
|---|---|
| Language | Kotlin |
| UI | Jetpack Compose + Material 3 |
| SSH / SFTP | JSch |
| Background tasks | WorkManager |
| Widgets | Glance |
| Charts | Vico |
| Local database | Room |
| Dependency Injection | Manual (Singleton providers) |
app/src/main/java/com/rillmaster/pipanel/
├── ui/ # UI Layer
│ ├── screens/ # App settings & secondary screens
│ ├── viewmodels/ # ViewModels for complex states
│ ├── components/ # Reusable UI components
│ ├── theme/ # Material 3 & dynamic colors
│ └── terminal/ # VT100 terminal engine
│
├── ssh/ # SSH Key management
├── data/db/ # Room metrics database
├── model/ # Domain models
├── update/ # Update system (OTA)
│
├── MainActivity.kt # Root entry & Navigation
├── OnboardingActivity.kt # Setup flow
│
├── SshClient.kt # SSH/SFTP core implementation
├── SettingsManager.kt # Secure credentials storage
│
├── MonitoringScreen.kt # Resource monitoring (CPU/RAM/Temp)
├── DockerScreen.kt # Docker container management
├── TerminalScreen.kt # Full SSH terminal
├── FileManagerScreen.kt # Remote file browser & editor
├── NetworkScannerScreen.kt # SSH + nmap discovery
│
├── ServicesScreen.kt # systemd service manager
├── UfwScreen.kt # Firewall control
├── Piholescreen.kt # Pi-hole integration
├── Wireguardscreen.kt # VPN management
│
├── CronSchedulerScreen.kt # Task scheduling (Crontab)
├── GpioScheduleScreen.kt # GPIO & PWM control
├── WifiManagementScreen.kt # Wi-Fi configuration
│
├── MonitoringWorker.kt # Background stats collection
├── FileTransferWorker.kt # Background SFTP transfers
├── WidgetUpdateService.kt # Home screen sync service
│
└── *Widget.kt # Android Home Screen Widgets (Glance)
git clone https://github.com/RillMaster/PiPanel.git
cd PiPanel
./gradlew assembleDebugThe APK will be at app/build/outputs/apk/debug/app-debug.apk.
PiPanel is a personal project under active development. Some features may:
- Contain bugs or unexpected behavior depending on your Raspberry Pi model / configuration
- Not be fully tested across every Android version or Raspbian/DietPi/Ubuntu setup
- Change or be modified without guaranteed backward compatibility between versions
If you run into an issue, feel free to open an issue describing:
- The Raspberry Pi model and OS you're using
- Your Android version and phone model
- Steps to reproduce the bug
Contributions and feedback are welcome 🙏
MIT License — see LICENSE for details.
Made with ❤️ by RillMaster
