Wysyłanie stanu przekaźnika do SuplaCloud

PawelM
Posts: 14
Joined: Thu Dec 29, 2022 2:25 pm

Post

klew wrote: Sat Dec 31, 2022 5:48 pm
PawelM wrote: Sat Dec 31, 2022 2:17 pm Co masz na myśli? :oops:
customDigitalRead jest zaimplementowane dla gpio (pin) o numerach 200 do 207, a write dla 100 do 107.
Really na "gpio" 100 będzie próbował pisać i czytać na to gpio
Faktycznie, zmieniłem:

Code: Select all

class MyPCF8574 : public Supla::Io {
  public:
    void customDigitalWrite(int channelNumber, uint8_t pin, uint8_t val) {
      if ((pin >= 100) && (pin <= 107)) {
        EXT1.write(pin - 100, val);
        return;
      }
      if (pin <= 99) {
        return ::digitalWrite(pin, val);
      }
    }

    int customDigitalRead(int channelNumber, uint8_t pin) {
      if ((pin >= 100) && (pin <= 107)) {
        return EXT1.read(pin - 100);
      }
      if (pin <= 99) {
        return ::digitalRead(pin);
      }
    }
} MyPCF8574;


Zadziałało :) Pozdrawiam, wszystkiego najlepszego w nowym roku ;)
User avatar
SOYER
Posts: 1623
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry
Been thanked: 2 times

Post

wtf???? ?? ?
mam nad SETUP:

Supla::Control::Relay *valveOpen = nullptr;
Supla::Control::Relay *valveClose = nullptr;

w SETUP:

valveOpen = new Supla::Control::Relay(8, false);
valveClose = new Supla::Control::Relay(9, false);

a potem co sekundę w LOOP:

USBSerial.print("valveClose:......................");
USBSerial.println(valveClose->isOn());
USBSerial.print("valveOpen:......................");
USBSerial.println(valveOpen->isOn());

i oba parametry mam ciągle na true, niezależnie czy włączę w apk przekaźniki czy nie.... :shock: :shock: :shock:


ale... jeśli w SETUP zrobię:

valveOpen = new Supla::Control::Relay(8, false);
valveClose = new Supla::Control::Relay(9, false);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);

to wtedy isOn() działa prawidłowe.... WHY?
czy to nie powinno być zaszyte w libsach supli?
https://youtube.com/@tomaszhamer8134?si=_J1cT_QWsXxgt1Fm
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79
User avatar
SOYER
Posts: 1623
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry
Been thanked: 2 times

Post

Pewnym tropem jest też to, że na esp32c3 nie działa sterowanie pinami (by relay channel) jeśli nie dodam tego

pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
https://youtube.com/@tomaszhamer8134?si=_J1cT_QWsXxgt1Fm
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Gdzie jest ten złoty szpadel za wykopywanie starych tematów? ;)
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

Supła ustawia input_output.
Sprawdzałeś czy gpio 8 i 9 na C3 można normalnie używać?
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
Zibi_007
Posts: 3985
Joined: Tue Oct 31, 2023 10:06 pm
Has thanked: 10 times
Been thanked: 31 times

Post

klew wrote: Wed Feb 12, 2025 6:27 pm Supła ustawia input_output.
Sprawdzałeś czy gpio 8 i 9 na C3 można normalnie używać?
Można, bo miałem na nich np. ekran OLED. Dodatkowo na 8 jest LED modułu.
Image Wiesz, że Supla obsługuje Zigbee? Wstąp do Klubu Promila: https://forum.supla.org/viewtopic.php?t=18018
Image Szukasz nowego GG? Jest tutaj: https://forum.supla.org/viewtopic.php?t=18036
User avatar
SOYER
Posts: 1623
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry
Been thanked: 2 times

Post

Najlepsze, że teraz dla wyłączonych przekaźników isOn() zwraca false...

jak to się ma do tego co też w załączniku...
You do not have the required permissions to view the files attached to this post.
https://youtube.com/@tomaszhamer8134?si=_J1cT_QWsXxgt1Fm
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79
User avatar
SOYER
Posts: 1623
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry
Been thanked: 2 times

Post

Tutaj kolejne logi, zamykanie zaworu po wysłaniu powiadomienia( valveClose jest włączony),
drugi screen jak oba przekaźniki wyłączone...

cały czas mamy:
USBSerial.print("valveClose:......................");
USBSerial.println(valveClose->isOn());
USBSerial.print("valveOpen:......................");
USBSerial.println(valveOpen->isOn());
You do not have the required permissions to view the files attached to this post.
https://youtube.com/@tomaszhamer8134?si=_J1cT_QWsXxgt1Fm
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79
User avatar
klew
Posts: 13908
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

SOYER wrote: Wed Feb 12, 2025 6:39 pm Najlepsze, że teraz dla wyłączonych przekaźników isOn() zwraca false...

jak to się ma do tego co też w załączniku...
Nie wiem. Jakiś screen wyrwany z kontekstu. Jeśli tam jest mowa o metodzie isOn, to powinno być na odwrót napisane.
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
SOYER
Posts: 1623
Joined: Wed Aug 10, 2022 12:29 pm
Location: Kryry
Been thanked: 2 times

Post

klew wrote: Wed Feb 12, 2025 6:50 pm
SOYER wrote: Wed Feb 12, 2025 6:39 pm Najlepsze, że teraz dla wyłączonych przekaźników isOn() zwraca false...

jak to się ma do tego co też w załączniku...
Nie wiem. Jakiś screen wyrwany z kontekstu. Jeśli tam jest mowa o metodzie isOn, to powinno być na odwrót napisane.
screen nie wyrwany z kontekstu, ale…
No właśnie…
dlaczego jeśli mam wyłączone przekaźnik, to isOn() zwraca false?
https://youtube.com/@tomaszhamer8134?si=_J1cT_QWsXxgt1Fm
https://kryry01.aqi.eco/pl
https://app.weathercloud.net/d4311785603
https://github.com/Soyer79

Return to “Pomoc”