Skip to main content

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