Własne moduły

kompio
Posts: 98
Joined: 22 Jul 2016, 14:38

Re: Własne moduły

Post by kompio »

Wszystko jasne.
To może przez zakradnięty błąd wczoraj nie działało mi "55" przy porównywaniu ;] a dzisiaj wszystko zadziałało.
Także śledzę na bieżąco i testuje.
kompio
Posts: 98
Joined: 22 Jul 2016, 14:38

Re: Własne moduły

Post by kompio »

PelzaK czy coś będziesz robił z odczytem temperatur z DS18b20 ?
nie ukrywam że już zacieram ręce bo mam ok 30 do obsłużenia w zalanej podłodze ;] i bym się przesiadł z mysensors.
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Własne moduły

Post by Bartek »

Też mam to w planach. A jeśli już przy "zalaniu", to widziałem podobne dallasy pod onewire, ktore mają wbudowany port i/o i doskonale by się nadawały jako adresowalne czujniki zalania połączone szeregowo :).
VDR
Posts: 15
Joined: 01 Jun 2015, 12:57

Re: Własne moduły

Post by VDR »

Kompio - mozesz skrobnac gdzie kupowales dallasy ktore zalales w posadzce. Dallas dallasowi nie rowny jesli chodzi o wykonanie a z podlogi ciezko będzie wydlubac ;P Kilka sztuk gdzies tam zanabylem ale jakosc wykonania mnie przeraza :/ Robiles jakies nadmiarowe sztuki ?
kompio
Posts: 98
Joined: 22 Jul 2016, 14:38

Re: Własne moduły

Post by kompio »

Dallasy kupowałem na allegro z przewodem 1m w metalowej obudowie. Dosztukowałem kabelki żeby zbierać je w szafkach rozdzielaczy tak jak są pętle. Umieszczałem je w środku każdej pętli podłogówki przed zalaniem (mogłem dołożyć jeszcze pod oknami i drzwiach ) w praktyce się okaże co z tego będzie ale chyba wszystkie działają bo kilka z nich już odczytuje. Czasami przewód ma kilka/ kilkanaście metrów więc trzeba mieć to na uwadze jeśli nie zadziała z rezystorem 4,7k ohm i może trzeba dobrać go na nowo.
http://allegro.pl/czujnik-temperatury-d ... 78284.html
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Własne moduły

Post by Bartek »

Jacku takie pytanie, bo mi się akurat przypomniało. Wertując kiedyś kod modułów zauważyłem tam opóźnienie 6 czy 7 sekund przed zapisem do EEPROMa np. statusu boxów. Do czego to jest i dlaczego akurat tyle sekund?
Jacek
Posts: 559
Joined: 17 Feb 2007, 18:00

Re: Własne moduły

Post by Jacek »

Chodzi tu o oszczędzanie EEPROM. Niestety pamięci EEEPROM i FLASH mają ograniczoną liczbę zapisów/kasowania. Dla pamięci EEPROM w UNIV 3 jest to 100 tys razy, a dla FLASH 10 tys razy. Jeśli w przeciągu 6s nie zostanie zmieniona wartość, to zostanie zapisana do pamięci EEPROM. Czas 6s wybrany bez większych obliczeń. Przyjąłem założenie, że np ktoś regulując jasność świecenia ściemniacza, jeżeli w ciągu 6s nie zmienia ostawień to znaczy, że uzyskał satysfakcjonujący poziom jasności - i wtedy może nastąpić zapis do pamięci EEPROM.
Regards
Jacek
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Własne moduły

Post by Bartek »

Tak podejrzewałem, tylko to magiczne 6s mnie zastanawiało :). Jeśli się uwzględni ściemniacz to rzeczywiście ma sens, ja myślałem w kontekście bitów włączających boxy. W sumie to z nimi też nie należy szaleć za bardzo, tym bardziej, że 8 boxów nadpisuje ten sam bajt.
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Własne moduły

Post by Bartek »

W opisie ramki 0x106 (pytanie o firmware) ostatnie dwa bajty są opisane jako BREV1 BREV2 z opisem bootloader version. Czy tutaj nie powinny być bajty firmware revision FREV1 i FREV2, zgodnie z tym co jest np. w univ_3-2-4-1-rev1.asm

Code: Select all

FIRMID      code    0x001010
    DB      0x30, 0x00, 0x03,ATYPE,AVERS,FVERS,FREV>>8,FREV
Jacek
Posts: 559
Joined: 17 Feb 2007, 18:00

Re: Własne moduły

Post by Jacek »

Ramka 0x1061 (odpowiedź na pytanie o firmware) jest wysyłana przez bootloader. Dwa ostatnie bajty to wersja bootloadera.
Ramka 0x1061 w kodzie bootloader-a: https://github.com/hapcan/UNIV_3_Bootlo ... 4.inc#L955
Untitled.png
W momencie kiedy powstała ta ramka nie było jeszcze zmiennych FREV1 i FREV2 -firmware revision (wersji uaktualnienia oprogramowania)
Kiedy powstały zostały zapisane w pamięci flash modułów pod adresem 0x001016 i 0x001017. Nie ma ramki pytającej o te zmienne - można je odczytać jedynie jako komórki pamięci po wejściu modułu w tryb programowania.
Regards
Jacek
Marcin
Posts: 200
Joined: 16 Sep 2011, 13:05

Re: Własne moduły

Post by Marcin »

PelzaK, mam pytanie - czy można zastoswać ten moduł Arduino w Twoim projekcie ?
https://botland.com.pl/arduino-moduly-g ... 16mhz.html

Można by wtedy zminiaturyzować moduł i zrobić go bardzie uniwersalnym poprzez zastosowanie motherboard i wsadzic do puszki podtynkowej 60.
Mam na myśli coś podobnego do tego:
Attachments
arduino.jpg
Pozdrawiam,
Marcin.
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Własne moduły

Post by Bartek »

Płytki Arduino są w pewnym zakresie kompatybilne ze sobą. Obecnie moje rozwiązanie testowałem tylko na Arduino UNO, ale w planach mam zakup tych małych płytek, tylko muszę się zorientować, które konkretnie, bo jest ich kilka (mini, mikro, nano). Myślę jednak, że powinno działać, byle by dało się podłączyć moduł MCP CAN.

Jedyny problem jaki widzę obecnie, to konieczność wgrywania firmware bezpośrednio przez kabel USB, więc tutaj z montażem pod tynkiem trzeba by mieć to na uwadze i jakoś port USB mieć na wierzchu :), no chyba, że przez moduł WIFI.
djsuszi
Posts: 57
Joined: 14 Sep 2015, 11:03

Re: Własne moduły

Post by djsuszi »

wg. mnie najlepiej iść już w ESP8266,
da się to spiąć z Arduino IDE, da się to ustawić do programowania modułu przez OTA (np.https://www.youtube.com/watch?v=JKgVXhHdtmE)
jest dość szybkie, sporo więcej pamięci ma i wciąż bardzo tanie.
chyba najpopularniejsza płytka to NodeMCU,
sporo mniejsze jest np. Wemos D1 (kosztem ilości wejść/wyjść)
sam CAN MCP2551 spina się z nim po SPI.

Tak np. wygląda ten moduł przy płytce OLED
https://www.youtube.com/watch?v=JKgVXhHdtmE

są też nowsze ESP8255, ESP32
Bartek
Posts: 326
Joined: 14 Jul 2011, 19:36
Location: Wrocław
Contact:

Re: Własne moduły

Post by Bartek »

A czy przy programowaniu OTA nie boisz się, że w końcu sąsiad dobierze się do Twojego sprzętu? ;)

Ja się wystrzegam rozwiązań opartych na sieciach bezprzewodowych, raz że rośnie szum w eterze, dwa, że wpadki z zabezpieczeniami takich urządzeń opartych o wifi zdarzają się nawet największym producentom, a co dopiero amatorom automatyki :). No i pamiętać trzeba o poborze prądu, który wynosi około 300mA, więc na magistrali Hapcana za dużo tych nodów nie powiesisz. Płytki wyglądają na fajne, ale też nie każde urządzenie potrzebuje 80/160MHz procka :).
Nie mówię kategorycznie nie, ale póki co skupiam się nad podstawową platformą Arduino. W dalszej perspektywie można będzie zająć się wszelkimi urządzeniami kompatybilnymi z Arduino. A tu jeszcze trzeba programator napisać ;).

Obecnie opracowuję klasy pomocnicze ułatwiające implementację wejść/wyjść, menadżera cyklicznie wykonywanych zadań oraz maszynę stanów ułatwiającą realizację bardziej złożonych zadań.
djsuszi
Posts: 57
Joined: 14 Sep 2015, 11:03

Re: Własne moduły

Post by djsuszi »

ogółem ryzyko jakieś zawsze jest, mieszkam na wsi więc i tak zminimalizowane,
niemniej zawsze możesz sobie dorobić mikroswitcha/kontaktron, którym to wifi będziesz aktywował, nie musi to być włączone 24/7.
Jak byś używał funkcji przycisku na nim to nawet długie przytrzymanie może włączać OTA.
Nawet nie musisz aktywować takiego pełnego programowania przez Wifi, a np. autoaktualizację softu/konfiguracji z określonego linku, coś jak:
http://iotappstory.com/
nawet podawać go przez MQTT.
http://internetofhomethings.com/homethings/?p=1486
czy nawet po szyfrowanym połączeniu
https://io.adafruit.com/blog/security/2 ... y-esp8266/
Jakby się uprzeć pewnie i ktoś oprogramowała jakąś funkcję sprawdzania podpisów kluczem.

Sky is the limit, kwestia wybrać co najmniej może utrudnić życie w przyszłości.
Już sam moduł ethernet/rs232 pozwala na przejęcie HapCana ;)
Post Reply