Je microcontroller aansluiten
Er zijn meerdere manieren om een microcontroller of single-board computer te koppelen aan de VanTurtle ventilatorcontroller. Alle communicatie verloopt via I2C, en de controller zelf is platform-onafhankelijk zolang basis I2C lees- en schrijfoperaties worden ondersteund.
Deze pagina documenteert zowel de officieel ondersteunde bibliotheekopties als enkele bijdragen van gebruikers. Als geen van deze aan je eisen voldoet, kun je de protocoldocumentatie gebruiken om een eigen driver of integratie te bouwen.
Python library
De Python library is bedoeld voor Linux-gebaseerde systemen zoals de Raspberry Pi, maar kan ook worden aangepast voor andere platforms die een SMBus-compatibele I2C interface bieden. Hij kan ook worden gebruikt met micropython voor embedded programming.
De library biedt een gebruiksvriendelijke abstractielaag over het ruwe protocol en stelt ventilatorfuncties beschikbaar als eenvoudige method calls. Voorbeeldgebruik:
# Initialiseer de VanTurtle_Fan controller # Bus 1 is de standaard op raspberry pi 5 # 0x27 is het adres als A0, A1 en A2 niet zijn aangesloten # Maakt verbinding met de linker ventilator op de PCB, gelabeld FAN ONE fan = VanTurtle_RJ45(bus=1, address=0x27, fan=VanTurtle_Fan.FAN_ONE) # Zet de ventilator aan fan.onoff() # Keer de luchtstroom om fan.reverse() # Verhoog de snelheid fan.faster() # Verlaag de snelheid fan.slower() # Controleer of de ventilator in temperatuur-vasthoudmodus staat print(fan.is_autohold()) # Schakel temperatuur-vasthoudmodus in fan.auto() # Maak een piepgeluid fan.beep()
Gebaseerd op smbus voor I2C communicatie, zorg dat dit op het systeem is geïnstalleerd:
pip install smbus2
Op de meeste Raspberry Pi OS installaties moet I2C ook worden ingeschakeld via raspi-config.
VanTurtle python class
ESP32 C/C++ component
Gemaakt om specifiek te integreren met een ESP-IDF project. Exporteer de map naar de components map binnen je project. Zorg dat je CMakeLists.txt het bestand vanturtlefan.c in de SRC bevat. Voorbeeldgebruik:
#include "vanturtlefan.h" vanturtlefan_t fan_controller; // Initialiseren met standaard I2C-adres (0x27) en SDA op pin 21 en SCL op pin 22 vanturtlefan_init(&fan_controller, I2C_NUM_0, 21, 22, 0x27, false); // Zet de ventilator op de linkerpoort aan of uit // Vereist een RJ45-aansluiting vanturtlefan_rj45_onoff(&fan_controller, FAN_ONE); // Snelheid verhogen vanturtlefan_rj45_faster(&fan_controller, FAN_ONE); // Snelheid verlagen vanturtlefan_rj45_slower(&fan_controller, FAN_ONE); // Luchtstroom omkeren vanturtlefan_rj45_reverse(&fan_controller, FAN_ONE); // Auto-modus in-/uitschakelen vanturtlefan_rj45_auto(&fan_controller, FAN_ONE); // Piepje geven vanturtlefan_rj45_beep(&fan_controller, FAN_ONE); // Controleren of auto-modus ingeschakeld is bool autohold_state; vanturtlefan_is_autohold(&fan_controller, FAN_ONE, &autohold_state); // In dit voorbeeld gebruikt FAN_TWO een RJ11-aansluiting // Inschakelen of door snelheden bladeren vanturtlefan_rj11_on(&fan_controller, FAN_TWO); // Deksel openen vanturtlefan_rj11_open(&fan_controller, FAN_TWO); // Deksel sluiten vanturtlefan_rj11_close(&fan_controller, FAN_TWO); // Uitschakelen vanturtlefan_rj11_off(&fan_controller, FAN_TWO); // Als je klaar bent, de-initialiseer de controller vanturtlefan_deinit(&fan_controller);
VanTurtle ESP-IDF component
ESPHome
Deze ESPHome-configuratie is gemaakt door een van onze gebruikers en stelt je in staat om de controller heel snel aan Home Assistant toe te voegen. Lees het bestand goed door om wat details aan te passen, zoals je wifi-naam etc.
Download ESPHome config txt-bestand