Trigger in - obejście z suplą

Loki
Posts: 4
Joined: Sat Aug 16, 2025 5:02 pm

Post

Cześć,
Jakiś czas temu kupilem sprzęt grający Rotela A14mkII niestety nie obsługuje ten egzemplarz funkcji trigger on czyli wzbudzania automatycznego sprzętu który podaje sytnał na jack mono (konkretnie 12v)
Zrobiłem to tak że działa offline na esp32 jak poniżej:
1. Sygnał z triger out na urządzeniu który daje sygnał daje na moduł który obniża napięcie z 12v na 3.3v tak żeby nie spalić ESP, esp jak na pinie wykryje napięcie to zaczyna się zabawa bo rottel nie ma portu trigger in ale ma irda in więc wpiąłem się przewodem z esp do trigger in i podaje odpowiednio przygotowany sygnał zgodny z sygnałem z pilolta który wcześniej zczytałem.

Działa to fajnie ale chciałbym z aplikacji pobawić wię większą ilością funkcji w zasadzie wszystkim co obsługuje pilot.
Dalej juz sobie poradzę ale nie wiem jak spreparować konfiguracje aby działało to z apką supli.
kod który teraz działa wygląda tak:

Code: Select all

[code]
#include <IRremote.hpp>

#define TRIGGER_PIN 4
#define IR_SEND_PIN 5
#define KOD_IR 0x67981183UL

bool poprzedniStan = LOW;

void setup() {
  Serial.begin(115200);
  pinMode(TRIGGER_PIN, INPUT_PULLDOWN);
  IrSender.begin(IR_SEND_PIN);
  Serial.println("System gotowy");
}

void loop() {
  bool aktualnyStan = digitalRead(TRIGGER_PIN);
  
  // Wykryj zmianę z LOW na HIGH
  if (aktualnyStan == HIGH && poprzedniStan == LOW) {
    Serial.println("Wykryto napięcie - nadawanie IR");
    
    // Wysłanie sygnału tylko raz
    IrSender.sendNECRaw(KOD_IR, 32);
    Serial.println("Wysłano kod NEC: 0x67981183");
    Serial.println("Koniec");
  }
  
  poprzedniStan = aktualnyStan;
  delay(50);
}

[/code]
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Supla nie ma zbyt wielu opcji do podłączania pilotów. W zasadzie można używać tylko kanałów sterujących, w stylu włącznik zasilania/światła. Tworzysz wtedy klasę VirtualRelay i dodajesz akcję na włączenie tego przekaźnika (czyli wysłanie komunikatu po ir).
Najlepsze suple dla Twojego domu :mrgreen:
radzik_r
Posts: 468
Joined: Sun Aug 11, 2019 5:32 pm
Has thanked: 1 time
Been thanked: 2 times

Post

Loki wrote: Sat Aug 16, 2025 5:35 pm Cześć,
Jakiś czas temu kupilem sprzęt grający Rotela A14mkII niestety nie obsługuje ten egzemplarz funkcji trigger on czyli wzbudzania automatycznego sprzętu który podaje sytnał na jack mono (konkretnie 12v)
Zrobiłem to tak że działa offline na esp32 jak poniżej:
1. Sygnał z triger out na urządzeniu który daje sygnał daje na moduł który obniża napięcie z 12v na 3.3v tak żeby nie spalić ESP, esp jak na pinie wykryje napięcie to zaczyna się zabawa bo rottel nie ma portu trigger in ale ma irda in więc wpiąłem się przewodem z esp do trigger in i podaje odpowiednio przygotowany sygnał zgodny z sygnałem z pilolta który wcześniej zczytałem.

Działa to fajnie ale chciałbym z aplikacji pobawić wię większą ilością funkcji w zasadzie wszystkim co obsługuje pilot.
Dalej juz sobie poradzę ale nie wiem jak spreparować konfiguracje aby działało to z apką supli.
kod który teraz działa wygląda tak:

Code: Select all

[code]
#include <IRremote.hpp>

#define TRIGGER_PIN 4
#define IR_SEND_PIN 5
#define KOD_IR 0x67981183UL

bool poprzedniStan = LOW;

void setup() {
  Serial.begin(115200);
  pinMode(TRIGGER_PIN, INPUT_PULLDOWN);
  IrSender.begin(IR_SEND_PIN);
  Serial.println("System gotowy");
}

void loop() {
  bool aktualnyStan = digitalRead(TRIGGER_PIN);
  
  // Wykryj zmianę z LOW na HIGH
  if (aktualnyStan == HIGH && poprzedniStan == LOW) {
    Serial.println("Wykryto napięcie - nadawanie IR");
    
    // Wysłanie sygnału tylko raz
    IrSender.sendNECRaw(KOD_IR, 32);
    Serial.println("Wysłano kod NEC: 0x67981183");
    Serial.println("Koniec");
  }
  
  poprzedniStan = aktualnyStan;
  delay(50);
}

[/code]
A masz wszystkie kody pilota?

Return to “Pomoc”