Münster Platine

Was ist die Münster Platine?

Die Münster Platine ist eine einfache LoRAWAN-Node, die in der Ulmer TTN/LoRaWAN-Community entstanden ist. Sie basiert auf einem Arduino Pro Mini (ATmega328, 8 MHz, 3,3 V) und einem RFM95 LoRa-Funkmodul und hat die Form des Ulmer Münsters ;-) Wir verwenden Sie auf verschiedenste Arten in unseren eigenen Projekten und Workshops.

Was ist das Besondere?

Wir wollten eine möglichst günstige Node haben, um über den Preis den Einstieg in das Thema zu erleicherten. EinsteigerInnen sollen mit der Platine auch näher an Technik herangefürt werden, indem die Node als Bausatz kommt und selbst bestückt werden soll.
Die reinen Materialkosten belaufen sich auf 10 Euro und für diesen Preis bieten wir die Node auch als Bausatz für Privatpersonen an. Für kommerzielle Nutzung verlangen wir einen höheren Preis, um mit dem Überschuss die weitere Entwicklung vorranzutreiben. Hierfür haben sich aktuell ungefähr 20 Euro pro Platine eingependelt.

Update Juni 2019: Aktuell haben wir keine Platinen zum Verkauf mehr auf Lager. Eine neue Charge ist aktuell leider nicht geplant. Falls es in Zukunft mal wieder neue Platinen gibt, wird das hier auf dieser Seite bekannt gemacht.

Für die Fertigstellung der Node muss nur der Mikrokontroller (Arduino) und eine Antenne aufgelötet werden. Für beide Arbeitsschritte bieten wir gerne Unterstützung an.

Features

  • Eingebaute USB Schnittstelle (via FTDI) zum komfortablen Flashen (Programmieren des Microcontrollers).
  • Ladecontroller, so dass ein angeschlossener Akku via USB aufgeladen werden kann.
  • Auslesen der aktuellen Batteriespannung.
  • Triple-Antennen-Connector für drei verschiedene Typen von Antennen (SMA, uFL, Draht).
  • RFM95 Funkmodul.
  • Arduino Pro Mini. Atmel328, 3.3V, 8Mhz.

Wie kann man eine Node bekommen?

Am einfachsten im Temporärhaus in Ulm, der Keimzelle dieser Node und auch vieler anderen Aktivitäten rund um das Thema TTN und LoRaWAN. Wir treffen uns jeden zweiten Mittwoch (in ungeraden Kalenderwochen) ab 18:30 Uhr.

Update Juni 2019: Aktuell haben wir keine Platinen zum Verkauf mehr auf Lager. Eine neue Charge ist aktuell leider nicht geplant. Falls es in Zukunft mal wieder neue Platinen gibt, wird das hier auf dieser Seite bekannt gemacht.

Ansonsten kann auch direkt bei einem der Communitymitglieder eine Node angefragt werden. Einfach über die verschiedenen Kanäle ansprechen, dann finden wir sicher einen einfachen Weg, damit die Node zu dir kommt.

Welche Sensoren kann man verwenden?

Alle Sensoren, die an einen Arduino angeschlossen werden können, können auch mit unserer Platine verwendet werden. Der Arduino auf der Platine bietet mehrere digitale wie analoge PINs für diesen Zweck.

Nicht belegtbare PINs

Die digitalen Pins D2, D4, D5, D6, D10, D11, D12, D13 können nicht verwendet werden. Diese werden für die Kommunikation mit dem RFM95 verwendet. A0 wird für das auslesen der angeschlossenen Batterie verwendet.

Verwendbar sind damit (nur) noch D3, D7, D8, D9, sowie alle analogen Pins ausser A0.

Anleitung und Beispielcode

Die Platine kann via Arduino IDE geflashed werden. Wir bieten einen einfachen "Hello World" Beispielcode an, der eine feste Zahl versendet.

Pin-Mapping

Der wichtigste Teil zur Konfiguration, und auch der, der am häüftigsten bei uns angefragt wird, ist die Pin-Belegung für die LMIC Library:

const lmic_pinmap lmic_pins = {
        .nss = 10, // ulm node 10
        .rxtx = LMIC_UNUSED_PIN,
        .rst = LMIC_UNUSED_PIN,
        .dio = {4, 5, 6},
};

Wir verwenden die Pins 4, 5 und 6 zur Ansteuerung des RFM95.

Code

Im folgenden nun ein kompletter Quellcode für eine minimale Node, die eine feste Zahl versendet (als Demo für einen nicht angeschlossenen Sensor).

Vorsicht: Die LMIC Bibliothek, die direkt in der Arduino IDE in der Bibliotheksverwaltung heruntergeladen werden, ist nicht kompatibel zu unserem Beispiel. Hier sollte die LMIC Bibliothek von Matthijs Kooijman verwendet werden: https://github.com/matthijskooijman/arduino-lmic.

Zu einer fertigen Node, die auch mit TTN sprechen kann, müssen nur noch die Variablen NWKSKEY, APPSKEY und DEVADDR gesetzt werden. Diese sind, sogar als direkt kopierbarer Wert, in der TTN Console unter dem entsprechenden Device zu finden bzw. können dort erstellt werden.