TTGO T-Display ESP32 tabanlı Uptime Kuma webhook relay sistemi. Uptime Kuma'dan gelen webhook'ları GPIO çıkışlarına yönlendirerek fiziksel sinyaller oluşturur.
- Uptime Kuma Entegrasyonu: Webhook'lar ile durum izleme
- TTGO T-Display Desteği: Renkli LCD ekran ile görsel durum
- WiFi Manager: Kolay ağ konfigürasyonu
- GPIO Kontrolü: Digital ve PWM çıkışlar
- Web Arayüzü: Kural yönetimi ve test araçları
- Gerçek Zamanlı Monitoring: Anlık durum gösterimi
- TTGO T-Display (ESP32 + ST7789 LCD)
- Standart ESP32 geliştirme kartları
- WiFi (ESP32 yerleşik)
- WebServer (ESP32 yerleşik)
- ArduinoJson (v6.x)
- WiFiManager (v2.x)
- LittleFS (ESP32 yerleşik)
- TFT_eSPI (TTGO için)
TTGO T-Display Pin Haritası:
- TFT_MOSI: 19
- TFT_SCLK: 18
- TFT_CS: 5
- TFT_DC: 16
- TFT_RST: 23
- TFT_BL: 4
- BUTTON_1: 35 (Sol)
- BUTTON_2: 0 (Sağ/BOOT)
-
Arduino IDE'yi hazırlayın:
- ESP32 board paketini yükleyin
- Gerekli kütüphaneleri yükleyin
-
TFT_eSPI konfigürasyonu:
TFT_eSPIkütüphanesininUser_Setup.hdosyasını düzenleyin- Veya kodda tanımlı pinleri kullanın
-
Kodu yükleyin:
TTGO Project.inodosyasını Arduino IDE'de açın- Board: "ESP32 Dev Module" seçin
- Kodu derleyip yükleyin
- Cihaz açıldığında AP moduna geçer
- WiFi listesinde
Kuma-Relay-XXXXXXağını bulun - Şifre:
12345678 - Tarayıcıda konfigürasyon sayfası açılır
- WiFi bilgilerinizi girin
- Sol butonu 3 saniye basılı tutun
- Veya web arayüzünden "Wi-Fi Ayarlarını Sıfırla"
ESP32'nin IP adresini tarayıcıda açın:
http://[ESP32_IP]/
- Kurallar: Uptime Kuma durumlarını GPIO aksiyonlarına bağlama
- Hızlı Test: GPIO pinlerini manuel test etme
- WiFi Ayarları: Ağ konfigürasyonu
- PWM Ayarları: Frekans kontrolü
- Sol Buton (3s): WiFi Manager başlat
- Sağ Buton: Ekran açma/kapama
http://[ESP32_IP]/kuma
{
"msg": "{{msg}}",
"monitor": {{monitorJSON}},
"heartbeat": {{heartbeatJSON}}
}0: DOWN (Çevrimdışı)1: UP (Çevrimiçi)2: PENDING (Beklemede)3: MAINTENANCE (Bakım)
IO2, IO13, IO14, IO17, IO21, IO22, IO25, IO26, IO27, IO32, IO33
- TFT pinleri: 4, 5, 16, 18, 19, 23
- Buton pinleri: 0, 35
- Diğer sistem pinleri
{
"condition": {
"type": "status",
"value": "down"
},
"action": {
"pin": "IO2",
"mode": "digital",
"value": 1
},
"else": {
"behavior": "nochange"
}
}status: Durum kontrolü (down/up/pending/maintenance)monitorId: Monitor ID eşleşmesimonitorNameContains: Monitor isim içerik kontrolüalways: Her zaman aktif
digital: ON/OFF (0 veya 1)pwm: PWM sinyal (0-1023)
nochange: Değişiklik yokoff: Kapat (0 değeri)value: Belirtilen değeri uygula
- LittleFS kullanılır
- Konfigürasyon:
/config.json
- LEDC Timer: 8-bit (0-255)
- Varsayılan Frekans: 1000 Hz
- Ayarlanabilir: 100-20000 Hz
- JSON Buffer: 8KB (kurallar için)
- Web Server: Minimal bellek kullanımı
- Sol butonu 3 saniye basılı tutun
- AP moduna geçmesini bekleyin
- Yeniden konfigüre edin
- Sağ buton ile ekranı açmayı deneyin
- TFT_eSPI kütüphane ayarlarını kontrol edin
- Pin bağlantılarını doğrulayın
- Web arayüzünden "Hızlı Test" kullanın
- Pin haritasını kontrol edin
- PWM/Digital mod uyumluluğunu doğrulayın
Bu proje MIT lisansı altında yayınlanmıştır.
- Fork edin
- Feature branch oluşturun (
git checkout -b feature/amazing-feature) - Commit edin (
git commit -m 'Add amazing feature') - Push edin (
git push origin feature/amazing-feature) - Pull Request açın
Sorularınız için issue açabilirsiniz.
Not: Bu proje AIT (Advanced Information Technologies) sunucu altyapısı izleme sistemi için geliştirilmiştir.