Lora/LoraWAN - Modulempfehlungen? [Aktuell: LoRa Radio Node V1]

Ich möchte mich ein wenig in Lora/Lorawan/TheThingsNetwork https://www.thethingsnetwork.org/ einarbeiten. Ursprünglich war der Post als Frage aufgebaut, zwischenzeitlich ist es mehr eine Zusammenfassung meines Weges:

Zum Vorgehen - bzw zum Nachlesen was ich am Plan hatte:
a) zunächst mal zwei Module für einfache Peer-to-Peer Kommunikation [done]

b) Dann würde ich gern ein paar Reichweitentests machen und daher ein Modul mit GPS suchen (TTGO T?) [done]

c) Dann mit Nodes eine Verbindung zu tnn aufbauen. Ich sollte laut Map einige Gateways erreichen können. Da würde ich natürlich gern die Module aus a) oder b) wiederverwenden [done]

d) dann ein Singlechannel Gateway für TNN mal probieren - auch wieder gern mit Modulen aus a) oder b). [done]

e) Ist das Dragino Single Channel seine 70 Euro Wert oder kann man sich den Schritt sparen?
Single Channel packet forwarder sind auf TTN nicht mehr gern gesehen. Ich habe mit der Migration von TTN V2 auf TTN V3 die letzten billigen TTGO-Lora32-Board Single Channels abgebaut und verwende zwischenzeitlich nur mehr TTIGs und ein RAK7258.

f) wenn mich die Lust noch nicht verlassen hat ein "richtiges" 8 Channel Gateway betreiben. Braucht es da wirklich 200-300 EUR oder hat schon jemand ein The Things Indoor laufen?
The Things Indoor Gateway - gekauft - und zwischenzeitlich auch OK.
RAK7258 - empfehlenswert

Boards mit denen ich bisher gearbeitet habe und

Gateways:

Projekte

Das Interesse scheint sich in Grenzen zu halten, aber egal. Zunächst ein Zwischenbericht:

a) Zum Anfangen habe ich mich für TTGO LORA32 V2.0 entschieden (Link). Ich habe da einige Muster-Sketche gefunden (fast schon zu viel), das was ich zu letzt verwendet habe, habe ich auf meiner HP online gestellt: TTGO LORA32 V2.0 - Übertragungen Peer to Peer . Die Module finde ich echt in Ordnung.
b) Reichweitenangabe ist "von - bis". Es hängt sehr viel von der verwendeten Antenne ab. Da bin ich aber erst ganz am Anfang.

jetzt geht es mal mit Lorawan weiter - das ist eine andere Nummer ... :wink:

Hi

Keineswegs !! Die von Dir beschriebenen Reichweiten wären schon interessant - habe beim 'Auktionshaus meiner Wahl, wo ich auch mit PayPal bezahlen kann' nach dem Käfer gesucht - Da gibt's wohl mehrere von, teilweise mit enthaltenem Display (LCD/OLED/E-Paper) - könnte mich interessieren, meine Gedanken gehen in Richtung 'Kirmes-Radar' - also ein Helferlein, womit man 'sein Volk' auf der Kirmes aufspüren kann - Position mittels GPS, Austausch dieser Informationen per Funk, Anzeige als Radar-Bildschirm (aktuell ist's ein 1602 mit eher rudimentärer Darstellung und noch unterirdischer Reichweite via NRF24L01).

Also - meinetwegen darfst Du hier gerne weiter berichten!!

MfG

Bin interessierter Mitleser.

Hi,

ich bin schon etwas in der LORA-Technik. Allerdings nutze ich sie nur peer to peer
Aus meiner Erfahrung hängt sehr viel an der richtigen Antenne!
Ich habe auch Adrafruit Feather und mehrere MKR 1300 und ich würde dir empfehlen, dass du dir die MKR zulegst weil:
+Doku gut
+Hardware perfekt
+läuft stabil
+Hat CE (war für mich eigentlich auch das Kriterium warum ich die MKR probiert habe)
-relativ teuer
-nur eine freie SPI

Schau mal im Forum, hier habe ich schon einige Posts zu Lora getätigt und auch selbst gelesen.
( GAAAAAAANNNNZZZZwichtiger Hinweis: Wenn du dir ein MKR 1300 bestellst, nimm es in jedem Fall aus dem Schaumstoff, der mitgeliefert wird! Der ist leitend und du bekommst dein MKR sonst nie, nie, nie, nie zum laufen! Ich spreche aus eigener Erfahrung! :-))

Hallo,

wo hast Du da ein CE gefunden?
Laut Arduino-Seite kann es Carrier frequency 433/868/915 MHz, dumm, daß das Datenblatt des ICs sagt, daß ein SX1276 drin steckt und es nur 868/915MHz kann.

Falls jemand Alternativen sucht:
https://de.aliexpress.com/item/RCmall-LoRa32u4-LORA-Modul-433-mhz-RA02-RA-02-Lange-Palette-Entwicklung-Board-mit-Antenne-f/32832962260.html
für 433MHz mit dem auch bekannten RA-02 drauf, das einzeln:

Reichweitentests gibt es von mir leider noch keine, mein Bekannter hat auf 868MHz mal rund 800m in teilweise mit Hochhäusern bebeuten Gebiet stabil getestet.

Gruß aus Berlin
Michael

Schöner Quote :wink:

Hallo,

ElEspanol:
Schöner Quote :wink:

gerade gesehen und gelöscht, keine Ahnung, was ich da geklickt habe...

Gruß aus Berlin
Michael

Ich arbeite nun mit der MCCI_LoRaWAN_LMIC_library

Frage,
wenn ich mit

LMIC_disableChannel(i);

einen Channel deaktiviere, wie kann ich später zur Laufzeit abfragen, welcher Channel (von 9) aktiv ist - welcher nicht?

Wenn ich die Library durchsuche, glaube ich die LMIC_disableChannel Funktion in File
\src\lmic\lmic_eu_like.c
gefunden zu haben.

nur finde ich nichts passendes zum Status abfragen. Hat jemand eine Idee?

Du bist doch nicht erst seid gestern hier. Eine Lib ohne Link ist wertlos, das solltest Du mittlerweile wissen.

Gruß Tommy

Die lib ist über die IDE installierbar.
Aber auch hier zu finden GitHub - mcci-catena/arduino-lmic: LoraWAN-MAC-in-C library, adapted to run under the Arduino environment

noiasca:
Die lib ist über die IDE installierbar.

Ich will mir aber nicht jede Lib, in die ich mal reinschauen will, erst installieren. Per Link kann man online lesen.

Gruß Tommy

noiasca:
Wenn ich die Library durchsuche, glaube ich die LMIC_disableChannel Funktion in File
\src\lmic\lmic_eu_like.c
gefunden zu haben.

void LMIC_disableChannel(u1_t channel) {
        LMIC.channelFreq[channel] = 0;
        LMIC.channelDrMap[channel] = 0;
        LMIC.channelMap &= ~(1 << channel);
}

Entweder Du findest LMIC und wie Du darauf zugreifen kannst oder (wohl einfacher) Du merkst es Dir selbst in einem uint16_t (wegen 9 Channels) in einzelnen Bits, ob er aktiviert ist oder nicht.

Gruß Tommy

irgendwie hat mir die Abfrage der genullten Frequenz nicht gefallen, aber da es klappt lass ich das mal so...

if (LMIC.channelFreq[i] > 0)

Ich war heute mal mit einem TTGO-T-Beam und OEM-Antenne spatzieren.
Mein eigenes Single-Channel Gateway mit Innenantenne kommt nur schlecht aus dem Häuserblöck hervor.
Überraschenderweise gibt es aber dann doch einige Gateways in der Umgebung. Eines im Norden über 5km, eines im Süden über 7km. Und natürlich alles "nur" mit SF7!
TTGO-T-Beam: ein ESP32 mit Lorawan und GPS, auf Amazon:Amazon.de : TTGO-T-Beam
meiner im mitgeliefertem "Gehäuse"
ttgo_tbeam_boxed.jpg

10km Spatziergang in Wien:

P.S.: Die TTGO LORA32 Module die ich sonst habe, sind eigentlich komplett lautlos. An meinem TTGO T-Beam macht das RF-Modul ein nerviges Fiepsen, klingt wie von einer Spule in einem schlechten Netzteil. Einzelschicksal oder kennt das wer?

Interessant!

kleines Update:

also das fiepsen am TTGO T-beam scheint man öfters zu lesen. Bei mir verstummt es, sobald man einen 18650 Akku reingibt.

Das TTGO T-Beam hat einen fix verdrahteten Spannungsteiler zu GPIO35 mit dem man die Akku-Spannung ermitteln kann. Ja wenn man es kann. Ich habe mir da fast die Finger gebrochen dabei.

Rausgekommen ist jedenfalls eine Messung mit -11dB und bei 10Bit Auflösung.
Der erste Messwert weicht meistens leicht ab, daher schmeiße ich den weg. Die weiteren 5 Messungen sind eigentlich für diesen Anwendungszweck (für mich) ausreichend genau.

/*
   ADC Measurements on ESP32

   Import Information:
   https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/peripherals/adc.html
   and
   https://www.esp32.com/viewtopic.php?f=19&t=2881&start=10#p13739

   and as always: the truth is on your harddisk:
   C:\Users\YOUR_USER\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.1\cores\esp32\esp32-hal-adc.h and .c

   noiasca
   2019-04-30

*/

const byte ADCBOARDVOLTAGE_PIN = 35;  // Prefer Use of ADC1 (8 channels, attached to GPIOs 32 - 39) . ADC2 (10 channels, attached to GPIOs 0, 2, 4, 12 - 15 and 25 - 27)
const byte ADC_BITS = 10;             // 10 - 12 bits

byte read_voltage()
{
  // multisample ADC
  const byte NO_OF_SAMPLES = 5;
  uint32_t adc_reading = 0;
  Serial.print(F("D022 ADC Measurement:"));
  analogRead(ADCBOARDVOLTAGE_PIN);                      // First measurement has the biggest difference on my board, this line just skips the first measurement
  for (int i = 0; i < NO_OF_SAMPLES; i++) {
    uint16_t thisReading = analogRead(ADCBOARDVOLTAGE_PIN);
    adc_reading += thisReading;
    Serial.print(F(" ")); Serial.print(thisReading);
  }
  adc_reading /= NO_OF_SAMPLES;
  Serial.print(F(" Avg=")); Serial.println(adc_reading);
  // Convert ADC reading to voltage in deciVolt, 1024/2048/4096 not hardcoded but calculated depending on the set ADC_BITS
  byte voltage = adc_reading * 39 * 2 / (1 << ADC_BITS); // 3.9V because of 11dB, 100K/100K Voltage Divider, maxResolution (1024/2048/4096)   
  return voltage;   
}


void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.println(F("ADC Measurements on the ESP32"));

  analogReadResolution(ADC_BITS);           // Default of 12 is not very linear. Recommended to use 10 or 11 depending on needed resolution.
  //analogSetAttenuation(ADC_11db);          // Default is 11db which is very noisy. Recommended to use 2.5 or 6. Options ADC_0db (1.1V), ADC_2_5db (1.5V), ADC_6db (2.2V), ADC_11db (3.9V but max VDD=3.3V)
  pinMode(ADCBOARDVOLTAGE_PIN, INPUT);
}


void loop() {
  // put your main code here, to run repeatedly:
  Serial.print(F("Voltage: ")); Serial.println(read_voltage());
  delay(2000);

}

Weitere Infos zum TTGO T-Beam habe ich hier zusammengetragen:
http://werner.rothschopf.net/201905_ttgo_t_beam.htm

weiter gehts dann in verkehrter Reihenfolge:

  • eine Sketch für den TTGO T-Beam
  • und eine kompilierbare Variante am Single-Channel-Gateway angepasst für den TTGO Lora32 mit Display.

Hallo,

da LoRa nicht so oft auftaucht habe ich mal in dem alten Thread hier geschrieben...
Falls jemand einen aktuellen TTGO T Beam gekauft hat, bekommt er vermiutlich wie ich die T22 Version.
Sofort erkennbar daran, daß statt 2 Taster und ein Schalter drei Taster verbaut sind. Dieser hat als Powermanagement den AXP192 drauf und offenbar nich weitere Änderungen im Layout.

Mein Stand zur Zeit: die aktuelle AXP202X Lib unterstützt den AXP192 teilweise, es fehlen aber etliche Hinweise und Funktionen.

LoRa-Modul: RST ist jetzt auf GPIO 23 statt auf GPIO 14.
GPS-Modul: Die serielle ist an RX GPIO 34 und TX GPIO 12.
I2C des AXP192 ist an SDA GPIO 21 und SCK GPIO 22
Der mittlere Taster, wie aufgedruckt, an GPIO 38

Es gibt nur noch 2 LEDs auf dem Board:
Blau - Akku wird geladen
Rot - GPS-Impuls, auch an GPIO37

Taster PWR: 2s festhalten - AXP192 wird eingeschaltet, 6s festhalten - AXP192 wird komplett abgeschaltet (Akku-Ladung über USB bleibt aktiv)

Um den Kram überhaupt in Gang zu bekommen müssen die Komponenten des AXP192 eingeschaltet werden:

Im setup()
axp.setPowerOutPut(AXP192_LDO2, AXP202_ON);
axp.setPowerOutPut(AXP192_LDO3, AXP202_ON);
axp.setPowerOutPut(AXP192_DCDC2, AXP202_ON);
axp.setPowerOutPut(AXP192_EXTEN, AXP202_ON);
axp.setPowerOutPut(AXP192_DCDC1, AXP202_ON);
axp.adc1Enable(AXP202_VBUS_VOL_ADC1 | AXP202_BATT_CUR_ADC1 | AXP202_VBUS_CUR_ADC1, AXP202_ON); // ADCs einschalten

Die letzte Zeile schaltet die ADCs für USB-Spannungsmessung und die Strommessungen ein.

Bei mir ist noch Testen angesagt, GPS und LoRa laufen und schicken mir alle 5 Minuten die GPS-Daten.
Ich werde jetzt erstmal testen, wie schnell das GPS wieder gültige Daten meldet, wenn ich es ausschalte und wieder einschalte. Plan ist, eine möglichst lange Laufzeit mit einer Akkuladung (im Moment 2400mAh) erreichbar ist.

Vermutlich werde ich den Kram dann erstmal ins Auto legen, kann ich nachschauen, wo ich das Gefährt zuletzt abgestellt habe. :slight_smile:

Gruß aus Berlin
Michael

hab mir jetzt The Things Indoor Gateways zugelegt und in Betrieb genommen.

Aktuell kämpfe ich mit folgenden Fehlern:

-Pakete die von TTIG empfangen werden, scheinen in der Konsole etwa 5 Sekunden verspätet und somit meist als RETRY auf
-Das TTIG verbindet sich alle 60sec neu zu TTN (dabei blinkt die LED grün). Treffen Pakete in dieser Zeit ein werden die manchmal verloren, auf alle Fälle dauert dann die Übertragung zu TTN noch mal eine Spur länger.
-Gateway schickt keinen Zeitstempel

alles scheint bekannt zu sein. Lösungen gibt es nicht wirklich dafür, oder habe ich das in dem Monster Thread auf TTN übersehen?

hab jetzt ein TTIG mit einer externen Antennen versehen. Klappt eigentlich ganz problemlos, man muss halt den Garantieverlust in Kauf nehmen.

Ist eigentlich eh ziemlich einfach, nur die Gehäusehälften zu trennen verlangt etwas Mut.

Habe dann noch ein paar Worte geschrieben und ein paar zusätzliche Bilder hochgeladen:
http://werner.rothschopf.net/201912_lorawan_ttig_sma_umbau.htm