MKR1000 nahtlos mit Google Sheets verbinden: Sensordaten per WLAN hochladen
Benötigte Komponenten
| Arduino MKR1000 | 1 Stück |
| DHT11 Temperatur- & Feuchtigkeitssensor (4 Pins) | 1 Stück |
| Steckbrett & Jumper-Kabel | 1 Set |
Software & Dienste
- Arduino IDE
- Google Sheets + Google Apps Script
- PushingBox (kostenlos, max. 1000 Requests/Tag)
Projektziel
Sensordaten (hier: DHT11) vom MKR1000 per WLAN an Google Sheets senden – ohne Kreditkarte, ohne proprietäre Cloud-APIs. PushingBox dient als HTTPS-Proxy, da der MKR1000 kein natives HTTPS beherrscht.
Teil 1: Google Sheet & Apps Script einrichten
- Google-Konto anmelden, neue Google Sheet erstellen („Umweltdaten“).
- Spreadsheet-ID aus der URL kopieren (zwischen
/d/und/edit). - Erweiterungen → Apps Script öffnen.
- Skriptnamen vergeben, folgenden Code einfügen & Spreadsheet-ID eintragen:
var id = 'IHRE_SPREADSHEET_ID_HIER'; // Spreadsheet ID - Datei → Alle speichern, dann Bereitstellung → Neue Bereitstellung → Typ: Web-App.
- Einstellungen:
- Ausführen als: Ich (Ihre E-Mail)
- Zugriff: Jeder, auch anonym
- Generierte Web-App-URL kopieren – wird für PushingBox benötigt.
Teil 2: PushingBox konfigurieren
- Bei PushingBox mit Google anmelden.
- My Services → Add a service → CustomURL auswählen.
- Root URL: die kopierte Web-App-URL (
https://script.google.com/...), Methode: GET. - My Scenarios → Create a scenario → Namen vergeben → „Add an action to this service“ wählen.
- GET-Parameter-String einfügen:
?humidityData=$humidityData$&celData=$celData$&fehrData=$fehrData$&hicData=$hicData$&hifData=$hifData$ - DeviceID kopieren (für Arduino-Code & Test).
Teil 3: API testen (Browser)
In Browser-Adresszeile eingeben (DeviceID ersetzen):
https://api.pushingbox.com/pushingbox?devid=IHR_DEVICEID&humidityData=33&celData=44&fehrData=111&hicData=22&hifData=77
Google Sheet sollte neue Zeile mit Testdaten zeigen. Klappt es nicht → Teile 1–2 prüfen.
Teil 4: MKR1000 programmieren
Hardware
- DHT11 an 5V (MKR1000 5V-Pin), GND, Daten an Pin 5 (D5).
Software-Vorbereitung
- Arduino IDE 1.6.4+
- Board-Paket: Arduino SAMD Boards (MKR1000) im Boardverwalter installieren.
- Bibliotheken: WiFi101, Adafruit DHT.
Code anpassen & hochladen
Im Sketch drei Werte eintragen:
MY_SSID– WLAN-NameMY_PWD– WLAN-Passwortdevid– PushingBox DeviceID
Sketch hochladen, Seriellen Monitor (9600 Baud) öffnen. Alle 10 s werden Daten gesendet & im Sheet protokolliert (Spalten: Timestamp, Humidity, °C, °F, Heat Index °C, Heat Index °F).
Hinweise
- PushingBox kostenlos: 1000 Requests/Tag → 10 s Intervall = 8640 Requests/Tag → Intervall erhöhen (z. B. 60 s) für Dauerbetrieb.
- DHT11 liest nur ganzzahlige Werte → Code nutzt
int. Für Dezimalwertefloat& String-Konvertierung anpassen. - Projekt erweiterbar: beliebige Sensoren, Kombination mit ThingSpeak für Grafiken.
Herstellungsprozess
- Google Assistant auf MATRIX Voice Raspberry Pi installieren – Schritt-für-Schritt-Anleitung
- Temperatur- und Luftfeuchtedaten zwischen zwei Arduinos via Firebase übertragen
- Monitor-Ambilight selbst bauen mit Arduino Nano & WS2812B LEDs
- Kabellose Datenübertragung per Magnetfeld: Arduino & Infineon 3D-Sensor (TLE493D)
- Klassisches Pong-Spiel auf Arduino UNO mit OLED-Display bauen – Schritt-für-Schritt-Tutorial
- Arduino Mega: Fotos aufnehmen & automatisch in Google Drive hochladen
- Arduino Audio-Frequenz-Detektor – Lauteste Schallpeaks mit hochsensiblem Modul messen
- Selbstbau-Tamagotchi: Digitales Haustier mit Arduino
- Intelligenter kabelloser Lichtschalter-Controller: Arduino-basierter Fernschalter-Manipulator
- Arduino Tic Tac Toe mit MAX7219 LED-Matrix und Karton-Gehäuse