Überblick

Auf den Mikrocontroller (das Herzstück) des D1 mini muß ein Programm - eine sogenannte Firmware - installiert werden. Diese steuert die Funktionen des Mikrocontrollers. Bevor das Programm übertragen wird, müssen Sie es ein klein wenig anpassen: Sie müssen die Daten Ihres lokalen WLANs und den im vorherigen Schritt zugeteilten API-Key eingeben, damit sich der CO2-Guard mit dem WLAN verbinden kann, um dann Daten ins Internet an den Cloud-Server zu senden. Dies geschieht mit einer speziellen (kostenlosen) Software zur Softwareentwicklung, der Arduino-IDE (integrierte Entwicklungsumgebung). Der Programmcode wird dann in eine für den Mikrocontroller verständliche digitale Form übersetzt (compiliert) und übertragen. Dazu sind keine Programmierkenntnisse erforderlich.
Auch wenn Sie die WLAN-Funktion nicht nutzen wollen, ist es erforderlich, daß Sie den Programmcode compilieren und übertragen.

Arduino IDE installieren

Wenn Sie die Arduino-IDE bereits für andere Projekte installiert haben, können Sie diesen Schritt überspringen.

  1. Auf der Webseite von Arduino können Sie die Arduino IDE kostenlos herunterladen.

    Wählen Sie die normale Version für Systeme ab Windows 7.
  2. Auf der nachfolgenden Seite können Sie eine Spende entrichten. Wenn Sie dies nicht wollen, klicken Sie einfach auf Just Download.
  3. Je nach Browser-Einstellungen startet der Download oder Sie werden nach einem Zielordner gefragt oder Sie können die Ausführung direkt starten.
  4. Sobald das Download abgeschlossen ist, starten Sie die Ausführung der heruntergeladenen Datei, wenn dies noch nicht geschehen ist. Klicken Sie dazu doppelt auf den Dateinamen im Explorer.
  5. Die Installation folgt den üblichen Schritten.

    Klicken Sie im ersten Fenster auf I Agree:
  6. Belassen Sie die Auswahl der zu installierenden Komponenten wie vorgegeben und klicken Sie auf Next:
  7. Ändern Sie ggf. den Zielordner oder belassen Sie es bei der Vorgabe. Klicken Sie dann auf Install:
  8. Während der Installation werden Sie mehrmals gefragt, ob Sie die Gerätesoftware (das sind die USB-Treiber) installieren wollen. Klicken Sie immer auf Installieren:
  9. Nach der Installation beenden Sie die Einrichtung mit Close. Die Arduino-IDE ist jetzt auf Ihrem Computer installiert.

USB-Treiber installieren

Der D1 mini ist mit einem USB-Controller-Chip (CH340 von WCH) ausgestattet, der von Windows nicht automatisch unterstützt wird. Sie müssen die Treiber deshalb manuell installieren (eine ausführliche englischsprachige Anleitung auch für Unix und Mac finden Sie bei Sparkfun). Es kann aber sein, daß dies schon früher erfolgte. Deshalb testen Sie zuerst, ob der Treiber eingerichtet ist:
  1. Öffnen Sie das Windows-Kontextmenü mit der Tastenkombination <Windows>+<x> und wählen Sie den Eintrag Geräte-Manager.
  2. Im Geräte-Manager werden alle Komponenten Ihres Systems angezeigt.
    Erweitern Sie die Ansicht bei Anschlüsse (COM & LPT), indem Sie auf den Pfeil links daneben klicken. Welche Inhalte hier zu sehen sind, ist unwichtig:
  3. Verbinden Sie jetzt den aufgebauten CO2-Guard (genauer gesagt: den D1 mini) per USB mit Ihrem PC.

    Auf dem D1 mini blinkt die kleine blaue LED kurz auf und es wird vermutlich ein Ton auf dem PC abgespielt, der anzeigt, daß ein USB-Gerät angeschlossen wurde.
  4. Werfen Sie einen Blick in den Geräte-Manager: Wenn dort ein neuer Eintrag "USB-SERIAL CH340" angezeigt wird, ist alles in Ordnung. Sie haben bereits den erforderlichen USB-Treiber und können auf die folgende Installation verzichten. Merken Sie sich aber unbedingt, welcher COM-Port am Ende des Eintrags in Klammern angezeigt wird. Im Beispiel ist es COM5 aber bei Ihnen kann das ein beliebiger anderer sein. Sie können den Geräte-Manager jetzt schließen.

    Ist der Treiber noch nicht installiert, wird unter dem neuen Eintrag Andere Geräte das Gerät USB Serial mit einem Ausrufezeichen davor angezeigt. In dem Fall führen Sie die folgende Einrichtung durch. Schließen Sie noch nicht den Geräte-Manager.
  5. Sie benötigen das Installationsprogramm für den Treiber. Das finden Sie auf der Webseite des Herstellers oder direkthier. Speichern Sie das Programm wieder auf Ihrem PC oder führen Sie es direkt aus. Nach dem Download starten Sie das Programm durch Doppelklick auf den Dateinamen im Explorer.
  6. Sie müssen im Installationsprogramm lediglich auf Install klicken.
  7. Nachdem die Treiber auf Ihrem PC installiert sind, erscheint eine Meldung: "Driver install success!". Klicken Sie auf OK und schließen Sie das Installationsprogramm, in dem Sie im Fenster oben rechts auf das Schließen-Symbol ("X") klicken.
  8. Wechseln Sie zu dem noch offenen Fenster des Geräte-Managers. Dort wird Ihnen nun auch der Eintrag "USB-SERIAL CH340" angezeigt (s. o.). Merken Sie sich den COM-Port, der dahinter in Klammern steht und schließen Sie den Geräte-Manager.

Arduino-IDE konfigurieren

Starten Sie das Programm Arduino auf Ihrem PC (Desktop-Icon oder Start-Menü). Wenn Sie das erste Mal die IDE starten, erscheint eventuell eine Warnung der Windows Defender Firewall. Klicken Sie in dem Hinweis auf Zugriff zulassen. Es öffnet sich das Eingabefenster, das wie ein Texteditor aussieht und in dem schon ein paar Zeilen stehen. Bevor es weiter geht, müssen noch ein paar Einstellungen vorgenommen werden.

  1. Wählen Sie Datei|Voreinstellungen.

    Im Eingabefeld Zusätzliche Boardverwalter-URLs tragen Sie folgenden Text ein:
    https://arduino.esp8266.com/stable/package_esp8266com_index.json
    Gibt es hier schon Einträge, hängen Sie am Ende ein Komma (",") an und dann die o. g. URL.

    Schließen Sie den Dialog mit OK.
  2. Öffnen Sie Werkzeuge|Board: ...|Boardverwalter.

    Tragen Sie in das Eingabefeld am oberen Rand "esp8266" ein. Nach einem kurzen Moment wird das zugehörige Paket angezeigt:
  3. Fahren Sie mit der Maus in den grau-blauen Bereich mit der Paketbeschreibung. Daraufhin wird im rechten Bereich die Schaltfläche Installieren angezeigt. Links daneben können Sie eine Version auswählen. Die Software für den CO2-Guard wurde mit Version 2.7.4 getestet - belassen Sie also die Einstellung wie gezeigt und klicken Sie auf Installieren.
  4. Am unteren Fensterrand der Boardverwaltung wird der Fortschritt des Downloads angezeigt. Sobald die Installation abgeschlossen ist, klicken Sie auf Schließen.
  5. Wählen Sie den Menüeintrag
    Werkzeuge|Board: ...|ESP8266 Boards (2.7.4)|LOLIN(WEMOS) D1 R2 & mini.
    Beachten Sie, daß es mehrere ähnliche Einträge gibt.
  6. Kontrollieren Sie die Einstellungen im Menü Werkzeuge. Dort sollten bereits die gleichen Angaben stehen, wie im rot markierten Bereich in der folgenden Abbildung. Andernfalls ändern Sie die Parameter entsprechend.

    Schließen Sie anschließend das Menü Werkzeuge, falls es noch aufgeklappt ist, in dem Sie auf eine beliebige freie Fläche klicken.
  7. Schließen Sie den D1 mini des CO2-Guards an den USB-Port Ihres PCs, falls Sie ihn zwischendurch getrennt haben sollten und warten Sie etwa 5 Sekunden.
  8. Wählen Sie im Untermenü Werkzeuge|Port den USB-COM-Port, der Ihnen zuvor im Geräte-Manager für den CH340 angezeigt wurde. Im Beispiel war es COM5 aber bei Ihnen kann es ein anderer sein.

Programmcode anpassen, compilieren und übertragen

Nachdem alle Vorbereitungen getroffen sind, wird das Programm für den CO2-Guard von Ihnen angepaßt und dann auf den D1 mini übertragen.
  1. Downloaden Sie das Zip-Archiv mit dem Programmcode und speichern Sie es an einem beliebigen Ort (den Sie sich aber merken müssen) auf Ihrem Computer.
  2. Öffnen Sie den (Windows-) Explorer und wechseln Sie in das Verzeichnis mit dem Download.

    Klicken Sie mit der rechten Maustaste auf das heruntergeladene Archiv und wählen Sie im Kontextmenü den Eintrag Alle extrahieren ...

    Es öffnet sich ein Dialogfenster, in dem Sie auf Extrahieren klicken.

    Der Inhalt des Zip-Archivs wird in einen gleichnamigen Ordner entpackt und ein weiteres Explorer-Fenster öffnet sich, das den Inhalt des Ordners anzeigt. In dem Ordner co2-guard befinden sich die Programmdateien.
  3. Wechseln Sie (mit einem Doppelklick) in den neuen Ordner und klicken Sie doppelt auf die Datei co2-guard.ino, so daß sich die Arduino-IDE öffnet (der Suffix .ino wird bei Ihnen eventuell nicht angezeigt).
  4. Die Arduino-IDE zeigt alle Dateien aus dem Ordner an und Sie können am oberen Rand über die Tabs wechseln. Wechseln Sie zur Datei config.h.
  5. In der Datei config.h konfigurieren Sie das Verhalten des CO2-Guards. Dazu können Sie Funktionen aktivieren oder deaktivieren und vor allem das WLAN-Konfigurieren (wenn Sie es nutzen wollen).

    Immer wenn Sie den CO2-Guard in einem neuen (anderen) WLAN betreiben wollen, müssen Sie die Konfiguration hier anpassen und das Programm neu auf den D1 mini übertragen (s. u.).

    Die ersten zwei Zeilen ermöglichen es Ihnen, den Funktionsumfang festzulegen. Wenn Sie eine Funktion nicht nutzen wollen, dann kommentieren Sie die Anweisung durch zwei Slash-Zeichen ("//") am Zeilenanfang aus. Im Regelfall müssen Sie die beiden Zeilen nicht verändern.
    #define WLAN_SUPPORT   
    #define ALARM_SUPPORT  
    
    Die Funktionen sind im einzelnen:

    #define WLAN_SUPPORT Legt fest, ob die WLAN-Funktionalität zur Übertragung der Meßwerte an den IoT-Service genutzt werden soll. Wenn Sie kein WLAN-Zugriff haben oder keine Daten übertragen wollen, kommentieren Sie die Zeile aus.

    #define ALARM_SUPPORT Bei überschreiten des letzten Grenzwertes von 2000 ppm (nur noch die rote LED leuchtet) ertönt im Abstand von 10 Sekunden ein Alarm. Wenn Sie keine Soundausgabe wünschen, kommentieren Sie die Zeile aus.

    Nur wenn Sie den WLAN-Zugriff aktiviert haben (Voreinstellung), müssen Sie auch die folgenden Zeilen bearbeiten:
    const char* ssid = "abc";          
    const char* password = "abc";      
    String APIKey = "123";             
    

    const char* ssid = "abc"; Zwischen den Anführungszeichen (anstelle von abc) tragen Sie die SSID Ihres WLAN-Routers ein. Dies ist der Klartextname des WLANs mit dem Sie sich verbinden wollen. Achten Sie auf Groß-/Kleinschreibung. Wenn Sie auf Ihrem Smartphone die WLAN-Einstellungen öffnen, dann sehen Sie die Netzwerke, die sich in Reichweite befinden und deren SSID.

    const char* password = "abc"; Hier müssen Sie das Paßwort für den Zugriff auf das WLAN zwischen den Anführungszeichen (anstelle von abc) eintragen. Dies ist das gleiche Paßwort, wie Sie es auf Ihrem Smartphone eingeben würden, wenn Sie sich mit dem ausgewählten WLAN verbinden wollen. Achten Sie auf Groß-/Kleinschreibung.

    String APIKey = "123"; Zwischen den Anführungszeichen (anstelle von 123) tragen Sie den API-Key ein, den Sie zuvor auf der Webseite von ThingSpeak für den IoT-Service angezeigt bekommen haben (Ihren individuellen).

    Hier ein fiktives Beispiel, wie es aussehen kann:
      const char* ssid = "cabane";   
      const char* password = "xFGht6$";
      String APIKey = "11L7NxxxxxD94N";
    
    Es gibt weitere Einstellungsmöglichkeiten in der Datei config.h, die Sie aber zuerst einmal nicht benötigen oder nur für Experten relevant sind. Sie sind mit den Änderungen fertig.
  6. Jetzt kommt der entscheidende Schritt: Der Programmcode wird compiliert und anschließend wird die Firmware auf den D1 mini übertragen.

    Dazu müssen Sie nur oben auf das folgende Symbol klicken oder Sketch|Hochladen wählen.

    Der Übersetzungsvorgang (compilieren) wird etwa eine Minute benötigen. Zwischen dem Texteingabebereich und dem (schwarzen) Statusbereich im unteren Fensterbereich der Arduino-IDE sehen Sie Sie im grünen Bereich einen Fortschrittsbalken:

    Der Bereich mit dem Fortschrittsbalken darf nicht rot werden. Andernfalls liegt ein Fehler im Programmcode vor, den Sie beheben müssen. Der Text weist Sie auf die Ursache und die Position wird im Quelltext rot unterlegt markiert.

    Nach dem compilieren wird das Programm auf den angeschlossenen D1 mini übertragen. Zuerst sehen Sie eine Information über den Speicherbedarf des Programms und daß eine Verbindung zum eingestellten COM-Port (hier: COM3) aufgebaut wird:

    Wenn die Verbindung zum D1 mini hergestellt werden konnte, wird die Software übertragen:

    Es kann sein, daß keine Verbindung aufgebaut werden kann. In dem Fall gibt es verschiedene Formen von Fehlermeldungen. Ziehen Sie dann den D1 mini vom USB-Port ab und schließen Sie ihn nach ein paar Sekunden wieder an. Starten Sie den ganzen Vorgang erneut.

    Ist der Vorgang abgeschlossen, sind Sie fertig! Sie können die Arduino-IDE beenden. Schließen Sie spätestens jetzt das Gehäuse.
    Der CO2-Guard ist jetzt komplett eingerichtet, betriebsbereit und startet automatisch.
Im nächsten Schritt erfahren Sie alles zur Bedienung und wie Sie die Daten in der Cloud betrachten können.