Discovery w OM#
Discovery to proces, w którym Grenton Object Manager (OM) wykrywa vCLU w sieci lokalnej – tak samo jak wykrywa fizyczne kontrolery Grenton CLU.
Jak działa discovery#
sequenceDiagram
participant OM as Object Manager
participant NET as Sieć LAN (broadcast)
participant VCLU as vCLU
OM->>NET: UDP broadcast na port 1234<br/>(szukam CLU w sieci)
NET->>VCLU: pakiet discovery
VCLU->>OM: odpowiedź: IP, MAC, serial, typ
OM->>OM: wyświetla vCLU na liście urządzeń
OM->>VCLU: żądanie parowania + PIN
VCLU->>OM: potwierdzenie (klucze AES-128)
OM->>VCLU: TFTP: odczyt config.txt
VCLU->>OM: config.txt (lista modułów TFBus)
OM->>OM: generuje om.lua i user.lua
OM->>VCLU: TFTP: wysyłka om.lua + user.lua
VCLU->>VCLU: ładuje om.lua → obiekty dostępne w runtimeWymagania#
Aby discovery działał poprawnie:
| Wymaganie | Opis |
|---|---|
| Sieć | vCLU i komputer z OM muszą być w tej samej domenie broadcastowej (ten sam VLAN/podsieć) |
| Port UDP 1234 | Musi być otwarty na firewallu – vCLU nasłuchuje na tym porcie |
| Unikalne dane | Każdy vCLU musi mieć unikalny IP, adres MAC i numer seryjny |
| CAP_NET_BROADCAST | Na Linuksie proces vCLU musi mieć uprawnienia do wysyłania pakietów broadcast (systemd nadaje je automatycznie) |
Jeśli vCLU działa w Dockerze, kontener musi używać
--network host. Tryb bridge nie przepuszcza pakietów broadcast UDP.
Parowanie krok po kroku#
1. Uruchom Object Manager#
Otwórz Grenton Object Manager na komputerze w tej samej sieci co vCLU.
2. Discovery#
W menu OM wybierz Window > Discovery (lub użyj skrótu klawiszowego). OM wyśle broadcast UDP i wyświetli listę wykrytych urządzeń.
vCLU pojawi się na liście z:
- Numerem seryjnym (np.
2210xxxxxdla CLU,5200xxxxxdla Gate) - Adresem IP
- Typem urządzenia
3. Parowanie#
Kliknij na vCLU i wybierz Connect. OM poprosi o PIN – wpisz 8-znakowy PIN skonfigurowany w kroku 3 wizarda.
Po poprawnym PIN-ie OM nawiązuje szyfrowane połączenie (AES-128) i odczytuje konfigurację vCLU.
4. Odczyt konfiguracji#
OM odczytuje config.txt przez TFTP. Plik zawiera listę modułów TFBus skonfigurowanych w wizardzie (DOUT8T, RELAY4, DIN8). Na tej podstawie OM widzi, jakie moduły i obiekty I/O ma vCLU.
5. Generowanie kodu Lua#
OM generuje dwa pliki:
om.lua– definicje obiektów (moduły, wejścia, wyjścia, stałe)user.lua– plik użytkownika z pustą funkcjąinit()
Pliki są wysyłane do vCLU przez TFTP. Po załadowaniu om.lua obiekty są dostępne w runtime Lua.
6. Programowanie#
Od tego momentu vCLU zachowuje się jak fizyczny CLU. Możesz:
- Przypisywać zdarzenia do obiektów
- Tworzyć sceny i skrypty
- Wysyłać konfigurację z OM do vCLU
Tryb Standalone#
W trybie Standalone discovery Grenton nie jest używany. Urządzenia integruje się bezpośrednio przez:
- MQTT – Zigbee2MQTT, Tasmota, Shelly
- HomeKit – natywna integracja Apple
- MCP – sterowanie przez AI (Claude, ChatGPT)
Konfiguracja odbywa się w pliku user.lua bez potrzeby Object Manager.
Rozwiązywanie problemów#
vCLU nie pojawia się w discovery#
- Sprawdź, czy vCLU działa:
sudo systemctl status vclu - Sprawdź, czy port 1234 jest otwarty:
ss -ulnp | grep 1234 - Upewnij się, że OM i vCLU są w tej samej podsieci
- Sprawdź logi:
sudo journalctl -u vclu -f– przy discovery pojawi się wpis o odebranym pakiecie - Jeśli Docker – upewnij się, że kontener ma
--network host
Błąd PIN#
- PIN jest 8-znakowy, wpisywany bez myślników
- Sprawdź PIN w pliku konfiguracyjnym: pole
pinw sekcjikeysw.vclu.json - Aby zresetować PIN, uruchom wizard ponownie (patrz Pierwsze uruchomienie)
OM nie widzi modułów#
- Upewnij się, że moduły zostały dodane w kroku 2 wizarda
- Sprawdź, czy
config.txtistnieje w katalogu danych vCLU - Wykonaj ponowne discovery w OM
Następne kroki#
- Struktura katalogów – gdzie znajdują się pliki konfiguracyjne
- DOUT – praca z wyjściami cyfrowymi
- DIN – praca z wejściami cyfrowymi