Am 27.10.2021 – TheThings TechTalk – better together!

Am Mittwoch, dem 27.10.2021 findet der nächste TheThings Tech Talk statt. Wie bereits zum letzten Termin angekündigt werden wir diesmal in Hennef zu Gast sein. Dort befindet sich das YouTube-Videostudio der Firma Opdenhoff, in welchem an diesem Abend dasdigidings e.V., TTN Rhein-Sieg und Freifunk Rhein Sieg zu Gast sein werden.
Thematisch werden wir uns in diesem Termin mit Themen von Umweltsensorik über MINT bis hin zur Umstellung TTN v2 auf TTS CE beschäfftigen.

Mitmachen kann jeder der sich für Themen aus TTN, Freifunk, Amateurfunk, MakerSpace, OK-Labs und oder Smart City-Initiativen interessiert. Wichtig dabei ist nur, das wir in diesen Meetings ein Geben und Nehmen leben. Alle Themen sind Open Source und stehen unter einer Lizenz, welche eine kommerzielle Nutzung ausschließt. (Sofern nicht explizit anders gekennzeichnet)

Themen suchen wir bewusst übergreifend aus, wir versuchen dabei Themen aus den verschiedensten Bereichen unserer Teilnehmer auszuwählen. Damit uns dies gelingt sind wir darauf angewiesen, das Ihr uns spannende Themen vorschlagt.

Leider ist das ursprünglich geplante Thema mit der rechnerischen Verbesserung der Messwerte des SDS011 weggebrochen. Wir denken jedoch, mit dem neuen Thema von Guido Burger dem Abend einen besonderen Akzent verleihen zu können.

Agenda des Abends

  • 19:00 Uhr : Start und Begrüßung // Steffen Grau + Caspar Armster
  • 19:15 Uhr Vorstellung des Projektes KInsecta // Nicola Wettmarshausen von KInsecta
    Wer schon im Vorfeld mehr über dieses Projekt erfahren möchte, findet hier einen Flyer.
  • 19:45 Uhr Grundschulen für MINT begeistern: Multiplikatoren Schulungen in Bezug auf den Medienkompetenzrahmen der Bundesländer // Anna Karina Birkenstock von dasdigidings e.V.
  • 20:15 Uhr Von Superblöcken und Daten oder – wie hackt man eine ganze Schule // Guido Burger , Maker 😉
  • 20:45 Uhr TTN – Umzug von TTN v2 auf den TheThingsStack Community Edition (v3) // Caspar Armster von TTN Rhein Sieg
  • 21:15 Uhr Organisatorisches nächste Runde und Verabschiedung

Wir haben Euch bewußt die ungefähren Zeiten der einzelnen Vorträge mit in die Agenda geschrieben, sollten Euch nicht alle Themen ansprechen.

Die Themen der Termine können wir bei Bedarf im Nachgang im Forum hier weiter verfolgen und besprechen.

Da wir gern einen Überblick über die Teilnehmer behalten wollen bitten wir um eine Anmeldung für die Teilnahme an dem Abend.

Noch einmal wichtig, ein kommerzieller Hintergrund ist kein Ausschlusskriterium für eine Teilnahme, die Transparenz hilft nur Verstimmungen im Nachgang zu vermeiden.

Wir freuen uns auf viele Teilnehmer und wünschen Euch bis dahin eine gute Zeit, bleibt gesund!

Steffen von TTN Mitteldeutschland

TheThings-TechTalk

T Am 08. Juni 2021 ist es 19:00 Uhr so weit, unser neues Format rund um technische IOT-Themen geht an den Start.

Jeder ist herzlich eingeladen sich einzubringen, mit uns die Themen zu diskutieren und Ideen und Ansätze weiter zu entwickeln. Was wollen wir alles dort besprechen?

Wer kann da teilnehmen, für wen ist der Termin gedacht? Eigentlich Jeder der an den Themen interessiert ist, der sich aber auch mit einbringen möchte. Die Teilnehmer und Referenten sind in der Regel (und sofern nicht explizit gekennzeichnet) im Rahmen ihres ehrenamtlichen/ privaten Engagements unterwegs. Wir möchten Teilnehmer, welche kommerzielle Interessen verfolgen nicht ausschließen – bitten aber um entsprechende Transparenz und darum, das es ein Geben und Nehmen im Gleichklang wird.

Daher werden wir den Link zum Meeting nicht public stellen sondern in der Bestätigung der Anmeldung versenden.

Die Vorträge wie der gesamte Abend werden in Deutsch ablaufen.

Noch einmal wichtig, ein kommerzieller Hintergrund ist kein Ausschlußkriterium für eine Teilnahme, die Transparenz hilft nur Verstimmungen im Nachgang zu vermeiden.

Wir werden uns auch zu diesem ersten Termin zu Beginn etwas Zeit nehmen um dieses Thema zu besprechen.

Aber nun – Was erwartet Euch zu diesem Meeting?

AAgenda

Da es unser erster Termin ist sind wir auf Eure Hinweise und Vorschläge angewiesen, bitte nutzt die Kommentarfunktion oder die folgende Mailadresse dafür: ttt@grau-zone.online
Das gilt auch für Vorschläge neuer Themen für kommende Termine – wir sammeln schon!

Auch wenn wir diesen Termin organisieren werden wir immer (virtuell) bei einer COM/ einem Verein zu Gast sein. Der Gastgeber erhält dann auch zu Beginn des Termins die Möglichkeit sich und seine Vorhaben vorzustellen. Beim ersten Termin sind wir zu Gast bei TTN Westsachsen, vielen Dank!

Die Themen der Termine werden wir im Nachgang im Forum hier weiter verfolgen und besprechen.

Wir freuen uns auf viele Teilnehmer und wünschen Euch bis dahin eine gute Zeit, bleibt gesund!

Steffen von TTN Mitteldeutschland

Erste Versuche mit LoRa (ohne WAN) und Node 2 Node Verbindungen

Im April hatte ich mich auf eins von der Fa. Thomas Krenn ausgelobten Developer Kits für IoT-Entwicklungen beworben. Diese Kits setzen sich zusammen aus jeweils zwei Boards mit ESP32-Mikrocontroller, LoRa-Modul, OLED-Display und WiFi-, Bluetooth- und Micro-USB-Interface sowie die passenden USB-Anschlusskabel. Weiterhin ist auch ein BME280 Sensor zum Messen von Temperatur, Luftdruck und Luftfeuchtigkeit dabei. Bei den 2 Microcontrollern handelt es sich um die bekannten Heltec Lora32 V2 Controller.

Wie sich herausstellen sollte, hatte ich diesmal Glück. Anfang Mai klingelte der Briefträger und überreichte mir eins dieser Kits. Vielen Dank dafür an dieser Stelle an die Firma Thomas Krenn. Ich habe mich sehr darüber gefreut.

TK_Box.jpg

Praktisch, dass Thomas Krenn auf ihrer Website auch eine Schritt-für-Schritt-Anleitung zur Installation und Programmierung mittels Arduino-IDE veröffentlicht hat. Selbst fertig vorbereitete Sketche sind dort verfügbar, jeweils einer für Transceiver und einer für den Receiver. Somit war es klar, dass ich gleich mal die Arduino IDE geladen und die Sketche auf die Heltec V2 Controller gespielt habe.

Beide Sketche funktionieren auf Anhieb. Der Transceiver liest den BME280 Sensor aus, zeigt die gemessenen Werte auf dem Display an und sendet sie in einem String per LoRa an den Receiver. Danach fällt der Transceiver in einen zweiminütigen Tiefschlaf.

Auf dem Receiver wird der String ausgepackt und auf dem Display angezeigt.

Bis zu diesem Punkt brauchte ich nicht eine Zeile Code schreiben. Es war alles zum Test vorbereitet.

Schnell kam bei mir aber der Wunsch auf, noch weitere Transceiver Microcontroller im neuen Haus zu verteilen, um einen Überblick über die Restfeuchte aus der Bauphase des Hauses zu bekommen. Natürlich sollten die Messwerte der einzelnen im Haus verteilten Sensoren auch in die bestehende NodeRED, Influx-DB und Grafana Umgebung aufgenommen werden.

Gesagt, getan.

Dafür schaute ich mir die Sketche etwas genauer an und merkte, dass es nur ein paar Erweiterungen bedurfte, damit der Receiver auch mehr als einen Transceiver erkennen und verarbeiten konnte.

Auf der sendenen Transceiver-Seite musste nur eine kleine Ergänzung (String „Wohnzimmer“) im LoRa Message-String aufgenommen werden, damit der empfangene Transceiver erkennen kann, wer die Daten geschickt hat.

Serial.print("Sending Complete Data: ");
  LoRaMessage = String(temperature) + "/" + String(humidity) + "/" + String(pressure) + "/" + String("Wohnzimmer");
  Serial.println(LoRaMessage);

Auf der empfangenen Receiver-Seite waren die Änderungen/Ergänzungen am Code schon etwas umfangreicher.

Dort musste das Script zuerst einmal um WiFI- und MQTT Fähigkeiten erweitert werden. Dann war auch noch eine Routine für das Erkennen des sendenden Nodes und eine Routine für die MQTT Client.Publish Befehle zu schreiben.


  // Hier wird der passende Raum-Bezeichner aus der Variable "feld4" (Location) ermittelt und dann der ganze MQTT-Aufruf zusammengesetzt

  String temp_PreFix1 = "sensors/BME280/Temperatur/";
  String ort1 = feld4;
  String myString1 = temp_PreFix1 + ort1;
  const char * msg1 = myString1.c_str ();

  String temp_PreFix2 = "sensors/BME280/Luftfeuchte/";
  String ort2 = feld4;
  String myString2 = temp_PreFix2 + ort2;
  const char * msg2 = myString2.c_str ();

  String temp_PreFix3 = "sensors/BME280/MBar/";
  String ort3 = feld4;
  String myString3 = temp_PreFix3 + ort3;
  const char * msg3 = myString3.c_str ();

  String temp_PreFix4 = "sensors/BME280/Ort/";
  String ort4 = feld4;
  String myString4 = temp_PreFix4 + ort4;
  const char * msg4 = myString4.c_str ();

  String temp_PreFix5 = "sensors/BME280/Quality/";
  String ort5 = feld4;
  String myString5 = temp_PreFix5 + ort5;
  const char * msg5 = myString5.c_str ();


  connectToMQTT();

  client.publish (msg1, String(feld1).c_str());
  client.publish (msg2, String(feld2).c_str());
  client.publish (msg3, String(feld3).c_str());
  client.publish (msg4, String(feld4).c_str());
  client.publish (msg5, String(rxquality).c_str());
  
}

Mit diesen Änderungen ist der Receiver Controller in der Lage, den jeweils sendenden Transceiver eindeutig zu erkennen und die übermittelt bekommenen Messwerte in die geweils zuständigen MQTT Topics zu versenden.

Diese hier beschriebene LoRa Umgebung läuft hier bei mir jetzt seit mehreren Tagen quasi fehlerfrei. Ab und an resettet der Receiver kurz (um diesen Fehler habe ich mich noch nicht gekümmert), ist dann aber nach ganz kurzer Zeit wieder zum Empfang von gesendeten LoRa Paketen bereit.