Ra02: Unterschied zwischen den Versionen

Aus DXL-Wiki
Zur Navigation springen Zur Suche springen
Zeile 71: Zeile 71:
! Parameter!! Beschreibung
! Parameter!! Beschreibung
|-
|-
| A|| Sende AFSK 1200 Baud
| A|| Sende AFSK 1200 Baud.
|-
|-
| a|| AGC ein
| a|| AGC ein.
|-
|-
| B|| Bandbreite beim Senden in kHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (Standard = 7 -> 125 KHz).
| B|| Bandbreite beim Senden in kHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (Standard = 7 -> 125 KHz).
Zeile 79: Zeile 79:
| b <n>|| Bandbreite beim Empfangen in KHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (Standard = 7 -> 125 KHz).
| b <n>|| Bandbreite beim Empfangen in KHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (Standard = 7 -> 125 KHz).
|-
|-
| C <cr>|| Coding Rate beim Senden 5..8 (Standard = 5)
| C <cr>|| Coding Rate beim Senden 5..8 (Standard = 5).
|-
|-
| c <cr>|| Coding Rate beiM Empfangen 5..8 (Standard = 5)
| c <cr>|| Coding Rate beiM Empfangen 5..8 (Standard = 5).
|-
|-
| D <Hz>|| (A)FSK Deviation in +/- Hz (Standard = 3000)
| D <Hz>|| (A)FSK Deviation in +/- Hz (Standard = 3000).
|-
|-
| d|| Sende nicht während aktiver DCD (Beim Senden bezogen auf Bandbreite/Spreadfaktor). Zeitbasis ist die Daier der Erknnung, einige Millisekunden, siehe Manual zum Chip.
| d|| Sende nicht während aktiver DCD (Beim Senden bezogen auf Bandbreite/Spreadfaktor). Zeitbasis ist die Daier der Erknnung, einige Millisekunden, siehe Manual zum Chip.
|-
|-
| F <mhz>|| Sendefrequenz in MHz (Standard = 433.775)
| E|| Sende unmodifizierten UDP Frame in FSK bis zu 1500 Byte Länge, z.B. für POCSAG.
|-
|-
| f <mhz>|| Empfangsfrequenz in MHz (Standard = 433.775)
| F <mhz>|| Sendefrequenz in MHz (Standard = 433.775).
|-
| f <mhz>|| Empfangsfrequenz in MHz (Standard = 433.775).
|-
|-
| G [-]<baud>|| Sende GFSK in <baud>. -baud bedeutet das Gleiche, jedoch deaktiviert den G3RUH scrambler. Gültige Werte 490 ... 250000.
| G [-]<baud>|| Sende GFSK in <baud>. -baud bedeutet das Gleiche, jedoch deaktiviert den G3RUH scrambler. Gültige Werte 490 ... 250000.
|-
|-
| g <n>|| Empfangsverstärkung 6..1. 1 ist die Maximalverstärkung. Siehe auch Chip-Manual (Standard = 1)
| g <n>|| Empfangsverstärkung 6..1. 1 ist die Maximalverstärkung. Siehe auch Chip-Manual (Standard = 1).
|-
|-
| H <n>|| Länge der Preample (Standard = 8). SX Chips benötigen vermutlich mindestens den Wert 4.
| H <n>|| Länge der Preample (Standard = 8). SX Chips benötigen vermutlich mindestens den Wert 4.
Zeile 99: Zeile 101:
| h|| Hilfetext
| h|| Hilfetext
|-
|-
| I|| tx implicit header on (Hat wer die genaue Erklärung? Bitte Info!)
| I|| tx implicit header on (Hat wer die genaue Erklärung? Bitte Info!).
|-
|-
| I|| Aktiviere Überspannungsschutz. Bitte mit Vorsicht benutzen und unbedingt das Chip Manual prüfen)
| I|| Aktiviere Überspannungsschutz. Bitte mit Vorsicht benutzen und unbedingt das Chip Manual prüfen).
|-
|-
| i|| rx implicit header on (Hat wer die genaue Erklärung? Bitte Info!)
| i|| rx implicit header on (Hat wer die genaue Erklärung? Bitte Info!)
Zeile 107: Zeile 109:
| L ip:sendport:listenport|| Datenstrom in AXUDP v2. Diesen Parameter unbedingt vor allen anderen Parametern für diesen Kanal angeben. Kann für mehrere Sende-Datenströme mit abweichenden Ports wiederholt werden.
| L ip:sendport:listenport|| Datenstrom in AXUDP v2. Diesen Parameter unbedingt vor allen anderen Parametern für diesen Kanal angeben. Kann für mehrere Sende-Datenströme mit abweichenden Ports wiederholt werden.
|-
|-
| l <n>|| Vorverstärker 0..3. Bessere IP3 durch mehr Versorgungsspannung (Standard = 3)
| l <n>|| Vorverstärker 0..3. Bessere IP3 durch mehr Versorgungsspannung (Standard = 3).
|-
| n <netid>|| Netzwerk-ID (sync word). Bitte nicht 34=lorawan verwenden. (Standard = 12).
|-
| O <offon>|| Optimierung bei geringer Datenrate (Sendezweig). 0 = Aus, 1 = An, ansonsten -1 für Automatik.
|-
| o <offon>|| Optimierung bei geringer Datenrate (Empfangszweig). 0 = Aus, 1 = An, ansonsten -1 für Automatik.
|-
|-
| n <netid>|| Netzwerk-ID (sync word). Bitte nicht 34=lorawan verwenden. (Standard = 12)
| P <ppm>|| Korrektur des TCXO in ppm +-128 (Standard = 0.0).
|-
|-
| O <n>|| set overcurrent protection, use with care, see chip manual
| p <nss> <mosi> <miso> <sck>|| GPIO Nummern der NSS, MOSI, MISO und SCK Verbindung (Standard = 8 10 9 11).
|-
|-
| o <offon>|| low datarate optimize -1=auto 0=off 1=on else automatic (-1)
| S <sf>|| LoRa Spreadfactor (Spreizfaktor) im Sendezweig 6..12 (Standard = 12).
|-
|-
| P <ppm>|| Korrektur des TCXO in ppm +-128 (Standard = 0.0)
| s <sf>|| LoRa Spreadfactor (Spreizfaktor) im Empfangszweig 6..12 (Standard = 12).
|-
|-
| p <nss> <mosi> <miso> <sck>|| GPIO Nummern der NSS, MOSI, MISO und SCK Verbindung (Standard = 8 10 9 11)
| R <n>|| PaRamp how fast tx goes to power, see chip manual (9) (Hat wer die genaue Erklärung? Bitte Info!).
|-
|-
| s <sf>|| LoRa Spreadfactor (Spreizfaktor)  6..12 (Standard = 12)
| r <n>|| Zum RSSI Wert hinzufügen um interne oder externe Vorverstärker auszugleichen (Standard = 0).
|-
|-
| R <n>|| PaRamp how fast tx goes to power, see chip manual (9)
| T <n>|| (A)FSK TX-Delay in byte (Standard = 4). Wird nicht für den RAW-Modus -E benötigt.
|-
|-
| r <n>|| add to rssi value to compensate internal and external preamps (0)
| u <µs> <µs>|| Ruhezeit zwischen dem Pollen vom Chip RX/(A)FSK TX. Je Höher der Wert, umso höher die CPU Last (Standard = 500000 200000)
|-
|-
| U ip:sendport:receiveport|| AXUDP Daten ohne Metadaten wie TXD, AFC usw. (siehe auch -L)
| U ip:sendport:receiveport|| AXUDP Daten ohne Metadaten wie TXD, AFC usw. (siehe auch -L)

Version vom 29. August 2022, 17:54 Uhr

Über ra02

ra02 ist ein Tool zum Ansteuern von LoRa Chips wie dem Semtech SX1278 für die Nutzung als LoRa APRS Gateway (RX und TX). Es sendet und empfängt Pakete in AXUDP und kann somit mit den restlichen Tools wie udpbox oder udpgate4 zusammenarbeiten.

Wichtig:

  • ra02 benötigt seit der version vom 7.11.2011 keine root Rechte bzw. udev Regeln mehr!!!
  • SPI muss auf dem RaspberryPi deaktiviert sein. Ggf. kontrollieren über raspi-config oder in der GUI.
  • Die Sendeparameter (QRG, TX PWR etc.) müssen immer VOR dem -L gesetzt werden

Funktionsumfang:

  • ra02 ist in der Lage mehrere LoRa Chips parallel anzusteuern (derzeit noch experimentell!!)

Installation

ra02 ist seit Sommer 2022 offiziell in den Paketen und Quellen verfügbar und wird bei der Grundinstallation von dxlAPRS mit installiert.

Parameter in der Kurzübersicht

 ra-02 (sx127x) via LPT or multiple chips via GPIO to axudp by oe5dxl
 -A                 tx AFSK 1200 Baud
 -a                 AGC on
 -B <n>             tx bandwidth kHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (7)
 -b <n>             rx bandwidth (7)
 -C <cr>            tx coding rate 5..8 (5)
 -c <cr>            rx coding rate 5..8 (5)
 -D <Hz>            (a)fsk deviation +-Hz (3000)
 -d                 do not send while DCD on this band or if dcd on tx sf/bw)
                      timebase is detection duration, some ms see chip manual
 -E                 Send UDP frame unmodified in FSK up to 1500Byte eg. for POCSAG
 -F <MHz>           tx MHz (433.775)
 -f <MHz>           rx MHz (433.775)
 -G [-]<baud>       Send GFSK <baud> -baud same but g3ruh scrambler off (490..250000)
 -g <n>             lna gain 6..1, 1 is maximum gain! see chip manual(1)
 -H <n>             Preample length (8) sx seems to need minimum 4
 -h                 this
 -I                 tx implicit header on
 -i                 rx implicit header on
 -L ip:sendport:listenport AXUDPv2 data, apply before all othere parameters for this channel
                      repeat for more tx contexts with different listen ports
                      same rx data are sent to all non zero sendports
 -l <n>             lna boost 0..3, more for better ip3 by more supply current (3)
 -n <netid>         network id (sync word) (not use 34=lorawan) (12)
 -I <n>             set overcurrent protection, use with care, see chip manual
 -O <offon>         tx low datarate optimize 0=off 1=on else automatic (-1)
 -o <offon>         rx low datarate optimize 0=off 1=on else automatic (-1)
 -P <ppm>           x-tal correction +-128 (0.0)
 -p <nss> <mosi> <miso> <sck>  GPIO numbers, apply before all parameter to this chip
                      repeat for more chips (8 10 9 11)
                      with different <nss> pins. Sharing <miso> needs <nss> high
                      on not configed chips by pullup or setting <nss> manual
 -S <sf>            tx spread factor 6..12 (12)
 -s <sf>            rx spread factor 6..12 (12)
 -R <n>             PaRamp how fast tx goes to power, see chip manual (9)
 -r <n>             add to rssi value to compensate internal and external preamps (0)
 -T <n>             (A)FSK txdel in byte (4), not used for raw mode -E
 -U ip:sendport:receiveport AXUDP data, same as -L but standard AXUDP (no metadata)
 -u <us> <us>       sleep time betrween divice polls rx/(a)fsk tx, more:faster response, more cpu (50000 20000)
                      afsk needs 20000 or less to avoid underruns
 -V                 show more infos on stdout
 -v                 show some infos on stdout
 -w <dBm>           tx power 0..17 (10)

ra02 -L 127.0.0.1:9000:9001 -d -r -10 -f 433.775 -w 17 -v
ra02 -p 8 10 9 11 -L 127.0.0.1:2400:2401 -P -2 -d -S 9 -B 6 -F 434.1 -f 433.775 -s 12 -b 7 -L 127.0.0.1:0:2400 -v
ra02 -P <gpio/chip1> -L ... <parameters chip1 tx1/rx> -L <parameters chip1 tx2> ... -P <gpio/chip2> -L ... <parameters chip2 tx1/rx> -L ... -v

Parameter ausführlich erklärt

Parameter Beschreibung
A Sende AFSK 1200 Baud.
a AGC ein.
B Bandbreite beim Senden in kHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (Standard = 7 -> 125 KHz).
b <n> Bandbreite beim Empfangen in KHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (Standard = 7 -> 125 KHz).
C <cr> Coding Rate beim Senden 5..8 (Standard = 5).
c <cr> Coding Rate beiM Empfangen 5..8 (Standard = 5).
D <Hz> (A)FSK Deviation in +/- Hz (Standard = 3000).
d Sende nicht während aktiver DCD (Beim Senden bezogen auf Bandbreite/Spreadfaktor). Zeitbasis ist die Daier der Erknnung, einige Millisekunden, siehe Manual zum Chip.
E Sende unmodifizierten UDP Frame in FSK bis zu 1500 Byte Länge, z.B. für POCSAG.
F <mhz> Sendefrequenz in MHz (Standard = 433.775).
f <mhz> Empfangsfrequenz in MHz (Standard = 433.775).
G [-]<baud> Sende GFSK in <baud>. -baud bedeutet das Gleiche, jedoch deaktiviert den G3RUH scrambler. Gültige Werte 490 ... 250000.
g <n> Empfangsverstärkung 6..1. 1 ist die Maximalverstärkung. Siehe auch Chip-Manual (Standard = 1).
H <n> Länge der Preample (Standard = 8). SX Chips benötigen vermutlich mindestens den Wert 4.
h Hilfetext
I tx implicit header on (Hat wer die genaue Erklärung? Bitte Info!).
I Aktiviere Überspannungsschutz. Bitte mit Vorsicht benutzen und unbedingt das Chip Manual prüfen).
i rx implicit header on (Hat wer die genaue Erklärung? Bitte Info!)
L ip:sendport:listenport Datenstrom in AXUDP v2. Diesen Parameter unbedingt vor allen anderen Parametern für diesen Kanal angeben. Kann für mehrere Sende-Datenströme mit abweichenden Ports wiederholt werden.
l <n> Vorverstärker 0..3. Bessere IP3 durch mehr Versorgungsspannung (Standard = 3).
n <netid> Netzwerk-ID (sync word). Bitte nicht 34=lorawan verwenden. (Standard = 12).
O <offon> Optimierung bei geringer Datenrate (Sendezweig). 0 = Aus, 1 = An, ansonsten -1 für Automatik.
o <offon> Optimierung bei geringer Datenrate (Empfangszweig). 0 = Aus, 1 = An, ansonsten -1 für Automatik.
P <ppm> Korrektur des TCXO in ppm +-128 (Standard = 0.0).
p <nss> <mosi> <miso> <sck> GPIO Nummern der NSS, MOSI, MISO und SCK Verbindung (Standard = 8 10 9 11).
S <sf> LoRa Spreadfactor (Spreizfaktor) im Sendezweig 6..12 (Standard = 12).
s <sf> LoRa Spreadfactor (Spreizfaktor) im Empfangszweig 6..12 (Standard = 12).
R <n> PaRamp how fast tx goes to power, see chip manual (9) (Hat wer die genaue Erklärung? Bitte Info!).
r <n> Zum RSSI Wert hinzufügen um interne oder externe Vorverstärker auszugleichen (Standard = 0).
T <n> (A)FSK TX-Delay in byte (Standard = 4). Wird nicht für den RAW-Modus -E benötigt.
u <µs> <µs> Ruhezeit zwischen dem Pollen vom Chip RX/(A)FSK TX. Je Höher der Wert, umso höher die CPU Last (Standard = 500000 200000)
U ip:sendport:receiveport AXUDP Daten ohne Metadaten wie TXD, AFC usw. (siehe auch -L)
V Zeige mehr Informationen in der Bildschirmausgabe.
v Zeige Informationen in der Bildschirmausgabe.
w <dBm> Sendeleistung in dBm 0..17 (Standard = 10). 1W Module haben noch eine PA dahinter und werden ebenfalls mit den niedrigen Werten angesprochen.

Konfigurationsbeispiele

Aufruf für ein reines RX-only iGate

ra02 -p 8 10 9 11 -a -L 127.0.0.1:9001:0 -v

  • -p definiert die 4 benötigten GPIO Ports an denen die vier wichtigen Datenleitungen angschlossen sind (nss, mosi, miso, sck). 8, 10, 9 und 11 sind dei Standard-GPIOs der bekannten LoRa HATs.
  • -a schaltet die AGC an
  • -L sendet AXUDP Daten der empfangenen Pakete an Port 9001. Zu sendende Pakete sind nicht vorgesehen.
  • -v zeigt Informationen in der Bildschirmausgabe an, z.B. empfangene Pakete (optional).

An Port 9001 kann dann z.B. eine udpbox oder das udpgate4 lauschen.

Aufruf für ein RX/TX iGate

ra02 -p 8 10 9 11 -w 17 -a -L 127.0.0.1:9001:9002 -v

  • -p definiert die 4 benötigten GPIO Ports an denen die vier wichtigen Datenleitungen angschlossen sind (nss, mosi, miso, sck). 8, 10, 9 und 11 sind die Standard-GPIOs der bekannten LoRa HATs.
  • -a schaltet die AGC an
  • -L sendet AXUDP Daten der empfangenen Pakete an Port 9001 und hört auf Port 9002 auf zu sendende Pakete.
  • -w 17 Modul sendet mit voller (17 dBm) Sendeleistung.
  • -v zeigt Informationen in der Bildschirmausgabe an, z.B. empfangene Pakete (optional).

An Port 9001 kann dann z.B. eine udpbox oder das udpgate4 lauschen. Zu sendende Pakete, z.B. vom Digi in udpbox oder aus dem APRS-IS (z.B. Nachrichten oder APRS-IS>RF Infos), müssen dann an Port 9002 geschickt werden.

Tutorials

LoRa APRS iGate mit dxlAPRS und ra02 auf einem RaspberryPi