SmartPool - pomoc przy kodzie ;)

User avatar
Lector
Posts: 2470
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań
Has thanked: 13 times
Been thanked: 25 times

Post

Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
https://pool.lector.top/
User avatar
veeroos
Posts: 1081
Joined: Sun Mar 20, 2022 9:30 am
Location: Głogów
Has thanked: 1 time
Been thanked: 9 times

Post

Powiem tak: Kawał dobrej roboty, jak widzę nadal czujniki nie działają? Ja ostatnio miałem jakiś problem z czujnikami temperatury, nie pamiętam co zrobiłem, nie chciały mi wcale chodzić też, gdzieś coś pozmieniałem i w końcu poszło, ale coś kojarzę, że nie na wszystkich pinach chciały chodzić, nie wiem czy coś się pozmieniało w bibliotekach, czy obecnie dostępne czujniki mają jakiś problem. Fajnie wygląda samo sterowanie, mam nadzieję, że wszystko w końcu ruszy ;). Niestety nie mam czasu na testy, nawet brakuje mi go na analizę programu, ale wgrałem soft do ESP i coś tam "popstrykałem" ;) i naprawdę program fajnie chodzi.
Zamel Mew-01, Zamel PEW-01, Zamel SBW-01, Zamel THW-01, Zamel SRW-01, Zamel mSLW-02, Auraton BOX + Indor Sensor, Airly Gate By Veeroos, Zigbee to Supla Gateway + sensors, Zamel SGW-01 and more

https://github.com/v33r005
User avatar
Lector
Posts: 2470
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań
Has thanked: 13 times
Been thanked: 25 times

Post

Płytka ciągle na biurku leży.
Może dziś podmienienie starego Sonoffa 4ch pro R2.
Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
https://pool.lector.top/
User avatar
Lector
Posts: 2470
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań
Has thanked: 13 times
Been thanked: 25 times

Post

Mam pytanie do znawców zasady działania hvac.
Czy jak termostat pracuje w trybie ręcznym, to czy we firmware jestem stanie sprawdzić aktualną nastawę temperatury w harmonogramie termostatu?
Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
https://pool.lector.top/
User avatar
Lector
Posts: 2470
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań
Has thanked: 13 times
Been thanked: 25 times

Post

Jak to bywa, weekend wolny, ale czasu zawsze braknie :P
Ale za to urodził mi się w głowie nowy pomysł :mrgreen:
Screenshot 2026-05-31 at 21-39-22 SUPLA-SmartPool.png
Chciałem do tego wykorzystać harmonogram z termostatu dla wyłączenia nastawa 20 stopni dla włączenia 40 stopni (skrajne położenia), ale chyba nie idzie odczytać nastaw nie aktywnego trybu automatycznego (harmonogramu) przy aktywnym trybie ręcznym.
Jak się mylę to proszę o nakierowanie :P
You do not have the required permissions to view the files attached to this post.
Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
https://pool.lector.top/
User avatar
vajera
Posts: 7290
Joined: Wed Oct 31, 2018 7:58 am
Location: Biedrusko
Has thanked: 289 times
Been thanked: 161 times

Post

Lector wrote: Sun May 31, 2026 7:39 pm Jak to bywa, weekend wolny, ale czasu zawsze braknie :P
Ale za to urodził mi się w głowie nowy pomysł :mrgreen:

Screenshot 2026-05-31 at 21-39-22 SUPLA-SmartPool.png

Chciałem do tego wykorzystać harmonogram z termostatu dla wyłączenia nastawa 20 stopni dla włączenia 40 stopni (skrajne położenia), ale chyba nie idzie odczytać nastaw nie aktywnego trybu automatycznego (harmonogramu) przy aktywnym trybie ręcznym.
Jak się mylę to proszę o nakierowanie :P
Masz 4 programy program_id = [1..4]

Code: Select all

TWeeklyScheduleProgram program = hvac->getProgramById(program_id,false); 
odczyt temperatury:

Code: Select all

my_temp = program.SetpointTemperatureHeat;
ustawienie temperatury:

Code: Select all

hvac->setProgram(program_id, program.Mode, my_temp,false);
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277
User avatar
Lector
Posts: 2470
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań
Has thanked: 13 times
Been thanked: 25 times

Post

vajera wrote: Sun May 31, 2026 8:55 pm Masz 4 programy program_id = [1..4]
Odczytuje mi główne nastawy na górze, a ja chcę aby odczytał mi z harmonogramu godzinowego.

Code: Select all

  if (hvacPool && relayPump) {
    TWeeklyScheduleProgram program = hvacPool->getProgramById(1, false);
    // Używamy domyślnej wartości programu (bez podziału na godziny)
    hvacTempSetpoint = program.SetpointTemperatureHeat / 100.0;
    pumpOn = relayPump->isOn();
  } else {
    hvacTempSetpoint = 0.0;
    pumpOn = false;
  }
Screenshot 2026-06-01 at 09-50-46 Termostat Basenu - SUPLA Cloud.png
Pobiera mi temperaturę z kółka, a chcę z tej tabelki według aktualnej godziny.
You do not have the required permissions to view the files attached to this post.
Last edited by Lector on Mon Jun 01, 2026 7:53 am, edited 1 time in total.
Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
https://pool.lector.top/
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

Na HVAC możesz odpalić:

Code: Select all

  auto currentProgram = hvac->getCurrentProgram();
To zwraca strukturę TWeeklyScheduleProgram (z proto.h) - tam massz tryb oraz nastawy temperatury dla aktualnego programu.
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
Lector
Posts: 2470
Joined: Fri Nov 17, 2017 2:26 pm
Location: Poznań
Has thanked: 13 times
Been thanked: 25 times

Post

O i to jest , dzięki.
Niespełniony automatyk. :mrgreen:
https://3d-lamp.photos/
https://pool.lector.top/
User avatar
vajera
Posts: 7290
Joined: Wed Oct 31, 2018 7:58 am
Location: Biedrusko
Has thanked: 289 times
Been thanked: 161 times

Post

Lector wrote: Mon Jun 01, 2026 7:53 am
vajera wrote: Sun May 31, 2026 8:55 pm Masz 4 programy program_id = [1..4]
Odczytuje mi główne nastawy na górze, a ja chcę aby odczytał mi z harmonogramu godzinowego.

Code: Select all

  if (hvacPool && relayPump) {
    TWeeklyScheduleProgram program = hvacPool->getProgramById(1, false);
    // Używamy domyślnej wartości programu (bez podziału na godziny)
    hvacTempSetpoint = program.SetpointTemperatureHeat / 100.0;
    pumpOn = relayPump->isOn();
  } else {
    hvacTempSetpoint = 0.0;
    pumpOn = false;
  }
Screenshot 2026-06-01 at 09-50-46 Termostat Basenu - SUPLA Cloud.png
Pobiera mi temperaturę z kółka, a chcę z tej tabelki według aktualnej godziny.
Masz też taką opcję:

Code: Select all

TWeeklyScheduleProgram program  = getProgramAt(quarterIndex);
a ten quarterIndex możesz wyliczyć sobie funkcją:

Code: Select all

int calculateIndex(enum DayOfWeek dayOfWeek,
                     int hour,
                     int quarter) const;
Bramka Zigbee <=> SUPLA
Więcej informacji tutaj:
https://forum.supla.org/viewforum.php?f=127
FAQ https://forum.supla.org/viewtopic.php?t=17277

Return to “Pomoc”