Ubiquiti
WiFi
Vlan
VLAN Network Settings Umožňuje nastavit na kterém rozhraní (Lan/Wlan) se bude tág nacházet. V případě vypnutí Vlanu v režimu WDS, nebo klient WDS budou procházet veškeré tágy beze změny. Při zapnutí se pak tág řídí dle nastaveného rozhraní:
VLAN Network: LAN
- Příchozí data z LAN rozhraní musí být označena tágem VLAN ID. Následně na WLAN rozhraní již data pokračují z odstraněným tágem. Jiná data z LAN rozhraní nejsou dále přenášena.
- K příchozím datům z WLAN rozhraní na LAN je přidán tág dle nastavení VLAN ID.
- Správu AP je možné provádět z VLAN na LAN rozhraní, nebo z WLAN rozhraní.
VLAN Network: WLAN
- K příchozím datům z LAN rozhraní směrujícím na WLAN je přidán tág dle nastavení VLAN ID.
- Na WLAN rozhraní jsou přijatá jen data z tágem dle nastavení VLAN ID. Následně do LAN rozhraní pokračují data bez tágu.
- Správu AP je možné provádět z LAN rozhraní nebo VLAN na WLAN rozhraní.
Šifrování
- AES - HW podpora
- TKIP - jen sw podpora
Upgrade přes TFTP
- Obnova továrního nastaven:
Držet tlačítko "reset" a zapnout napájení. Po cca 8 sekund uvolnit tlačítko reset.
- Zapnuti TFTP serveru
Držet tlačítko "reset" a zapnout napájení. Po cca 15 sekund uvolnit tlačítko reset.
- Návod na upgrade přes TFTP je na : stránkách Ubnt
(Firmware was upgrade successfully - Firmware byl úspěšně aktualizován; Unable to get responses from the server - Nelze získat odpovědi od serveru)
mFi
Užitečné informace : | wiki.ubnt.com
Konektor
Label | Function | Overview | Ports RJ | Port TB |
---|---|---|---|---|
I | Input | 0v-2v = off, > 4v-24v = on | RJ45 1&5 | TB 7 |
O | Output | 0, 5v, 12v or 24v | RJ45 2&8 | TB 8 |
P | Power | 0, 12v, 24v | RJ45 4 | TB 6 |
G | Ground | Common | RJ45 7 | TB 3 |
A+ | Analog+ | differential analog, positive | RJ45 3 | TB 5 |
A- | Analog- | differential analog, negative | RJ45 6 | TB 4 |
RTD | RTD | Resistance Temperature Detector | TB 1&2 |
RJ45 Pinout
Power (P) - Napájení
Celkový odběr všech připojených senzorů musý být pod 40 mA. Výstupní napětí může být 5V, 12V, 24V.
Analog (A+,A-)
Analog je rozdílový vstup, který může dosahovat -2.048v až +2.048v. Použití větší napětí, a to ani dočasně (například při snímací funkce plug) může trvale poškodit analogový vstup!
Chceme-li připojit jen jeden potenciál ze snímač, pak pin A- musí být uzemně. Potom vstupní napětí se může pohybovat mezi 0 a +2.048v.
Chcete-li měřit napětí vyšší než +2.048v, je nutné použít dělič napětí.
K měření proudové smyčky 0-20mA nebo 4-20 mA je možné použít odpor (přibližně 100 Ohms).
RTD
Je určen pro odporové snímání teploty typu PT100 , s alfa koeficientem 0.00385 ohms/ohm/°C. RTD rozhraní je 2-drát. Měření teploty se může pohybovat -50°C až +250°C.
Konfigurace
Vlastní typy zařízení jsou definovány umístěním definice v souboru s názvem custom.json, který se nachází v adresáři <mFi root>/dl.
Ubiquiti mFi/dl/custom.json
The file format is JSON, with each type of device being an entry in the JSON object, indexed by the name of the device type.
{ "sensor 1 name" : { .... }, "sensor 2 name" : { .... }, .... "sensor n name" : { .... } }
Po změně souboru custom.json, musí být server restartován.
Jakmile je definován nový typ zařízení, bude název zařízení k dispozici jako možnost v konfiguraci centrální jednotky, pull-down menu pro příslušné typy portů (RJ45 nebo svorkovnice).
Chyby v souboru vygeneruje chybovou zprávu v protokolu serveru. Příklad: ERROR SystemService - Nelze analyzovat vlastní data snímače svazků ".
Definováním vlastního zařízení se stejným názvem jako předdefinované zařízení přepíše předem definovanou definici za novou vlastní definici.
Chcete-li pomoci vystopovat chyby v souboru custom.json, zkuste spustit obsah přes JSON Lint validátoru: http://jsonlint.com/
Příkad
Digitální vstup
{ "Ubiquiti mFi-MSW" : { "desc" : "Ubiquiti Wall Mount Motion Sensor", "pwr_volt" : 12, "digital" : true, "input" : true, "do_volt0" : 24, "rep_input0" : 1, "input_tag0" : "motion", "inversion0" : true, "unit0" : "no motion/motion", "do_volt1" : 24, "rep_input1" : 0, "input_tag1" : "tamper", "inversion1" : true, "unit1" : "no tamper/tamper", "default_tag" : "motion", "rj45_v1" : true, "tblock_v1" : true }, }
- Název senzoru
- "desc" : Popis vlastního senzoru
- "digital" : Zapnutí digitálního vstupu ( true )
- "binary" : ( true )
- "pwr_volt" : Napětí pro napájení senzoru ( 5 / 12 / 24 )
- "rj45_v1" :
- "tblock_v1" :
- "conversion" : Přepočet naměřené hodnotz ( xyz/450 )
- "precision" : Počet desetinných míst
- "input" :
- "output" :
- "do_volt0" : Napětí na digitálním výstupu ( 5 / 12 / 24 )
- "rep_input0" : ( 1 / 0 )
- "req_counter0" : ( 1 / 0 )
- "req_counter_rate0" : ( 1 )
- "input_tag0" : "motion",
- "counter_tag0" :
- "counter_rate_tag0" :
- "defauly_tag" :
- "inversion0" : ( true / false )
- "unit0" : "no motion/motion",
- "do_volt1" :
- "rep_input1" : 0,
- "input_tag1" : "tamper",
- "inversion1" : true,
- "unit1" : "no tamper/tamper",
- "default_tag" : "motion",
Analogový vstup
{ "Ubiquiti mFi-CS" : { "desc" : "Ubiquiti Current Sensor (maximum input current 100 Amps. Root-Mean-Squared.)", "analog" : true, "rj45_v1" : true, "tblock_v1" : true, "rep_rms" : 1, "rep_rms_sum" : 0, "rms_tag" : "amps", "rms_sum_tag" : "ampHours", "default_tag" : "amps", "conversion" : "xyz*100", "unit" : "amps", "precision" : 4, "max" : 120 }, }
- Název senzoru
- "desc" : Popis vlastního senzoru
- "pwr_volt" : Napětí pro napájení senzoru
- "analog" : Zapnutí analogového vstupu
- "rj45_v1" : true,
- "tblock_v1" : true,
- "rep_rms" : 1,
- "rep_rms_sum" : 0,
- "rms_tag" : "amps",
- "rms_sum_tag" : "ampHours",
- "default_tag" : "amps",
- "conversion" : "xyz*100",
- "unit" : "amps",
- "precision" : 4,
- "max" : 120
Další příklady
Měření prudu indukční smičkou:
"Byram Lab BL-3-200-RV002 CT" : { "desc" : "Two Byram Labs BL-3-200 v002 Current Transformers, one on each phase, wired together in series.RMS" "analog" : true, "rj45_v1" : true, "tblock_v1" : true, "rep_rms" : 1, "rep_rms_sum" : 0, "rms_tag" : "amps", "rms_sum_tag" : "ampHours", "default_tag" : "amps", "conversion" : "xyz*50", "unit" : "amps", "precision" : 4, "max" : 200 }
Počítadlo ...
"Infrared Beam" : { "desc" : "Infrared Beam Detector", "digital" : true, "binary" : true, "rj45_v1" : true, "tblock_v1" : true, "pwr_volt" : 24, "do_volt0" : 24, "rep_input0" : 1, "input_tag0" : "beam", "rep_counter_rate0": 1, "rep_counter0": 1, "counter_rate_tag0": "people/sec", "counter_tag0": "people", "default_tag" : "beam", "unit0" : "unbroken/broken", "inversion0" : true, "rep_counter" : 0 }
Signalizace otevření
"<You custom sensor name here>" : { "desc" : "<You custom sensor description here>", "digital" : true, "rj45_v1" : true, "tblock_v1" : true, "do_volt0" : 24, "rep_input0" : 1, "input_tag0" : "<tag>", "default_tag" : "<tag>", "unit0" : "<closed unit>/<open unit>", "inversion0": true } "Water Leak Detector" : { "desc" : "Water leak detector", "digital" : true, "rj45_v1" : true, "tblock_v1" : true, "do_volt0" : 12, "rep_input0" : 1, "input_tag0" : "Leak Alarm", "default_tag" : "Leak Alarm", "unit0" : "ALARM/OK", "inversion0": false }
Prutokoměr
"Flow Sensor (Volume and Rate)": { "conversion": "xyz/450", "counter_rate_tag0": "rate", "counter_tag0": "volume", "default_tag": "volume", "desc": "AdaFruit Liquid Flow Meter", "digital": true, "do_volt0": 12, "pwr_volt" : 12, "inversion0": false, "precision": 4, "rep_counter0": 1, "rep_counter_rate0": 1, "rep_input0": 0, "rj45_v1": true, "tblock_v1": true, "unit0": "liters" } "Flow Sensor (Rate)": { "conversion": "xyz/450", "counter_rate_tag0": "rate", "default_tag": "rate", "desc": "AdaFruit Liquid Flow Meter", "digital": true, "do_volt0": 12, "pwr_volt" : 12, "inversion0": false, "precision": 4, "rep_counter_rate0": 1, "rj45_v1": true, "tblock_v1": true, "unit0": "liters/sec" } "Flow Sensor (Volume)": { "conversion": "xyz/450", "counter_tag0": "volume", "default_tag": "volume", "desc": "AdaFruit Liquid Flow Meter", "digital": true, "do_volt0": 12, "pwr_volt" : 12, "inversion0": false, "precision": 4, "rep_counter0": 1, "rj45_v1": true, "tblock_v1": true, "unit0": "liters" }
mFi Server
Rules
V této záložce se dají nastavit činnosti, které se mají za určitých okolností stát.
Aktivace - podmínky
Podmětem pro akci může být:
- Senzor - některý ze vstupů z mPortu, nebo mPower
- Schedule - plánovač, časový rozvrh který se dá nastavit v rámci celých čtvrt hodin pro každý den v týdnu
- Condition Set - Souhrn dříve vytvořených pravidel, Senzor, Schedule a Condition Set.
V závislosti na typu senzoru se následně specifikují parametry:
- Pohybový senzor
- motion - při aktivaci
- no motion - v klidu
- Act Immediately - Pokud platí déle než x minut
- Proudový, napěťový, teplotní, ...
- is above - je větší jak xx
- is below - je menší jak xx
- Act Immediately - Pokud platí déle než x minut
- mPower, zásuvka obsahuje několik senzorů (jednotlivé senzory se nastavují obdobně jak výše popsané):
- power (watts) - aktuální odběr
- output (on / off)- zapnutí, vypnutí
- power factor (pf)-
- total energy (W-hours) - spotřebovaná energie
- volttage (volts) - napětí
- current (amps) - proud
V rámci jedné akce je možné nadefinovat více podnětů a následně definovat, zda pro spuštění akce musí být splněny všechny podměty, nebo jen některé:
- Any Condition - alespoň jedena splněná podmínka
- All Conditions - všechny splněné podmínky
Poslední upřesnění pro spuštění akce je podmínka, zda se má aktivovat při splnění podnětů, nebo až po jejich ukončení.
- Edge Trigger - náběžní hrana, aktivuje se ihned po splnění podmínek
- Level Trigger - sestupná hrana, aktivuje se až po skončení dříve splněných podmínek
Činnost - akce
Vlastní možné akce jsou:
- Output - ovládání konkrétního spotřebič
- On / Off - zapne nebo vypne daný port
- stays on for - změna stavu trvá jen x sekund/minut/hodin
- Notification - provede oznámení o nastalém stavu
- Send Email - email adresa na kterou se pošle oznámení
- Hold additional email alerts ... - nezasílat další upozornění po dobu x minut
- Generate Event - Vytvořit záznam do událostí - záložka Events
- Don't create an event ... - nevytvářet nový záznam po x minut
- Create system Alert - Vytvořit systémové upozornění
- URL Post - odešle url dotaz na zadanou adresu
Scenes
Scény - tato záložka umožňuje přednastavit stav jednotlivých portu (zásuvek) na základě jednoho povelu.
Nastavuje se které zásuvky a stav který má každá mýt (zapnuto / vypnuto). V případě zapnutí, jak dlouho má tento stav trvat.
airControl2
Aplikace která sleduje provoz Ubnt rádií a následně je zobrazí. Tato verze oproti předchozí má nejen serverovou část a i klientskou. Proto bohužel již není možné sledovat provoz přes web prohlížeč. Aktuální verze pro jednotlivé platformy je ke stažení na stránkách http://Ubnt.com. Při instalaci doporučuji ověřit aktuální verzi a podle toho upravit odkaz pro stažení.
Instalace
Bohužel k dnešnímu dni (17.4.2017) není k dispozici Debian balíček a je nutné provést instalaci ručně. Naštěstí instalace pro Debian je zhodná z Ubunty. Následující seznam příkazů je určena pro uživatele root a 64bit verzi Linuxu. V případě 32bit verze stačí změnit soubor pro stažení.
apt-get install default-jdk iperf wget http://www.ubnt.com/downloads/aircontrol2/aircontrol-v2.0.1.2325.170130.0936-unix64.bin chmod u+x aircontrol-v2.0.1.2325.170130.0936-unix64.bin ./aircontrol-v2.0.1.2325.170130.0936-unix64.bin
Po spuštění vlastního instalátoru (aircontrol-v2...) budeme vyzváni k zadání jména uživatele pro správu a heslo které MUSÍ obsahovat jak velká a malá písmena, tak číslo a speciální znak ! Bohužel jinak se uživatel nevytvoří a instalace se nezdaří. Následně kromě provozních nastavení jsme ještě vyzváni k zadání hesla superuser pro databázi PostgreSQL a účet pro vlastní databázi airControleru (ac2). Pro ověření že server funguje můžeme zadat odkaz http://<ipaddress>:9081/diag který nám zobrazí kontrolní informace serveru.
Změna Country
Na stránce "Wireless" dáme prozkoumat prvek Country kode. Pod ním se nachází řádek kde přepíšeme style "display: none;" na "display: inline-block;" :
<input type="button" class="initial_hide" id="change_ccode" value="Change..." onclick="change_country($('#country'));" style="display: none;"> <input type="button" class="initial_hide" id="change_ccode" value="Change..." onclick="change_country($('#country'));" style="display: inline-block;">
Poté můžeme přenastavit Country dle potřeby.
UISP
Nová verze nahrazující původní AirControl. Postup instalace v době psaní tohoto příspěvku je popsán na https://help.ui.com/hc/en-us/articles/115012196527-UISP-First-Time-Setup-Installation.
Neboť již podporují přímo deb balíček, v podstatě stačí připravit Debian a nan něj UISP nainstalovat
UniFi
Instalace
Instalace vlastního SW je pomerně náročmá kvůli závislostem. Je mnohem jednodusi použít skript, který instalaci provede ze vším potřebném. Doporučuji návod:
Teoreticky by mělo stačit pustit:
rm unifi-latest.sh &> /dev/null; wget https://get.glennr.nl/unifi/install/install_latest/unifi-latest.sh && bash unifi-latest.sh
Registrace AP
DHCP opt 43
Pro nastavení DHCP Option 43 na mikrotiku potřebujeme prvně převést IP adresu UNIFI Controleru převést na hexa. Příklad:
- IP 192.168.200.10: 192 = C0; 168 = A8; 200 = C8; 10 = 0A; => C0A8C80A
- IP 10.129.66.107 : 10 = 0A; 129 = 81; 66 = 42; 107 = 6B; => 0A81426B
- IP 10.10.24.73 : 10 = 0A; 10 = 0A; 24 = 18; 73 = 49; => 0A0A1849
Před tuto IP adresu controleru v HEX formátu přidáme "0x0104". Tudíž výsledná hodnota bude: "0x0104" + the HEX of the IP.
Na Mikrotiku pak nastavíme (hodnotu změníme dle naší potřeby):
/ip dhcp-server option add code=43 name=unifi value=0x0104C0A8C80A /ip dhcp-server network set 0 dhcp-option=unifi
SSH
Z DHCP serveru podle MAC adresy zjistíme přiřazenou IP adresu. Na tu se můžeme přihlásit pomoci ssh.
ssh ubnt@ip_adresa_ap pasword: ubnt (default]
Poté můžeme využít pár příkazu:
- syswrapper.sh restore-default - obnoví výchozí nastavení, odpoji ssh spojení
- set-inform http://10.10.24.73:8080/inform - nastaví IP adresu 10.10.24.73 pro přihlašení ke UNIFI Controleru
Options DHCP
Ubiqiti pro nastaveni IP adresy vyžaduje ve formátu "0x0104" + IP adresa v HEX formátu.
- Kalkulátor IP na HEX najdeme na https://wifiwizardofoz.com/dhcp-option-43-calculator/
- Komplet kalkulátor, který přidá i prefix je na https://wifiwizardofoz.com/dhcp-option-43-calculator/