Supla virtual device MQTT

Awatar użytkownika
Robert Błaszczak
Posty: 3940
Rejestracja: sob gru 22, 2018 8:55 pm
Lokalizacja: Zielona Góra
Kontakt:

No i Michał znalazł super proste rozwiązanie dla chcących mieć informację o poziomie baterii w czujnikach LYWSD03MMC :D
Gratuluję pomysłu.
Pozdrawiam
Robert Błaszczak


Moja prywatna strona: www.blaszczak.pl
Awatar użytkownika
uchnast.michal
Posty: 1073
Rejestracja: wt cze 04, 2019 11:37 am

Robert Błaszczak pisze: pn kwie 13, 2020 7:06 pm No i Michał znalazł super proste rozwiązanie dla chcących mieć informację o poziomie baterii w czujnikach LYWSD03MMC :D
Gratuluję pomysłu.
Dziękuję, to wszystko za sprawą Waszej inspiracji :D
e-talking............
Byłem tam - Supla Offline Party 2023
Awatar użytkownika
lukfud
Posty: 2087
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

Co może być nie tak. SVD co jakiś czas się "zawiesza" Ostatnio co kilkanaście godzin. Jest połączony, ale nie pokazuje wartości z plików, a przy poleceniu command_on uruchamiający skrypt pojawia się błąd:
WARNING[1587922214.208744] The command above failed with exist status 32512.
https://www.facebook.com/groups/supladiy/
Awatar użytkownika
PuteR
Posty: 1421
Rejestracja: śr gru 06, 2017 10:07 am

fracz pisze: wt mar 17, 2020 9:32 am Jakby ktoś chciał :cry:

Liczba zakażeń koronawirusem w Polsce:

Kod: Zaznacz cały

*/30 * * * * (WIRUS_DATA=$(curl -s 'https://gdziewirus.pl') && echo $WIRUS_DATA | pup '.infoborder:first-of-type text{}' | sed 's/[^0-9]*//g') > /home/pi/supla-virtual-device/var/koronawirus-polska.txt
coś chyba zmienili na stronie, da się jakoś teraz wyciągnąć te dane??
lukfud pisze: ndz kwie 26, 2020 5:37 pm Co może być nie tak. SVD co jakiś czas się "zawiesza" Ostatnio co kilkanaście godzin. Jest połączony, ale nie pokazuje wartości z plików, a przy poleceniu command_on uruchamiający skrypt pojawia się błąd:
WARNING[1587922214.208744] The command above failed with exist status 32512.
też zaobserwowałem u siebie ten problem. Myślałem że to wina mojego słabe łącza, ale może jednak to nie to.
Awatar użytkownika
lukfud
Posty: 2087
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

PuteR pisze: ndz maja 03, 2020 7:19 am też zaobserwowałem u siebie ten problem. Myślałem że to wina mojego słabe łącza, ale może jednak to nie to.
Od kilku dni u mnie ten problem już nie występuje i podejrzewam co mogło być przyczyną.
Jedn z kanałów odczytywał z pliku .txt wartość ciśnienia (odczyt z bme i zapis do pliku poprzez skrypt co kilkanaście sekund).
Niestety basic do którego podłączony jest bme ostatnio często tracił połączenie z wifi (kilka min - kilka godzin) co skutkowało brakiem wartości w pliku .txt.
Wydaje mi się, że SVD zawieszał się przez brak wartości pliku, bo usunąłem ten kanał i problem zniknął, ale na 100% nie mogę tego potwierdzić.
https://www.facebook.com/groups/supladiy/
Awatar użytkownika
PuteR
Posty: 1421
Rejestracja: śr gru 06, 2017 10:07 am

lukfud pisze: ndz maja 03, 2020 7:46 am
PuteR pisze: ndz maja 03, 2020 7:19 am też zaobserwowałem u siebie ten problem. Myślałem że to wina mojego słabe łącza, ale może jednak to nie to.
Od kilku dni u mnie ten problem już nie występuje i podejrzewam co mogło być przyczyną.
Jedn z kanałów odczytywał z pliku .txt wartość ciśnienia (odczyt z bme i zapis do pliku poprzez skrypt co kilkanaście sekund).
Niestety basic do którego podłączony jest bme ostatnio często tracił połączenie z wifi (kilka min - kilka godzin) co skutkowało brakiem wartości w pliku .txt.
Wydaje mi się, że SVD zawieszał się przez brak wartości pliku, bo usunąłem ten kanał i problem zniknął, ale na 100% nie mogę tego potwierdzić.
Możliwe że masz rację. Również mam jeden skrypt który odczytuje wartości z czujników z pieca C. O i ostatnio (nie wiem czemu) te wartości raz są a raz ich nie ma.

Może dało by się coś zrobić by ten program pomimo braku wartości w pliku się jednak nie zawieszał?
hawrosz
Posty: 3
Rejestracja: śr kwie 29, 2020 2:49 pm

uchnast.michal pisze: wt mar 24, 2020 8:17 pm Kolega arekrgw (
https://forum.supla.org/viewtopic.php?p=62258#p62258
) napisał skrypt w pythonie (https://github.com/arekrgw/airly_get) do pobieranie danych z Airly do plików tekstowych na potrzeby Supla virtual device.
Dokonałem kilku zmian by każdy z pyłów prezentowany był osobno.

Pobierane wartości:
- Temperatura i wilgotność
- Ciśnienie
- Wartość PM1
- Wartość PM2,5 oraz procent normy
- Wartość PM10 oraz procent normy

Ikony pobrane stąd: viewtopic.php?p=59351#p59351

Kod: Zaznacz cały

#!/usr/bin/python

import requests
import argparse

parser = argparse.ArgumentParser()

parser.add_argument("--url", help="Airly API url with API_KEY")
parser.add_argument("--th", help="File destination for temperature and humidity")
parser.add_argument("--pre", help="File destination for air pressure")
parser.add_argument("--pm1", help="pm1")
parser.add_argument("--pm10", help="pm10")
parser.add_argument("--pm25", help="pm25")

args = parser.parse_args()

if args.url:
  try:
    req = requests.get(args.url)
    if req.status_code == 200:
      result = req.json()['current']['values']

      if args.th:
        file = open(args.th, "w")
        file.write(f"{result[5]['value']}\n{result[4]['value']}")
        file.close()

      if args.pre:
        file = open(args.pre, "w")
        file.write(f"{result[3]['value']}")
        file.close()

      if args.pm1:
        file = open(args.pm1, "w")
        file.write(f"{result[0]['value']}")
        file.close()

      if args.pm10: #norm 50
        file = open(args.pm10, "w")
        file.write(f"{result[2]['value']}\n{(result[2]['value']*100)/50}")
        file.close()

      if args.pm25: #norm 25
        file = open(args.pm25, "w")
        file.write(f"{result[1]['value']}\n{(result[1]['value']*100)/25}")
        file.close()

    elif req.status_code == 429:
      print("API rate limit was exceeded")
    elif req.status_code == 401:
      print("Please provide API key within a link")


  except requests.RequestException:
    print("URL error, please correct your URL")
  except:
    print("Unexpected error ocurred")


else:
  print("Error, you must provide an URL")
Cześć, miałem już kilka błachostek, z którymi się uporałem bez potrzeby pisania tutaj, ale z ta chyba już nie jest błędem z mojej strony, do rzeczy - zmodyfikowałem go tak, żeby wyświetlał wilgotność powietrza tylko w pliku TH.txt i tak robi, ale gdy mam ustawione w configu:

Kod: Zaznacz cały

[CHANNEL_1]
function=HUMIDITY
file=/ścieżka/TH.txt
file_write_check_sec=600
to pokazuje się w Supli stała wartość 32.737%, raczej to nie wina pliku, ponieważ w takiej formie inne dane się wyświetlają na innych kanałach, może jakiś błąd z kanałem HUMIDITY? Z góry dziękuję za odpowiedzi :D
Awatar użytkownika
lukfud
Posty: 2087
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

hawrosz pisze: ndz maja 03, 2020 10:43 pm Cześć, miałem już kilka błachostek, z którymi się uporałem bez potrzeby pisania tutaj, ale z ta chyba już nie jest błędem z mojej strony, do rzeczy - zmodyfikowałem go tak, żeby wyświetlał wilgotność powietrza tylko w pliku TH.txt i tak robi, ale gdy mam ustawione w configu:

Kod: Zaznacz cały

[CHANNEL_1]
function=HUMIDITY
file=/ścieżka/TH.txt
file_write_check_sec=600
to pokazuje się w Supli stała wartość 32.737%, raczej to nie wina pliku, ponieważ w takiej formie inne dane się wyświetlają na innych kanałach, może jakiś błąd z kanałem HUMIDITY? Z góry dziękuję za odpowiedzi :D
https://github.com/lukbek/supla-virtual ... ed-sensors

Według opisu na githubie, kanał samej wilgotności nie jest jeszcze wspierany. Musisz użyć: TEMPERATURE_AND_HUMIDITY
https://www.facebook.com/groups/supladiy/
hawrosz
Posty: 3
Rejestracja: śr kwie 29, 2020 2:49 pm

lukfud pisze: pn maja 04, 2020 7:01 am
hawrosz pisze: ndz maja 03, 2020 10:43 pm Cześć, miałem już kilka błachostek, z którymi się uporałem bez potrzeby pisania tutaj, ale z ta chyba już nie jest błędem z mojej strony, do rzeczy - zmodyfikowałem go tak, żeby wyświetlał wilgotność powietrza tylko w pliku TH.txt i tak robi, ale gdy mam ustawione w configu:

Kod: Zaznacz cały

[CHANNEL_1]
function=HUMIDITY
file=/ścieżka/TH.txt
file_write_check_sec=600
to pokazuje się w Supli stała wartość 32.737%, raczej to nie wina pliku, ponieważ w takiej formie inne dane się wyświetlają na innych kanałach, może jakiś błąd z kanałem HUMIDITY? Z góry dziękuję za odpowiedzi :D
https://github.com/lukbek/supla-virtual ... ed-sensors

Według opisu na githubie, kanał samej wilgotności nie jest jeszcze wspierany. Musisz użyć: TEMPERATURE_AND_HUMIDITY
aaa, no chyba, że tak :D dzięki
markos
Posty: 15
Rejestracja: wt mar 19, 2019 1:40 pm

Czy ktoś spotkał się z problem rozłączania SVD przy chwilowym braku internetu?
Od pewnego czasu sporadycznie (1 raz na parę dni) występuje u mnie chwilowe rozłączenie niektórych modułów. Niektóre termometry raportują dane pomiary bez przerwy, a w niektórych brakuje 1 pomiary - luka ~10min . Problem mógłby być z zasięgiem lub samym softem natomiast zauważyłem, że rozłączenie było o tej samej porze (fizyczne termometry i termometry z SVD) przy czym standardowe termometry wracają do normalnej pracy natomiast wirtualne urządzenie "SUPLA VIRTUAL DEVICE" od tego czasu pozostaje nieaktywne.

Po restarcie usługi SVD wszystko podnosi się bez błędów.
Czy ktoś miał taki problem lub ma pomysł gdzie szukać problemu braku "autostartu" SVD? (o ile się da, to chciałbym uniknąć cyklicznych restartów usługi)
ODPOWIEDZ

Wróć do „Projekty użytkowników”