Deinen Mikrocontroller anbinden
Es gibt mehrere Möglichkeiten, einen Mikrocontroller oder Einplatinencomputer an den VanTurtle Lüftercontroller anzubinden. Die gesamte Kommunikation erfolgt über I2C, und der Controller selbst ist plattformunabhängig, solange grundlegende I2C Lese- und Schreiboperationen unterstützt werden.
Diese Seite dokumentiert sowohl die offiziell unterstützten Bibliotheksoptionen als auch einige Implementierungen aus der Community. Falls keine davon deinen Anforderungen entspricht, kann die Protokolldokumentation verwendet werden, um einen eigenen Treiber oder eine Integration zu erstellen.
Python-Bibliothek
Die Python-Bibliothek ist für Linux-basierte Systeme wie den Raspberry Pi gedacht, kann aber auch für andere Plattformen angepasst werden, die eine SMBus-kompatible I2C-Schnittstelle bereitstellen. Sie kann auch mit MicroPython für Embedded-Programmierung verwendet werden.
Sie bietet eine vereinfachte Schnittstelle über das Rohprotokoll und stellt Lüfterfunktionen als einfache Methodenaufrufe bereit. Beispielverwendung:
# VanTurtle_Fan Controller initialisieren # Bus 1 ist der Standard beim Raspberry Pi 5 # 0x27 ist die Adresse, wenn A0, A1 und A2 nicht verbunden sind # Verbindet sich mit dem linken Lüfter auf der Platine, beschriftet als FAN ONE fan = VanTurtle_RJ45(bus=1, address=0x27, fan=VanTurtle_Fan.FAN_ONE) # Lüfter einschalten fan.onoff() # Luftstromrichtung umkehren fan.reverse() # Geschwindigkeit erhöhen fan.faster() # Geschwindigkeit verringern fan.slower() # Prüfen, ob der Lüfter im Temperaturhaltemodus ist print(fan.is_autohold()) # Temperaturhaltemodus aktivieren fan.auto() # Piepton ausgeben fan.beep()
Basiert auf smbus für die I2C-Kommunikation, stelle sicher, dass dies auf dem System installiert ist:
pip install smbus2
Bei den meisten Raspberry Pi OS-Installationen muss I2C auch über raspi-config aktiviert werden.
VanTurtle Python-Klasse
ESP32 C/C++-Komponente
Speziell für die Integration in ein ESP-IDF-Projekt entwickelt. Exportiere den Ordner in den Components-Ordner deines Projekts. Stelle sicher, dass deine CMakeLists.txt die Datei vanturtlefan.c in SRC enthält. Beispielverwendung:
#include "vanturtlefan.h" vanturtlefan_t fan_controller; // Initialisierung mit Standard-I2C-Adresse (0x27) und SDA auf Pin 21 und SCL auf Pin 22 vanturtlefan_init(&fan_controller, I2C_NUM_0, 21, 22, 0x27, false); // Den am linken Port angeschlossenen Lüfter ein- oder ausschalten // Erfordert eine RJ45-Verbindung vanturtlefan_rj45_onoff(&fan_controller, FAN_ONE); // Geschwindigkeit erhöhen vanturtlefan_rj45_faster(&fan_controller, FAN_ONE); // Geschwindigkeit verringern vanturtlefan_rj45_slower(&fan_controller, FAN_ONE); // Luftstromrichtung umkehren vanturtlefan_rj45_reverse(&fan_controller, FAN_ONE); // Automatikmodus umschalten vanturtlefan_rj45_auto(&fan_controller, FAN_ONE); // Einen Piepton ausgeben vanturtlefan_rj45_beep(&fan_controller, FAN_ONE); // Prüfen, ob der Automatikmodus aktiviert ist bool autohold_state; vanturtlefan_is_autohold(&fan_controller, FAN_ONE, &autohold_state); // In diesem Beispiel verwendet FAN_TWO eine RJ11-Verbindung // Einschalten oder durch die Geschwindigkeitsstufen wechseln vanturtlefan_rj11_on(&fan_controller, FAN_TWO); // Deckel öffnen vanturtlefan_rj11_open(&fan_controller, FAN_TWO); // Deckel schließen vanturtlefan_rj11_close(&fan_controller, FAN_TWO); // Ausschalten vanturtlefan_rj11_off(&fan_controller, FAN_TWO); // Zum Abschluss den Controller deinitialisieren vanturtlefan_deinit(&fan_controller);
VanTurtle ESP-IDF Komponente
ESPHome
Diese ESPHome-Konfiguration stammt aus der Community und ermöglicht es dir, den Controller sehr schnell in Home Assistant einzubinden. Lies die Datei unbedingt durch, um einige Details wie den WLAN-Namen usw. anzupassen.
ESPHome-Konfigurations-TXT-Datei herunterladen