Podstawy podstaw

Karol.M
Posty: 11
Rejestracja: czw sty 26, 2023 9:00 am

Hej wszystkim i witam się w pierwszym poście.
Przymierzam się do zrobienia urządzenia sterowanego przez suple. Moje pytanie takie... Czy gdzieś znajdę chociaż jakąś podstawową dokumentację do supla-device? Opisy podstawowych funkcji, jakie parametry przyjmują? To co jest w readme w sumie w ogóle nie naprowadza jak tego użyć. Potrzebne mi w sumie tylko podstawowe funkcje. Przyciski. Ustawianie temperatury. Odczyt temperatur. Przekazywanie zmiennej liczbowej do supli. Ktoś coś podpowie? 🙂
Awatar użytkownika
kris.sg
Posty: 372
Rejestracja: pn sie 07, 2017 8:08 pm
Lokalizacja: Przezchlebie

Zerkałeś na przykłady w supla-device ?

Kod: Zaznacz cały

https://github.com/SUPLA/supla-device/tree/main/examples
Mogą pomóc.
■Rpi4(m.2) Supla Cloud, Scripts ■Rpi3(sd) SD: 6x MI ATC, 1x W.S.
ROLETY_V3 x12 ■SWITCH_DUAL x4 ■GATE_MODULE_V3 x1 ■SOCKET_SSR x1 ■SMOKE_MODULE x1
SONOFF_TOUCH x4 ■YUNSCHAN x1 ■STAITCASE_DIMMER x1 ■MEW-01 x2 ■mROW-02 x1 ■LEW-01 x1
POW_R2 x2 ■SP111 x3
Karol.M
Posty: 11
Rejestracja: czw sty 26, 2023 9:00 am

Przeglądałem, nie wiele rozjaśniło. Mógłbyś pobieżnie opisać jak te metody wyglądają? Jakie parametry przyjmują? Jakie wartości zwracają?
Awatar użytkownika
klew
Posty: 8184
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

Karol.M pisze: czw sty 26, 2023 1:57 pm Przeglądałem, nie wiele rozjaśniło. Mógłbyś pobieżnie opisać jak te metody wyglądają? Jakie parametry przyjmują? Jakie wartości zwracają?
Tworznie kanałów to tworzenie instancji klas.

Wszystkie kanały dziedziczą po klasie Supla::Element, która ma metody, które są odpalane przez SuplaDevice w różnych momentach "życia" programu.
To jest opisane w readme.

Metody i co one zwracają, znajdziesz w plikach nagłówkowych. Co prawda nie ma tam dokumentacji, ani opisu zwracanych wartości, ale większość prostych tematów nie powinna sprawiać problemów.

Po Twoich pytaniach, zgaduję, że szukasz opisu interfejsu w stylu C. Niestety takiego nie ma. Wiem, że on jest prostszy do zrozumienia na początku i większość softów na ESP/Arduino tak działa, ale supla-device działa inaczej. Jeśli nie czujesz się swobodnie w koncepcjach klasy, metod wirtualnych i dziedziczenia, to raczej będzie trudno wskoczyć w ten kod i zrozumieć co się dzieje. Jeśli tak jest, to polecam zrobić sobie jakieś kursy/tutoriale z podstaw klas i dziedziczenia w C++, to na pewno pomoże.
Widzimy się na Supla Offline Party vol. 2 :!:
Karol.M
Posty: 11
Rejestracja: czw sty 26, 2023 9:00 am

Generalnie dość sprawnie poruszam się w C#, więc programowanie obiektowe nie jest mi obce. Ale jakość ciężko mi się jeszcze w tym ogarnąć.

A podpowiedz... potrzebne mi w sumie przekazywanie parametrów od supli do "płytki" i w drugą stronę. Za logikę będzie odpowiadał osobny kod. Chciałbym wykorzystać suplę tylko do komunikacji. Jak to ugryźć? Da się wykorzystać klasę thermometer przekazując jej temperaturę ze zmiennej a nie z czujnika? Dobrze rozumuje żeby wykorzystać do tego virual_thermometer?
SOYER
Posty: 819
Rejestracja: śr sie 10, 2022 12:29 pm
Lokalizacja: Kryry

No dokumentacji nie ma.
Dokumentacja nie jest potrzebna.
Ważne są nowe funkcjonalności, np. sterowanie diodami rgbw
Kiedyś dokumentacja będzie, jak będzie kasa na kogoś kto to wszystko ogarnie i ją napisze.
Sorry, nie mogłem się powstrzymać. :D
SOYER
Posty: 819
Rejestracja: śr sie 10, 2022 12:29 pm
Lokalizacja: Kryry

Nie chcę być źle zrozumiany, uwielbiam suplę choć mnie wkurzają jej ograniczenia.
Jednak brak dokumentacji (aktualnej, jakiejkolwiek kompletnej), projektu open source, projektu który ma być rozwijany przez społeczność...
Sorry... nie łapię zamysłu.
Karol.M
Posty: 11
Rejestracja: czw sty 26, 2023 9:00 am

Ta dokumentacja na prawdę mogłaby być lakoniczna. Co z tego że są wypisane w readme sensory i kontrolery jak nie wiadomo jakie parametry im podać. W zasadzie bez przekopywania się przez kod źródłowy nie wiadomo jak z tej biblioteki korzystać.
Awatar użytkownika
klew
Posty: 8184
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

Karol.M pisze: pt sty 27, 2023 2:09 pm Generalnie dość sprawnie poruszam się w C#, więc programowanie obiektowe nie jest mi obce. Ale jakość ciężko mi się jeszcze w tym ogarnąć.

A podpowiedz... potrzebne mi w sumie przekazywanie parametrów od supli do "płytki" i w drugą stronę. Za logikę będzie odpowiadał osobny kod. Chciałbym wykorzystać suplę tylko do komunikacji. Jak to ugryźć? Da się wykorzystać klasę thermometer przekazując jej temperaturę ze zmiennej a nie z czujnika? Dobrze rozumuje żeby wykorzystać do tego virual_thermometer?
Tak, VirtualThermometer pokazuje to co mu się ustawi tą metodą: https://github.com/SUPLA/supla-device/b ... eter.h#L31

Pytanie co tam chcesz robić na tej osobnej logice, bo ogólnie to co jest w supla-device pozwala już na dużo kombinacji. Niestety różne opisy i przykłady są rozrzucone po różnych tematach na forum...

Proponuję zacząć od jakiegoś prostego przykładu z biblioteki. Jeśli coś tam nie jest jasne, to pytaj a wszystko wyjaśnijmy.
Potem już będzie tylko łatwiej :)
Widzimy się na Supla Offline Party vol. 2 :!:
SOYER
Posty: 819
Rejestracja: śr sie 10, 2022 12:29 pm
Lokalizacja: Kryry

Gościu który ogarnia programowanie, zainteresował się Suplą, pisze tutaj, że ta "dokumentacja" do której zawsze odsyłacie to tak jakby nie za bardzo ten teges. Delikatnie mówiąc. Wy mu odpisujecie, że to przecież bardzo łatwe, a jak czegoś nie łapie to może zapytać na forum( z doświadczenia wiem, że to tak nie działa do końca na tym forum).
To teraz zastanówmy się, w jaki sposób osoby nie zaznajomione z programowaniem mają sobie poradzić.
Czy nie lepiej w sytuacji takiej jak powyższa, mówić prawdę.
1. Supla nie ma i w najbliższym czasie nie będzie mieć aktualnej dokumentacji w formie w jakiej wszyscy kojarzą dokumentację projektu open source.
2. Supla generalnie jest przeznaczona do:
* gotowych urządzeń,
*projektów diy z gotowym softem przygotowywanym za pomocą Gui Generica,
*projektów diy do których bardziej zaawansowany soft zostanie napisany przez osoby mające mnóstwo czasu na wertowanie forum i odpytywanie forumowiczów.
3. Nawet jeśli wgrasz gotowy soft do Supli, lub kupisz urządzenie sterowane przez Suplę, to nigdzie nie znajdziesz kompedium wiedzy jak to wszystko ustawić w supla apk, supla cloud, do prawidłowego ustawienia bardziej zaawansowanych funkcji musisz wertować forum i szukać AKTUALNEGO info..
4. Jeśli znajdziesz na forum informację, że jakaś funkcjonalność jest zaplanowana do dodania w najbliższej aktualizacji, lub o zgrozo, jest zgłoszona do dodania w bliżej nieokreślonej przyszłości, to nie licz na to, że będą to dni lub tygodnie, nawet nie miesiące. Nie spodziewaj się również, że poznasz choćby przybliżoną realną datę dodania tej funkcjonalności.

Lubię Suplę, cenię wiele jej zalet. Gdybym był klientem Zamela, pewnie nie umiał bym się jej nachwalić. Za to chwała twórcom Supli.
Jednak nie znoszę półprawd, zamiatania pod dywan, braku profesjonalizmu i rzucania słow na wiatr.

Pozdrawiam.
ODPOWIEDZ

Wróć do „Arduino IDE”