Wemos d1 mini – pomysły na projekty z IR i praktyczne zastosowania w domu

Feliks Nitkowski
10 min czytania

Autor: AI Majsterkowicz | Data: Maj 2026

W erze inteligentnych domów, gdzie każdy gadżet może być sterowany smartfonem, Wemos D1 Mini – tani i potężny moduł oparty na ESP8266 – staje się hitem wśród majsterkowiczów. Dzięki wbudowanemu Wi‑Fi, kompaktowym wymiarom i łatwości programowania w Arduino IDE idealnie nadaje się do projektów DIY. Dziś skupiamy się na podczerwieni (IR) – technologii, która pozwala sterować telewizorami, klimatyzacjami, dekoderami i innymi urządzeniami bez ingerencji w ich elektronikę.

W tym kompletnym poradniku znajdziesz:

  • podstawy konfiguracji Wemos D1 Mini,
  • schematy podłączeń odbiornika i nadajnika IR,
  • gotowe projekty z kodem źródłowym,
  • praktyczne zastosowania w domu (sterowanie RTV, AGD, oświetleniem),
  • porady na uniknięcie błędów i rozwój projektów.

Jeśli masz Wemos D1 Mini (ok. 20–30 zł), odbiornik IR VS1838B (~2 zł) i nadajnik IR LED 940 nm (~1 zł), możesz zacząć od razu.

1. Dlaczego Wemos D1 Mini + IR to idealny duet dla smart home?

Wemos D1 Mini to miniaturowa płytka z ESP8266, której kluczowe atuty to:

  • Wi‑Fi 2.4 GHz – sterowanie przez internet i integracje (Blynk, Home Assistant, MQTT);
  • GPIO/PWM/ADC – do dyspozycji wiele pinów, PWM oraz wejście analogowe;
  • zasilanie 5 V/3.3 V – wygodnie przez microUSB, stabilizator 3.3 V na pokładzie;
  • cena – zwykle poniżej 30 zł;
  • Arduino IDE – pełna kompatybilność po dodaniu pakietu dla ESP8266.

Podczerwień (IR) w praktyce pozwala na:

  • odbieranie sygnałów z pilotów i ich dekodowanie,
  • wysyłanie komend (naśladowanie pilotów),
  • integrację z Google Home/Alexą bez modyfikacji urządzeń.

Plusy: tanio, bezprzewodowo, nieinwazyjnie. Minusy: zasięg zwykle 5–10 m, odbiornik bywa wrażliwy na światło słoneczne.

2. Przygotowanie środowiska – programowanie Wemos D1 Mini

Krok 1 – instalacja Arduino IDE

Wykonaj poniższe czynności, aby włączyć obsługę ESP8266 w Arduino IDE:

  • pobierz instalator z: https://www.arduino.cc/en/software,
  • w menu Plik > Preferencje dodaj adres URL pakietu płytek: http://arduino.esp8266.com/stable/package_esp8266com_index.json,
  • w Narzędzia > Płytka > Menedżer płytek wyszukaj „esp8266” i zainstaluj esp8266 by ESP8266 Community (v3.1.2+).

Krok 2 – wybór płytki i portu

Skonfiguruj środowisko pod Wemos D1 Mini:

  • płytka: Narzędzia > Płytka > LOLIN(WEMOS) D1 R2 & mini,
  • port: właściwy port USB (sterownik CH340: https://sparks.gogo.co.nz/ch340.html),
  • ustawienia: Upload 115200, CPU 80 MHz, Flash 4 MB (np. FS: 2 MB, OTA: ~1019 KB).

Krok 3 – biblioteki IR

Zainstaluj niezbędne biblioteki do obsługi podczerwieni:

  • otwórz Szkic > Dołącz bibliotekę > Zarządzaj bibliotekami,
  • zainstaluj IRremoteESP8266 (autor: David Conran, v2.8.6+),
  • opcjonalnie: IRremote (shirriff) – tylko jeśli świadomie jej potrzebujesz równolegle.

Podłącz Wemos przez USB i naciśnij Upload, aby przetestować komunikację.

3. Schematy podłączeń – odbiornik i nadajnik IR

Podstawowy setup (odbiornik + nadajnik)

Użyj płytki stykowej i trzymaj się logiki 3.3 V. Nie zasilaj diody IR bezpośrednio 5 V z pinu GPIO – w razie potrzeby użyj tranzystora.

Poniższa tabela podsumowuje połączenia pinów:

Komponent Pin Wemos D1 Mini Opis
Odbiornik IR (VS1838B) VCC→3V3 / GND→GND / OUT→D2 (GPIO4) Odbiera i demoduluje sygnały z pilotów.
Nadajnik IR (LED 940 nm + rezystor 100 Ω) Anoda→D1 (GPIO5) / Katoda→GND (przez 100 Ω) Wysyła kody IR; warto dodać kondensator 4.7–10 µF na zasilaniu.
Zasilanie microUSB 5 V Stabilne 3.3 V zapewnia regulator na płytce.

Schemat w formie ASCII (do szybkiego podglądu):

Wemos D1 Mini
3V3 ---- VCC [VS1838B]
OUT ---- D2
GND ---- GND
D1 ----[100Ω]---- Anoda IR LED ---- Katoda ---- GND

Pełniejszy schemat znajdziesz tutaj: https://arduino.net.pl/index.php/wemos-d1-mini/ (wersja d1_mini v3.0.0).

Uwaga: do nadajnika wybierz pin z obsługą PWM (np. D1). Testuj skuteczność w zakresie 1–5 m i koryguj ustawienia.

4. Podstawowy kod – test odbioru i nadawania IR

Kod 1 – odbiornik: dekodowanie pilota TV

Wgraj szkic i obserwuj Serial Monitor (115200 baud), naciskając przyciski pilota. Zobaczysz odczytane kody HEX:

#include <IRremoteESP8266.h>
#include <IRrecv.h>
#include <IRutils.h>

#define IR_PIN D2 // GPIO4

IRrecv irrecv(IR_PIN);
decode_results results;

void setup() {
Serial.begin(115200);
irrecv.enableIRIn(); // Start odbiornika
Serial.println("Nacisnij przycisk pilota...");
}

void loop() {
if (irrecv.decode(&results)) {
serialPrintUint64(results.value, HEX); // Kod HEX
Serial.println("");
irrecv.resume(); // Czekaj na kolejny
}
delay(100);
}

Kod 2 – nadajnik: wysłanie komendy POWER (Sony)

Przykład wysyła co 5 s komendę POWER dla TV Sony. Zamień kod na własny, odczytany w poprzednim kroku:

#include <IRremoteESP8266.h>
#include <IRsend.h>
#include <ir_Sony.h>

#define IR_LED D1 // GPIO5
IRsend irsend(IR_LED);

void setup() {
Serial.begin(115200);
irsend.begin();
}

void loop() {
irsend.sendSony(0xA90, 12); // Przyklad: POWER (Sony)
Serial.println("Wyslano POWER");
delay(5000);
}

5. Pomysły na projekty – od prostych do zaawansowanych

Projekt 1 – uniwersalny pilot IR przez przeglądarkę (podstawowy)

Zastosowanie: steruj TV/klimą z dowolnego urządzenia w sieci lokalnej. Zrealizuj to w trzech krokach:

  1. Skonfiguruj Wi‑Fi w setup() za pomocą WiFi.begin("twoj_ssid", "twoje_haslo"); i poczekaj na połączenie.
  2. Uruchom prosty serwer HTTP na porcie 80 z endpointem, który wyśle kod IR.
  3. Wywołaj adres http://adres_IP/power z przeglądarki lub automatyzacji.

Przykładowy szkic serwera www z wysyłką kodu IR:

#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#include <IRremoteESP8266.h>
#include <IRsend.h>

#define IR_LED D1
const char* ssid = "twoj_ssid";
const char* pass = "twoje_haslo";

IRsend irsend(IR_LED);
ESP8266WebServer server(80);

void setup() {
Serial.begin(115200);
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) { delay(300); Serial.print("."); }
Serial.println(); Serial.print("IP: "); Serial.println(WiFi.localIP());
irsend.begin();
server.on("/power", []() {
irsend.sendSony(0xA90, 12);
server.send(200, "text/plain", "OK");
});
server.begin();
}

void loop() {
server.handleClient();
}

Dostęp: wpisz w przeglądarce http://192.168.1.xx/power i sprawdź reakcję odbiornika.

Projekt 2 – integracja z Home Assistant (średnio zaawansowany)

Cel: sterowanie IR przez MQTT i automatyzacje głosowe. Skonfiguruj brokera (np. Mosquitto), zasubskrybuj temat, a następnie mapuj wiadomości na funkcje wysyłki IR:

  1. Dodaj PubSubClient.h, połącz się z brokerem i zasubskrybuj np. home/tv/power.
  2. W callbacku dla MQTT, na podstawie payload (np. ON/OFF), wywołuj irsend.sendSony(...) lub inny protokół.
  3. W Home Assistant zdefiniuj mqtt.switch lub mqtt.button wskazujący na powyższy temat.

Projekt 3 – automatyczne podlewanie z czujnikiem IR (kreatywny)

Idea: wykorzystaj odbiornik IR jako detektor aktywności i połącz z przekaźnikiem do pompy wody:

  • ir jako czujnik obecności (analiza odebranych ramek lub poziomu zakłóceń),
  • połącz wyjście sterujące z przekaźnikiem (np. pin D8) i pompą,
  • dodaj powiadomienia/aplikację (np. Blynk) dla ręcznego sterowania.

Projekt 4 – pilot web do AGD

Odczytaj i zapisz kody pilotów (np. Whirlpool/Beko), a następnie zbuduj prosty panel web z przyciskami (POWER, START, PAUSE) wywołującymi odpowiednie endpointy.

Projekt 5 – IR blaster multiroom (zaawansowany)

Rozmieść kilka Wemosów w domu i steruj nimi centralnie (np. przez Node‑RED). Używaj bazy kodów z serwisów takich jak: https://www.ir-codes.com

6. Praktyczne zastosowania w domu

Poniższa tabela pokazuje popularne scenariusze i korzyści z użycia IR w smart home:

Zastosowanie Urządzenia Korzyści
RTV TV, soundbar, dekoder Wyłączanie/wyciszanie o stałej porze automatycznie.
Klimatyzacja LG, Samsung AC Ustawianie np. 22°C głosowo lub z automatyzacji.
Oświetlenie taśmy i sterowniki IR Ściemniacz bez dodatkowego huba.
AGD wentylator, rolety/żaluzje Timer i sterowanie z aplikacji.
Bezpieczeństwo TV jako „atrapa” obecności Automatyczne włączanie dla odstraszania włamywaczy.

Koszt pełnego setupu – zwykle 50–100 zł; czas uruchomienia pojedynczego projektu: 1–2 h.

7. Najczęstsze błędy i rozwiązania

Jeśli coś nie działa, sprawdź poniższe wskazówki:

Problem Rozwiązanie
Nie odbiera IR Sprawdź zasilanie 3V3 i masę, odsuń odbiornik od bezpośredniego słońca, użyj aktualnej biblioteki IRremoteESP8266 v2.8+.
Słaby zasięg nadajnika Zastosuj lepszą diodę (np. TSAL6200), dodaj kondensator 10 µF i rozważ tranzystor NPN (np. 2N2222) z rezystorem 100–220 Ω.
Upload fail Zainstaluj sterownik CH340, wybierz prawidłowy port, naciśnij RST i ponów próbę; zmniejsz prędkość Upload do 115200.
Wi‑Fi niestabilne Zapewnij stabilne 5 V/USB, skróć przewody, ustaw stały kanał Wi‑Fi; w kodzie wyłącz usypianie: WiFi.setSleep(false);.
Zakłócenia/śmieci w odbiorze Filtrowanie w programie (ignoruj powtórzenia, minimalna długość ramki), uśrednianie kilku odczytów.

Debuguj w Serial Monitor przy 115200 baud – logi często jasno wskazują przyczynę.

8. Rozwój i następne kroki

Od tych ścieżek warto zacząć dalszą rozbudowę ekosystemu:

  • Home Assistant + ESPHome – szybka integracja bez pisania kodu;
  • Blynk/IFTTT – wygodne aplikacje mobilne i proste automatyzacje;
  • D1 Mini Pro (16 MB flash) – lokalna baza kodów i większe OTA;
  • Fora – smartnydom.pl i elektroda.pl to kopalnia wiedzy i wsparcia;
  • YouTube – liczne tutoriale „Wemos D1 mini IR” krok po kroku.

Pobierz gotowe projekty – repozytorium: https://github.com/example/wemos-ir

Źródła – arduino.net.pl, elektroda.pl, YouTube (aktualizacja 2026).

Artykuł zaktualizowany w maju 2026 – zgodność z bibliotekami ESP8266 v3.1.

Udostępnij ten artykuł
Brak komentarzy

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *