LoRa APRS igate

Průvodce – LoRa APRS iGate

Tuto konstrukci vytvořil OE5BPA a navrhl samotný lora modem, Rozhodl jsem se použít právě tuto konstrukci hned z několika důvodů. A to hlavně z toho hlediska že jde napájet pomocí POE což hodně usnadní instalaci a provoz. Není potřeba tahat napájecí kabel a řešit připojeni přes wifi. Konstrukce je jednoduchá protože vše obstará modul LilyGO TTGO T-internet který obsahuje ESP32 a ten poskytne dostatečný výkon. Takže pokud hledáte kompaktní konstrukci pro svoji novou lora iGate tak zvažte požití této konstrukce.

Potřebný hardware:

  • LilyGO TTGO T-internet PoE ESP32 – LAN8720A
  • Programátor, debugger pro LILYGO TTGO T-Internet-POE, CH340
  • LoRa modem (SMD)
  • Box na naše zařízeni: Zde ke stažení

LILYGO TTGO T-Internet-POE ESP32-WROOM LAN8720A

Vývojová deska založená na modulu ESP32-WROOM, která obsahuje LAN kontrolér LAN8720A s možností napájení POE osazené čipem SI3404, konektor pro SD kartu a I/O konektor.

Deska je vhodná pro vývoj aplikací komunikujících přes LAN, WiFi nebo Bluetooth napájených pomocí POE. Desku lze napájet i pomocí USB-C konektoru integrovaným na desce. Tento konektor však slouží pouze pro napájení. Pro programování a debug je zapotřebí programátor.

Chipset ESPRESSIF-ESP32-WROOM, LAN8720A Ethernet chip, SI3404 Power management chip
FLASH 4MB
SRAM 520 kB SRAM
Button BOT, Reset
External Device TF Card Slot,Type-C Interface,PA2369NL 1825-S Transformer,HR861153C Ethernet-POE interface
USB to TTL CP2104
Modular interface SD card, UART, SPI, I2C, PWM, I2S, ADC
On-board clock 32.768MHz crystal oscillator
Working temperature range -40℃ ~ +85℃
Weight 26.85g
Size 70×52.3x17mm
  Power Supply Specifications
Power Supply Input Type-C USB 5V
PoE 48V – HR861153C Ethernet-POE interface 50V
Working voltage 2.7V-3.6V
Maximum output current About 1.2A
Charging current 500mA
USB Type-C USB
Wi-Fi
Standard FCC/CE-RED/IC/TELEC/KCC/SRRC/NCC(esp32 chip)
Protocol 802.11 b/g/n(802.11n,speed up to150Mbps)A-MPDU and A-MSDU polymerization,support 0.4μS Protection interval
Frequency range 2.4GHz~2.5GHz(2400M~2483.5M)
Transmit Power 22dBm
Communication distance 300m
Bluetooth
Protocol Meet bluetooth v4.2BR/EDR and BLE standard
Radio frequency With -97dBm sensitivity NZIF receiver Class-1, Class-2&Class-3 emitter AFH
Audio frequency CVSD&SBC audio frequency
Software specification
Wi-Fi Mode Station/SoftAP/SoftAP+Station/P2P
Security mechanism WPA/WPA2/WPA2-Enterprise/WPS
Encryption Type AES/RSA/ECC/SHA
Firmware upgrade UART download/OTA(Through network/host to download and write firmware)
Software Development Support cloud server development /SDK for user firmware development
Networking protocol IPv4, IPv6, SSL, TCP/UDP/HTTP/FTP/MQTT
User Configuration AT + Instruction set, cloud server, android/iOSapp
OS FreeRTOS

Programátor, debugger pro LILYGO TTGO T-Internet-POE, CH340

Programátor a debugger pro vývojovou desku

LoRa modem (SMD)

Samotnou desku si můžete vyrobit nebo mi napsat mail ok2hss(-@-)protonmail.com a ja vám ji za 100kč pošlu. Pár jich ještě mám a v případě většího zájmu bych je přiobědnal. Odkaz na data desku plošného spoje naleznete zde.

Potřebné součástky:

  • 1x Ai-Thinker RA-02 SX1278 433MHz LoRa modul
  • 1x Patice 2×8 pin
  • 2x micro switch
  • 1x 0.96″ 128×64 OLED displej, I2C DRIVER: SSD1306

Dokumentace hardware:

t-eth-poe
esp32-wroom-32_datasheet_en
LORA rev2

Nastavení a kompilace software:

Chcete-li získat zdrojový kód, musíte jít na github.com a stáhnout si tam úložiště. To lze snadno provést pomocí tlačítka se zeleným kódem a „Download Zip“. Uživatelé, kteří znají git, mohou samozřejmě také klonovat úložiště.

kód github

PlatformIO lze stáhnout přímo z webu PlatformIO . Jediné, co musíte udělat, je stisknout zelené tlačítko s „Install PlatformIO now“. Poté stačí nainstalovat.

Pokud jste již nainstalovali Visual Studio Code, PlatformIO Module lze nainstalovat také přes Plugin Manager.

Nyní lze zdrojový kód otevřít v kódu Visual Studio.

Nastavení

Nejprve je třeba v souboru provést několik úprav data/is-code.json:

nastavení iGate

  1. volací znak se musí změnit (řádek 3)
  2. Zeměpisná šířka a délka musí být vždy vyplněny. Pokud neznáte své souřadnice, stačí otevřít Mapy Google, kliknout pravým tlačítkem na požadované místo a říct „co je tam?“ klikněte
  3. Pokud chcete používat iGate, musíte změnit tato nastavení:
    1. vstupní a musí activebýt nastaveny od dowifiaprs_isfalsetrue
    2. Je nutné zadat SSID a heslo WiFi připojení
  4. Pro příjem Digi je třeba změnit tato nastavení:
    1. vstup musí být nastaven activeod dodigifalsetrue

Nedoporučuje se provozovat iGate a Digi současně. V pozdější verzi se to zkontroluje a poběží pouze nastavení iGate (režim Digi bude pravděpodobně aktivní, pokud se nepodaří navázat WiFi připojení – uvidíme).

Nyní musíte vybrat správnou desku, protože každá deska je trochu jinak zapojena (jinak se používají GPIO) nebo má další komponenty.

DefaultTo lze změnit ve stavovém řádku, kde je aktuálně uvedeno.

vybrat desku

Kompilace a flash

Nyní jsou všechny přípravy hotové a můžeme zkompilovat zdrojový kód a flashnout jej na desku. To provedeme stisknutím šipky, která ukazuje vpravo ve stavovém řádku (2). POZOR: Po flashnutí firmwaru je nutné provést flashnutí i konfigurace, to jsou dva samostatné kroky!

stavový řádek

Ve stavovém řádku lze rychle provést následující věci:

  1. Kompilace firmwaru
  2. Flashování firmwaru
  3. Vyčištění dočasných a zkompilovaných dat
  4. Sériový monitor

Flash konfigurace

Konfigurace ( data/is-code.json) musí být flashována přes speciální souborový systém. Chcete-li to provést, proveďte následující kroky:

  1. Klikněte na mimozemšťana vlevo
  2. poté vyberte příslušnou desku
  3. v podnabídce je nyní Platformrozšířeno
  4. klikněte tamUpload Filesystem Image

upload_filesystem

POZOR: Někdy se může stát, že nahrávání selže, pak to prostě zkoušejte, dokud to nebude fungovat.

data/is-code.jsonVšechna nastavení musí být uložena v konfiguračním souboru . Je součástí dodávky, ale obsahuje pouze zástupné symboly.

nastavení iGate


Poznámky k formátu JSON

Nahradíme určená místa, ale ponecháme všechny uvozovky. (Více o formátu: viz níže)

Význam proměnných

„volací znak“

Příklad:"OK2HSS-10"

Radioamatérský volací znak operátora by neměl přepisovat 6 číslic. Následuje ID stanice. Číslo nemusí být zadáno, ale lze použít hodnoty mezi 1 a 36.

„wifi“:

„active“:

false: WiFi na desce je vypnuté

true: Wifi je zapnutá. Musí následovat přihlašovací údaje k přístupovému bodu.

„AP“:

SSID: Uveďte identifikátor/název WiFi sítě do uvozovek, např.: „TELECOM-1234“

password: Zadejte heslo platné pro tuto síť

Příklad přístupového bodu:

"AP": [
	{ "SSID":"HomeNetz", "password":"Geheim" }
]

Příklad pro dva přístupové body:

"AP": [
	{ "SSID":"HomeNetz", "password":"Geheim" },
	{ "SSID":"Freenetz", "password":"" }
]

„maják“

To znamená, že maják vysílá z desky Lora, aby řekl serverům APRS: ukaž mi to na mapě. Text a pozice, které lze odeslat, jsou zde centrálně uloženy a později použity s „aprs_is“ nebo v režimu „digi“.

„beacon“:

Bakentext: Emise přes HF. Zde je vše, co by se mělo objevit na mapě jako popisný text. Beacon musí být slyšen bránou Lora a předán do Internetu na server APRS. LoRaDoporučení: Nechte slovo . Na webu aprsdirect.commůžete vyhledávat texty majáků CMT:*LoRa*a filtrovat je podle stanice tímto způsobem.

„position“:

latitude: Zeměpisná délka místa v desetinném formátu, např. 48,12345 (použijte desetinnou čárku!)

longtitude: Zeměpisná šířka místa v desetinném formátu, např. 7,67890 (použijte desetinnou čárku!)

Poznámka: Souřadnice lze číst přímo na Google Maps

„aprs_is“

Zde se shromažďují data potřebná pro internetové připojení k internetovému serveru APRS. Pokud je zapnuto „aktivní“, musí být aktivní i „wifi“.

„active“:

false: není navázáno žádné spojení se serverem APRS

true: Prostřednictvím aktivní WiFi je navázáno spojení s následujícími daty

„password“:

Pro vytvoření písemného připojení k serveru APRS je vyžadováno heslo. Heslo se vypočítá z volacího znaku uvedeného pod „volací znak“ (bez připojeného čísla) a skládá se z 5 číslic.

„server“:

Název nebo IP adresa internetového serveru. Obvykle se za adresami jako „euro…“ nebo „dl..“ skrývá mnoho počítačů, které náhodou převezmou připojení. Pro krátké přenosové časy by měl být použit název místního serveru, např"euro.aprs2.net"

„port“:

Internetový server může být adresován na různých portech. Pokud vám to nic neříká, použijte vždy standardní port14580

„beacon“:

false: na server APRS není odeslán žádný maják

true: je odeslán maják. Interval je uveden v minutách. Text je "beacon":"message"převzat ze sekce. Maják se nerozesílá přes HF, ale pouze na internetu

„beacon_timeout“:

Číslo v minutách. Doporučení: Použijte hodnoty mezi >= 15 a <=30 minutami

„digi“

Pokud díl běží jako digipeater (digitální relé. Přijímá a odesílá bez přístupu k internetu), jsou důležité následující informace.

„active“:

false: Režim „Digi“ je zakázán.

true: Je aktivován režim „Digi“. NIKDY (!) "aprs_is":"active"nenavlékejte současně true. V současné době je to stále nedefinovaný stav.

„forward_timeout“:

Číslo v sekundách. Zaslechnutý paket bude znovu vyslán po 5 sekundách (pokud se nejedná o duplikát). Tato hodnota byla stanovena experimentálně.

„beacon“:

Je specifikováno, zda má být signál vyslán přes HF. Text je "beacon":"message"převzat ze sekce.

„beacon_timeout“:

Číslo v minutách. Doporučení: Použijte hodnoty mezi >= 15 a <=30 minutami. Při provozu na baterie počítejte s tím, že každé vyzařování je kolem 200 mA po dobu cca 4 sekund (s čipem Lora s 20 dBm/100 mW). Interval pak používejte méně často (nastavte jej vyšší).

„lora“

Zde uvedené hodnoty se používají k inicializaci zařízení LoRa. Změna hodnot spreading_factor, signal_bandwidth a coding_rate4 vede k nekompatibilitě s jinými přenosy/přijímači. Tyto hodnoty byly zkoumány jako optimální pro Lora-Aprs a měly by být vždy zachovány.

„frequency_rx“:
„frequency_tx“:

Zde uložená frekvence 433775000je koordinována s IARU a stejně jako 2m frekvence pro APRS 144.800 by se neměla měnit.

„power“:

Hodnota musí být uvedena v dBm. Výchozí hodnota 20je maximální výkon čipu 20 dBm (100 mW). Pro účely testování zde lze výkon snížit.

„spreading_factor“: 12,
„signal_bandwidth“: 125000,
„coding_rate4“: 5

Tyto hodnoty jsou nezbytné pro inicializaci čipu Lora. Změny vedou k nekompatibilitě s jinými zařízeními.

„Display“

Tyto hodnoty jsou nastaveny tak, aby bylo možné vypnout displej (spotřeba energie nebo aby nedošlo k vypálení).

„always_on“:

false: Displej přejde do režimu spánku.

true: Displej je ve výchozím nastavení trvale aktivní.

„timeout“:

Číslo v sekundách. Pokud je nastaveno, displej se always_on:falsepo uplynutí této doby vypne. Probudí se pouze po stisknutí tlačítka, pokud je na desce přítomno, nebo při provedení akce pomocí kolíku.

overwrite_pin”:

Číslo jako číslo portu. 0= není definována žádná akce. V opačném případě musí být uloženo číslo PIN desky. Další význam by měl být požádán od vývojáře.

„ftp“

Pokud je toto wifiaktivováno a existuje připojení k domácí síti, můžete pomocí programu FTP (program pro přenos souborů) navázat spojení s adresářem s konfiguračním souborem na desce. Konfigurační soubor lze poté stáhnout z počítače, upravit a znovu nahrát. Nový konfigurační soubor se však načte až při příštím resetu desky.

„active“:

false: FTP je vypnuto. Deska neposlouchá požadavky, i když je k dispozici WiFi připojení

true: FTP přístup je aktivní na desce a poslouchá požadavky (nešifrovaný FTP)

„user“

Pro řízení přístupu k příchozím požadavkům budete požádáni o uživatelské jméno a heslo

name: Co je zde uloženo, musí být specifikováno později pod „uživatelem“. password: Uživatel pak musí použít toto heslo

Příklad přístupového bodu:

"user": [
	{ "name":"ftpuser", "password":"Geheim" }
]

Poznámka pod čarou:

Poznámky k formátu JSON

  • Formát je dobře čitelný.
  • Proměnné jsou uzavřeny v uvozovkách, za nimi následuje dvojtečka a obsah.
    • Hned následuje číslo,
    • text je také uzavřen v uvozovkách.
    • Hodnoty True/False používají vyhrazená slova false a true.
    • Z výše uvedeného příkladu: "wifi"Věci jsou jiné s proměnnou. Následuje blok ve složených závorkách. Skládá se – na pohled odsazený – opět z proměnných. Za každým řádkem následuje ‚”,”‘, pokud na úrovni následují další proměnné. Poslední řádek již nemá čárku. Pokud za proměnnou následuje něco v hranatých závorkách, znamená to, že několik hodnot může následovat jako seznam. Proměnné tedy "AP":mohou následovat vícekrát se stejným názvem, ale různým obsahem. SSID a heslo řádku { }může následovat vícekrát. To znamená, že lze zadat více než jeden přístupový bod (AP).

 

https://hackaday.io/project/179601/instructions