Jak nainstalovat integraci Drátek eInk do Home Assistantu
Průvodce instalací integrace Drátek eInk do Home Assistantu pomocí obchodu HACS.
Pro M5stack jednotky lze zakoupit různé rozšiřovací moduly, kdy jedním ze základních je Light, anglicky světlo. Ve skutečnosti se jedná o fotorezistor uložený v malém modulu.
Pro jeho spojení s M5stack deskou stačí propojit 3 vodiče. Propojíme GND s GND, 5V s 5V a IN s pinem 36. Pro datový pin IN lze použít i jiný volný pin, ale je nutné to provést také na začátku programu.
Ukázkový program najdete níže, přičemž jeho popis můžete najít na videu, které je připojeno na konci návodu.
// M5 stack a jednotka Light
// navody.dratek.cz
// připojení potřebné knihovny
#include <M5Stack.h>
// nastavení propojovacího pinu pro jednotku Angle
#define aout_pin 36
#define dout_pin 35
// proměnné pro uložení načtených údajů
int hodnota_aout = 0;
int hodnota_dout = 0;
void setup() {
// zahájení komunikace s M5 stack
M5.begin();
// zahájení komunikace s napájecím čipem
M5.Power.begin();
// nastavení pinu jako vstupu
pinMode(dout_pin, INPUT);
// vypnutí reproduktoru
dacWrite(25, 0);
// nastavení barvy a velikosti textu
M5.Lcd.setTextColor(YELLOW);
M5.Lcd.setTextSize(2);
// nastavení kurzoru pro tisk
M5.Lcd.setCursor(65, 50);
// vytištění info zprávy
M5.Lcd.printf("Light modul ukazka: n");
// vytištění popisků na displej
M5.Lcd.setCursor(85, 80);
M5.Lcd.print("Aout:");
M5.Lcd.setCursor(85, 100);
M5.Lcd.print("Dout:");
}
void loop() {
// načtení údajů ze senzoru
hodnota_aout = analogRead(aout_pin);
hodnota_dout = digitalRead(dout_pin);
// vytištění načtených dat žlutou barvou
M5.Lcd.setTextColor(YELLOW);
M5.Lcd.setCursor(175, 80);
M5.Lcd.printf("%dn", hodnota_aout);
M5.Lcd.setCursor(175, 100);
M5.Lcd.printf("%dn", hodnota_dout);
// krátká pauza
delay(100);
// vymazání údajů na displeji černou barvou
M5.Lcd.setCursor(175, 80);
M5.Lcd.setTextColor(BLACK);
M5.Lcd.printf("%dn", hodnota_aout);
M5.Lcd.setCursor(175, 100);
M5.Lcd.printf("%dn", hodnota_dout);
// přepis textu o množství světla
// vyplnění obdélníku za zadaných souřadnicích
// černě pro přemazání předchozího tisku
M5.Lcd.fillRect(15, 120, 305, 40, BLACK);
// nastavení kurzoru pro výpis
M5.Lcd.setCursor(15, 120);
M5.Lcd.setTextColor(WHITE);
// kontrola naměřené hodnoty
// a výpis informací dle naměřené hodnoty
if (hodnota_aout < 500) {
M5.Lcd.printf("V okoli je hodne svetla!");
}
else if (hodnota_aout < 1500) {
M5.Lcd.printf("V okoli je malo svetla!");
}
else if (hodnota_aout < 2500) {
M5.Lcd.printf("V okoli je sero!");
}
else {
M5.Lcd.printf("V okoli je tma!");
}
}
Sestřih ze streamu:
Celý záznam:
Na eshopu můžete tento M5stack Light modul zakoupit zde:
https://dratek.cz/arduino/20935-m5stack-svetelny-senzor-s-fotorezistorem.html
Průvodce instalací integrace Drátek eInk do Home Assistantu pomocí obchodu HACS.
Návod, jak jednoduše přidat a nastavit Drátek e-ink displej do Home Assistant