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 e1628ef4db Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
.vscode Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
android Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
assets/images Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
ios Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
lib Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
linux Initial commit: ApsGo project with Firebase integration 2026-01-12 15:24:52 +07:00
macos Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
railway-worker Upload Tugas Akhir TKK 2026-07-09 09:49:35 +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
DEBUGGING_LOGS.md Add comprehensive debugging guide for scheduler and aktuator issues 2026-02-11 10:29:15 +07:00
Dockerfile feat: Add Dockerfile for Railway deployment 2026-02-10 11:29:49 +07:00
FLEXIBLE_SCHEDULE_GUIDE.md feat: Flexible jadwal system + kontrol_1 path support 2026-02-16 11:05: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
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
flutter_analysis.txt Upload Tugas Akhir TKK 2026-07-09 09:49:35 +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 Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
pubspec.yaml Upload Tugas Akhir TKK 2026-07-09 09:49:35 +07:00
railway-worker.rar Upload Tugas Akhir TKK 2026-07-09 09:49:35 +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 Upload Tugas Akhir TKK 2026-07-09 09:49:35 +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