Prototipe sistem penyiraman multi-pot otomatis berbasis Internet of Things (IoT) ini dirancang untuk mengoptimalkan efisiensi kerja dan ketepatan volume air pada lahan pembibitan tanaman hortikultura. Sistem ini mengintegrasikan sensor kelembapan tanah untuk memantau kondisi media tanam secara real-time dan solenoid valve yang berfungsi mengatur distribusi air secara independen dan spesifik pada setiap pot. Terhubung dengan aplikasi mobile berbasis cloud, alat ini memungkinkan pengelola melakukan pemantauan kondisi tanah dan kontrol penyiraman dari jarak jauh, yang divalidasi melalui pengujian skala terbatas pada sampel blok tanaman cabai.
Go to file
Wizznu b8cb7a3ba6 fix: Turn OFF pot and pumps atomically together to prevent pressure issues in hose 2026-06-02 08:40:16 +07:00
.vscode APSGO V2.1 NEW APS 2026-02-16 11:40:41 +07:00
android feat: Implement dual mode system (Smart & Fixed) and fix logout bugs 2026-01-26 11:47:23 +07:00
assets/images Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
ios Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
lib fix: remove deprecated Flutter notification API parameters and unnecessary imports 2026-04-10 20:03:25 +07:00
linux Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
macos dashboard terhubung firebase 2026-01-12 17:53:26 +07:00
railway-worker fix: Turn OFF pot and pumps atomically together to prevent pressure issues in hose 2026-06-02 08:40:16 +07:00
test Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
web Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
windows Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
.dockerignore feat: Add Dockerfile for Railway deployment 2026-02-10 11:29:49 +07:00
.env.example Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
.env.template Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
.gitignore Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
.metadata Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
BUGS_AND_FIXES.md feat: Add Railway Worker, bug fixes, and mosvet_8 pengaduk 2026-02-10 07:22:43 +07:00
BUG_FIXES_REPORT.md feat: Implement dual mode system (Smart & Fixed) and fix logout bugs 2026-01-26 11:47:23 +07:00
CARA_UBAH_ICON_APK.md feat: Implement dual mode system (Smart & Fixed) and fix logout bugs 2026-01-26 11:47:23 +07:00
DEBUGGING_LOGS.md Add comprehensive debugging guide for scheduler and aktuator issues 2026-02-11 10:29:15 +07:00
DEBUG_TESTING_GUIDE.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
DEPLOYMENT_GUIDE.md feat: Add Railway Worker, bug fixes, and mosvet_8 pengaduk 2026-02-10 07:22:43 +07:00
DEPLOY_OPTIMASI.md APSGO V2.1 NEW APS 2026-02-16 11:40:41 +07:00
DIAGNOSIS_PENJADWALAN.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
DUAL_MODE_IMPLEMENTATION.md feat: Implement dual mode system (Smart & Fixed) and fix logout bugs 2026-01-26 11:47:23 +07:00
Dockerfile feat: Add Dockerfile for Railway deployment 2026-02-10 11:29:49 +07:00
FIREBASE_KEY_FIX.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
FIREBASE_WARNINGS_EXPLAINED.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
FLEXIBLE_SCHEDULE_GUIDE.md feat: Flexible jadwal system + kontrol_1 path support 2026-02-16 11:05:22 +07:00
FULL_HISTORY_SYSTEM.md feat: Add Railway Worker, bug fixes, and mosvet_8 pengaduk 2026-02-10 07:22:43 +07:00
IMPLEMENTATION_COMPLETE.md feat: Add Railway Worker, bug fixes, and mosvet_8 pengaduk 2026-02-10 07:22:43 +07:00
INSTALL_HANDPHONE.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
JADWAL_FLUTTER_GUIDE.md APSGO V2.1 NEW APS 2026-02-16 11:40:41 +07:00
QUICK_SETUP_KONTROL1.md APSGO V2.1 NEW APS 2026-02-16 11:40:41 +07:00
RAILWAY_QUICK_START.md feat: Add Railway Worker, bug fixes, and mosvet_8 pengaduk 2026-02-10 07:22:43 +07:00
RAILWAY_SETUP_URGENT.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
RAILWAY_TROUBLESHOOTING.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
README.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
SETUP_FIREBASE.md Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
SETUP_FIREBASE_JADWAL.md APSGO V2.1 NEW APS 2026-02-16 11:40:41 +07:00
SOLUSI_PENJADWALAN.md feat: Complete ApsGo system with Railway Worker automation 2026-02-11 17:17:22 +07:00
STATUS.md docs: Add comprehensive project status documentation 2026-02-11 17:22:16 +07:00
URGENT_FIX.md Add urgent fix summary and action steps 2026-02-11 10:30:51 +07:00
analysis_options.yaml Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
check-queue.js Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
clear-and-populate-dummy-data.js add dummy data script 2026-05-19 19:42:24 +07:00
debug.js Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
extract-credentials.js Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
firebase-example.json feat: Flexible jadwal system + kontrol_1 path support 2026-02-16 11:05:22 +07:00
firebase-structure-complete.json APSGO V2.1 NEW APS 2026-02-16 11:40:41 +07:00
firebase.json Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
migrate-history-source.js 🔧 Fix: Update Firebase path from /kontrol to /kontrol_1 - Match Flutter app data structure 2026-04-10 17:44:04 +07:00
package.json Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
pubspec.lock feat: Implement dual mode system (Smart & Fixed) and fix logout bugs 2026-01-26 11:47:23 +07:00
pubspec.yaml feat: Implement dual mode system (Smart & Fixed) and fix logout bugs 2026-01-26 11:47:23 +07:00
railway.json Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
setup-firebase-jadwal.js feat: Flexible jadwal system + kontrol_1 path support 2026-02-16 11:05:22 +07:00
setup-firebase-threshold.js feat: Dynamic threshold system for sensor-based watering 2026-02-16 12:31:26 +07:00
test-firebase-connection.js Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
test-firebase-direct.js Initial commit: Railway Worker for ApsGo IoT System 2026-02-11 07:40:33 +07:00
worker.js 🔧 Fix: Handle FCM messaging gracefully - fallback when not available 2026-04-10 18:17:56 +07:00

README.md

ApsGo - Sistem Penjadwalan Penyiraman Otomatis

Aplikasi Flutter untuk kontrol otomatis sistem penyiraman tanaman berbasis IoT dengan Firebase Realtime Database dan Railway Worker.

Status Terkini

Sistem berjalan real-time dengan delay 20 detik/section ⚠️ Catatan: 1 waktu penjadwalan digunakan untuk banyak pompa sekaligus

Komponen Sistem

1. Flutter Mobile App

  • Kontrol manual aktuator (pompa & mosvet)
  • Penjadwalan otomatis (waktu mode)
  • Monitoring sensor real-time
  • History logging

2. Railway Worker (Node.js)

  • Background automation 24/7
  • Scheduler dengan timezone Asia/Jakarta
  • Firebase SDK dengan REST API fallback
  • BullMQ job queue untuk reliability
  • Auto-recovery dari timeout issues

Fitur Utama

  • Dual Mode: Kontrol manual + penjadwalan otomatis
  • Real-time Sync: Firebase Realtime Database
  • Reliable Execution: Timeout handling + REST API fallback
  • History Tracking: Log semua aktivitas penyiraman
  • Safety Mechanisms: Auto-shutoff jika error

Teknologi

  • Frontend: Flutter (Dart)
  • Backend Worker: Node.js v18+
  • Database: Firebase Realtime Database
  • Queue: Redis + BullMQ
  • Deployment: Railway.app
  • Authentication: Firebase Auth + Google Sign-In

Getting Started

Mobile App

flutter pub get
flutter run

Railway Worker

cd railway-worker
npm install
node worker.js

Dokumentasi