RFM95-Knoten ausschließlich auf 868,1 MHz zwingen, für einen Bench-Test gegen Hermetry LoRaWAN
Von English mit KI übersetzt ·
Wir richten einen Testaufbau für einen Temperaturlogger ein, den wir in einem Kühlraum an unserem EU-Standort einsetzen wollen. Hardware: Feather M0 mit RFM95W (868), MCCI LMIC 4.1, OTAA, Gerät in Hermetry mit DevEUI/JoinEUI/AppKey registriert.Problem: Das einzige Gateway auf meinem Bench ist eine Single-Channel-Platine aus einem Dev-Kit (ESP32 + SX1276), die auf 868,1 MHz, SF7 lauscht. Unser richtiges Gateway hängt noch im Zoll. Der Knoten verbindet sich vielleicht einmal von vier Versuchen, und danach erscheinen Uplinks nur sporadisch im Frames-Log. Ich möchte, dass der Knoten nur auf 868,1 sendet, damit ich diese Woche mit der Firmware-Arbeit weiterkomme.Gibt es eine saubere Möglichkeit, in LMIC die Frequenz auf eine festzulegen? Ich habe gesehen, dass Leute lmic_eu868.c editieren. Außerdem: Die Single-Channel-Platine läuft mit einem Packet Forwarder, der UDP an eine Serveradresse sendet. Ich habe die Adresse des Network Servers von der LoRaWAN-Seite eingetragen, und sie wird irgendwie angezeigt, aber in Hermetry taucht nichts als Gateway auf. Hängt das zusammen?
Setting up a test bench for a temperature logger we want to deploy in a cold room at our EU site. Hardware: Feather M0 with RFM95W (868), MCCI LMIC 4.1, OTAA, device registered in Hermetry with DevEUI/JoinEUI/AppKey.
Problem: the only gateway on my bench is a single-channel board from a dev kit (ESP32 + SX1276) listening on 868.1 MHz, SF7. Our proper gateway is still in customs. The node joins maybe one time in four and after that uplinks show up in the frames log sporadically. I’d like the node to transmit on 868.1 only so I can get on with firmware work this week.
Is there a clean way in LMIC to pin it to one frequency? I’ve seen people edit lmic_eu868.c. Also: the single-channel board runs a packet forwarder that sends UDP to a server address. I typed in the network server address from the LoRaWAN page and it does show up, kind of, but nothing in Hermetry lists it as a gateway. Is that related?
Von English mit KI übersetzt ·
Kannst du nicht einfach LoRa.begin(868.1E6) verwenden und fertig? So habe ich meinen eingestellt.
Can’t you just do LoRa.begin(868.1E6) and done? That’s how I set mine.
Von English mit KI übersetzt ·
Das ist die einfache LoRa-Bibliothek, Kevin. LMIC macht LoRaWAN und wählt die Kanäle selbst aus.
That’s the plain LoRa library, Kevin. LMIC does LoRaWAN, it picks channels itself.
Von English mit KI übersetzt ·
Was ist ein Single-Channel-Gateway im Vergleich zu einem normalen? Ist es einfach nur günstiger?
What’s a single channel gateway vs a normal one? Is it just cheaper?
Von English mit KI übersetzt ·
Einkanal-Boards hören auf einer Frequenz und einem Spreizfaktor. Ein echtes LoRaWAN-Gateway hört gleichzeitig auf acht Kanälen und allen SFs. LoRaWAN-Knoten wechseln absichtlich die Kanäle, daher erfasst ein Einkanal-Board nur die Frames, die zufällig auf seiner Frequenz landen.Laura, hier passieren zwei getrennte Dinge.Joins: Bei EU868 verwenden Join-Requests die drei Standardkanäle 868,1, 868,3 und 868,5. Ihr Knoten wählt zufällig einen davon, daher hört ein Einkanal-Board auf 868,1 etwa ein Drittel der Joins. Das ist Ihr „eins von vier“. Die Join-Accept übergibt dem Knoten dann fünf weitere Kanäle (867,1 bis 867,9), sodass er nach dem Join über acht Kanäle springt.Für einen Bench-Test können Sie das nach dem Join festlegen. In MCCI LMIC, im EV_JOINED-Handler:
case EV_JOINED:
// nur Bench: Kanal 0 (868,1) behalten, die anderen deaktivieren
for (int ch = 1; ch < 9; ch++) {
LMIC_disableChannel(ch);
}
LMIC_setLinkCheckMode(0);
break;
Bearbeiten Sie lmic_eu868.c nicht, und liefern Sie das nicht ins Feld aus. Am Join selbst ändert es nichts.Der UDP-Teil ist allerdings das eigentliche Problem. Hermetry unterstützt den alten UDP-Packet-Forwarder gar nicht; Gateways verbinden sich über Basics Station oder als lizenzierter Router. Das Board hätte also in Ihrer Organisation nie als Gateway funktionieren können, deshalb ist es auch nicht gelistet. Was Sie im Frame-Log gesehen haben, kam von woanders. Gibt es ein anderes Gateway im Gebäude? Unseres hat Frames eines Nachbarn aufgefangen, bevor wir unser eigenes hinzugefügt haben.Bench-Option, die heute funktioniert: ein günstiges 8-Kanal-Indoor-Gateway, das Basics Station ausführt. Unseres hat weniger gekostet als die Sensoren im Kühlraum.
Single-channel boards listen on one frequency and one spreading factor. A real LoRaWAN gateway listens on eight channels and all SFs at once. LoRaWAN nodes hop channels on purpose, so a single-channel board only catches the frames that happen to land on its frequency.
Laura, two separate things are going on.
Joins: on EU868, join requests use the three default channels, 868.1, 868.3 and 868.5. Your node picks one of the three at random, so a single-channel board on 868.1 hears roughly a third of the joins. That’s your „one in four“. The join accept then hands the node five more channels (867.1 to 867.9), so after joining it hops over eight.
You can pin it after the join for a bench test. In MCCI LMIC, in the EV_JOINED handler:
case EV_JOINED:
// bench only: keep channel 0 (868.1), drop the others
for (int ch = 1; ch < 9; ch++) {
LMIC_disableChannel(ch);
}
LMIC_setLinkCheckMode(0);
break;
Don’t edit lmic_eu868.c, and don’t ship this to the field. It can’t help the join itself.
The UDP part is the real blocker though. Hermetry doesn’t support the legacy UDP packet forwarder at all, gateways connect with Basics Station or as a licensed router. So that board was never going to be a gateway in your organisation, which is why it isn’t listed. What you saw in the frames log came from somewhere else. Is there another gateway in the building? Ours picked up a neighbour’s frames before we added our own.
Bench option that works today: any cheap 8-channel indoor gateway that runs Basics Station. Ours cost less than the cold room sensors.
Von English mit KI übersetzt ·
Wir verwenden im Hotel dasselbe Feather-Setup; ein 8-Kanal-Basics-Station-Indoor-Gerät kostete etwa so viel wie zwei Feathers
we use the same Feather setup at the hotel, an 8-channel Basics Station indoor unit was about the price of two Feathers
Von English mit KI übersetzt ·
Kstewart hat recht gehabt. Im QA-Labor eine Etage darüber gibt es ein Basics-Station-Gateway, das vom QA-Team in unserer Organisation registriert wurde. Das hat meine „sporadischen“ Frames empfangen, mein Entwicklungs-Kit hat nicht einen einzigen weitergeleitet. Ich habe es für den Bench-Test ausgeliehen, die Einkanal-Platine und den Kanal-Hack entfernt. Der Join klappt beim ersten Versuch, Uplinks alle 60 s auf allen acht Kanälen. Der 868.1-Trick hat übrigens zwischendurch funktioniert, der Vollständigkeit halber.
Kstewart got it. There is a Basics Station gateway in the QA lab on the floor above, registered in our org by the QA team. That’s what heard my „sporadic“ frames, my dev kit board never forwarded a single one. Borrowed it for the bench, removed the single-channel board, removed the channel hack. Joins first time, uplinks every 60 s on all eight channels. The 868.1 trick did work in between, for the record.
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.
Mitdiskutieren
Melde dich an, um Fragen zu stellen und zu beantworten, hilfreiche Beiträge mit „Gefällt mir“ zu markieren und die Antwort zu kennzeichnen, die dein Problem gelöst hat. Jeder Beitrag bringt Punkte und Stufen.

