Remote IoT installieren, einrichten und programmieren

Mit Remote IoT kannst du zwischen mehreren Calliope minis über das Internet kommunizieren. Dazu brauchst du für den Calliope mini kein Zubehör. Installiere dazu das Programm Remote IoT auf deinem Computer (für Windows 10, macOs und Linux erhältlich). Das Programm stellt die Verbindung zwischen dem Calliope mini und dem Computer her und nutzt die Internetverbindung des Computers um sich mit der Plattform shiftr.io zu verbinden. Shiftr.io sorgt dafür, dass die Nachrichten an die entsprechenden Personen weitergeleitet werden. Wie dies genau geht, ist unten Schritt für Schritt angegeben.

Remote IoT wurde entwickelt in Zusammenarbeit von Thomas Schmalfeldt (PH Zürich) und Joël Gähwiler (Sternenbauer).

Schritt 1

Zunächst musst du auf shiftr.io eine sogenannte Instanz erstellen. Vereinfacht gesagt ist diese eine Adresse, über welche die verschiedenen Calliope mini Nachrichten austauschen können. Falls du bereits eine solche Adresse erhalten hast und diese noch gültig ist, kannst du die Schritte 1 bis 7 auslassen.

Gehe auf https://www.shiftr.io/  erstelle ein Konto (Sign Up) und logge dich ein (Sign In).

Schritt 2

Zuerst musst du eine Gruppe erstellen und anschliessend eine neue Instanz . Sobald du diese hast, kannst du jederzeit auf die Instanz zurückgreifen. Du kannst auch später weitere Instanzen hinzufügen, wenn dies notwendig ist.

Schritt 3

Es gibt verschiedene Pläne. Basic ist kostenlos. Du kannst dabei die Instanz vollumfänglich nutzen, jedoch nur 6 h innerhalb eines Tages. Für die meisten Projekte wird dies ausreichen. Falls die 6 h verbraucht sind, schläft die Instanz ein und ist ab dem nächsten Tag wieder erreichbar. Mit dem Plan Plus zahlst du $7 im Monat, was dir ermöglicht, deine Instanz durchgehend laufen zu lassen. Dies ist auch eine Möglichkeit, das Projekt finanziell zu unterstützen. Du kannst jederzeit die Instanz wieder auf Basic zurückstellen, dann bezahlst du den anteilmässigen Betrag.

Schritt 4

Nun kannst du deiner Instanz einen Namen geben (linkes Feld). Du kannst einen beliebigen Namen setzen, solange er noch nicht vergeben ist. Dieser Name ist nur für dich wichtig, um eine Übersicht über deine Instanzen zu haben. Im rechten Feld kannst du einen Namen eingeben, unter welchem man die Instanz erreichen kann. Dabei wird automatisch der Name aus dem linken Feld eingefügt, du kannst ihn aber auch abändern.

Merke dir den Namen im rechten Feld, diese musst du später in Programm Remote IoT eingeben.

Schritt 5

Abschliessend musst du noch die Instanz einer Gruppe zuordnen, welche du beim Registrierungsprozess erstellt hast. Solange du den Plan Basic hast, musst du keine Zahlungsinformationen angeben.

Nun kannst du auf Deploy Instance klicken.

Schritt 6

Du gelangst auf die Übersichtsseite mit deinen Instanzen. Du siehst, dass deine Instanz aktuell läuft und im Basic Plan ist.

Schritt 7

Wenn du dich zu einem späteren Zeitpunkt wieder auf https://www.shiftr.io/ einloggst, kommst du mit dem Menüpunkt Instances direkt zur Übersicht.

Schritt 8

Nun benötigst du die Anwendung Remote IoT. Diese findest du hier:

https://github.com/256dpi/remote-iot/releases

Es gibt für jedes Betriebssystem verschiedene Möglichkeiten. In den Beispielen und im Bild links ist die aktuellste Version 0.4.5. Allenfalls gibt es mittlerweile eine neuere Version. Wichtig ist, immer die oberste Version zu wählen.

Windows 10

remote-iot-0.4.5.exe: Diese Datei installiert Remote IoT auf deinem Computer. Da das Programm kein Zertifikat hat, wird es verschiedene Warnungen geben, dass du das Programm nicht herunterladen und öffnen solltest. Keine Angst, das Programm ist sicher und du kannst es auf deinem Computer installieren.

remote-iot-0.4.5-win32.zip: Wenn du die zip-Datei extrahierst, findest du auch eine im nun im Ordner die Datei remote-iot.exe. Wenn du diese doppelt anklickst, startet das Programm.

macOS

remote-iot-0.4.5.dmg: Diese Datei installiert Remote IoT auf deinem Computer. Auf macOS musst du alle Programme, welche du direkt aus dem Internet herunterlädst, beim ersten Mal etwas aufwändiger öffnen. Suche im Finder das Programm remote-iot und klicke mit rechts (oder mit zwei Fingern) auf die Datei und öffne sie. Allenfalls musst du auch den komplizierteren Weg über Systemeinstellungen –> Sicherheit –> Allgemein wählen. Beim nächsten Mal kannst du Remote IoT ganz normal öffnen.

Schritt 9

Wenn du Remote IoT startest, findest du die Standardadresse eingetragen:

mqtt://remote-iot:remote-iot@remote-iot.cloud.shiftr.io

Diese musst du anpassen. Ersetze das remote-iot auf beiden Seiten des @-Zeichens durch den Adressnamen der Instanz. In unserem Beispiel ist dies:

mqtt://remote-iot:satinprincess749@satinprincess749.cloud.shiftr.io

Nun kannst du auf Start klicken.

Schritt 10

Es gibt zwei Arten, wie du den Calliope mini mit Remote IoT verbinden kannst.

Wenn der Calliope mini über das USB-Kabel am Computer angeschlossen ist, wird diese Verbindung genutzt.

Du kannst den Calliope mini auch über Bluetooth verbinden. Dazu muss der Calliope mini mit der externen Batterie laufen. Die Verbindung zwischen dem Calliope mini und dem Computer wird automatisch hergestellt.

Zuvor musst du aber noch in MakeCode ein Programm für den Calliope mini schreiben, mit welchem du dann über Remote IoT Nachrichten verschicken kannst. Wie das geht, folgt in den nächsten Schritten. Das Programm muss dann auf den Calliope mini geladen werden, mit dem Simulator in MakeCode funktioniert es nicht.

Schritt 11

Um die Blöcke für Remote IoT nutzen zu können, musst du diese zuerst hinzufügen. Gehe dazu auf Fortgeschritten –>  Erweiterungen

Schritt 12

Gib im Suchfeld folgenden Link ein und klicke auf die Lupe:

https://github.com/256dpi/remote-iot/

Schritt 13

Wenn du das angezeigte Feld mit remote-iot anklickst, erscheint folgende Information. Du kannst auf Alle Erweiterungen entfernen und remote-iot hinzufügen klicken. Dabei werden in diesem Projekt die Blöcke für das Funken entfernt, da es dort funktionelle Überschneidungen mit Bluetooth gibt, welches bei Remote IoT verwendet wird.

Schritt 14

Nun kannst du die Blöcke verwenden. Beachte, dass du für jedes neue Projekt die Blöcke neu hinzufügen musst.

Schritt 15

Vorab eine wichtige Information: Remote IoT ist eine Kommunikation unter Freunden. Alle, welche in Remote IoT dieselbe Instanz eingegeben haben, können miteinander kommunizieren.

Beim Start musst du eingeben, wie du heisst. Der Name ist frei wählbar. Das heisst, der Name kann auch doppelt vorkommen und ein Name kann «gestohlen» werden. Möchte man untereinander «geheim» kommunizieren, kann hier eine geheime Ziffernfolge eingegeben werden, welche dann nur den entsprechenden Freunden bekannt ist.

Schritt 16

Nun kannst du Nachrichten verschicken. Dabei gibt du ins erste Feld eine Textnachricht ein, ins mittlere Feld kannst du fakultativ eine Kennung eingeben (im Beispiel steht noch der Standartwert «msg»). Im letzten Feld gibst du den Namen ein, wem du die Nachricht schicken möchtest. Um das Programm zu testen kannst du auch deinen eigenen Namen eingeben.

Schritt 17

Um zu überprüfen, ob der Calliope mini mit Remote IoT verbunden ist, kannst du die beiden entsprechenden Blöcke verwenden und zur Anzeige zum Bespiel die interne RGB-LED verwenden. Dies ist aber nicht zwingend notwendig.

Schritt 17

Um Nachrichten zu empfangen braucht du nur den entsprechenden Block. Um die Variable text anzuzeigen, kannst du den Variablenblock von oben direkt in zeige Text hineinziehen.

Schritt 18

Grundsätzlich empfängt Ben alle Nachrichten, welche an ihn gesendet werden. Er kann aber herausfiltern, von wem er die Nachrichten lesen möchte. Im Beispiel lässt sich Ben nur Nachrichten von Lilli anzeigen.

Schritt 19

Über Remote IoT lässt sich nur Text verschicken. Wenn du aber Zahlen übermitteln willst, zum Beispiel die Temperatur, kannst du dies einfach umwandeln.

Schritt 20

Wenn Ben als Empfänger weiss, dass Lilli ihm die Temperatur geschickt hat und dies auch noch mit der entsprechenden Kennung versehen hat, kann er den Text wieder in eine Zahl umwandeln.

Schritt 21

Es können auch verschiedene Nachrichten mit unterschiedlicher Kennung oder an verschiedene Personen gleichzeitig verschickt werden.

Schritt 22

Auf dem empfangenden Calliope mini können die Werte auch in Variablen gespeichert werden.

Schritte 23 bis …

Und welche Ideen möchtest du mit Remote IoT verwirklichen?