Hallo zusammen
Ich würde gerne noch eine ic2 2X16 hinzufügen um die Messdaten temp/Re.% nicht nur über freeboard.io zu sehen.
Danke.
#include <SPI.h>
#include <WiFi101.h>
#include <DHT.h>
// Deine SSID resp. Passwort
String ssid = "xxxxx";
String passwort = "xxxxxxxx";
// ThingId von dweet.io - kann z.B. bei https://www.guidgenerator.com/ generiert werden
String DweetGuid = "whimsical-lord";
// Update-Frequenz in ms (30000 = 0,5 Minute)
int updateFrequency = 30000;
// DHT11 an Pin 5
DHT dht(5, DHT11);
int ledPin = 6;
WiFiClient client;
long lastRun;
int status = WL_IDLE_STATUS;
void setup() {
Serial.begin(115200);
// Überprüfe, ob ein 101er WiFi vorhanden ist
if (WiFi.status() == WL_NO_SHIELD)
{
Serial.println("WiFi nicht gefunden, Abbruch");
while (1);
}
// WiFi-Verbindung aufbauen
while (status != WL_CONNECTED)
{
Serial.print("Verbinde mit ");
Serial.println(ssid);
status = WiFi.begin(ssid, passwort);
delay(5000);
}
Serial.print("Verbunden mit IP ");
IPAddress ip = WiFi.localIP();
Serial.println(ip);
// DHT-Sensor initialisieren
dht.begin();
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
}
void loop() {
lastRun = millis();
digitalWrite(ledPin, HIGH);
sendRequest();
digitalWrite(ledPin, LOW);
long nextRun = lastRun + updateFrequency;
while (nextRun > millis())
{
delay(100);
}
}
// Schicke einen Get-Request an dweet.io mit den aktuellen Messwerten des Sensors
void sendRequest()
{
// Sensor-Werte holen
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
if (isnan(temperature) || isnan(humidity))
{
Serial.println("DHT-Sensor failed");
return;
}
Serial.print("Send Request..");
client.stop();
if (client.connect("dweet.io", 80))
{
client.println("POST /dweet/for/" + DweetGuid + "?temperature=" + temperature + "&humidity=" + humidity + " HTTP/1.1");
client.println("Host: dweet.io");
client.println("User-Agent: MyMKR1000/0.1");
client.println();
Serial.println("...Request sent");
}
else
{
Serial.println("..FAILED");
}
}
Setze Deinen Code bitte in Codetags (</>-Button oben links im Forumseditor oder [code] davor und [/code] dahinter ohne *).
Das kannst Du auch noch nachträglich ändern.
Gruß Tommy
Ich nehme mal an, dass du ein I2C-LCD anschließen möchtest.
Da solltest du dir eins aussuchen, welches auch mit 3,3Volt funktioniert.
Das wird einfacher, da du sonst mit Levelshifter arbeiten musst.
Falls das Deine rele SSID/Passwortkombination ist, solltest Du die z.B. durch ****** ersetzen.
Gruß Tommy
hoi Tommy das sind natürlich nicht meine richtigen ssid pw angaben .
HotSystems:
Ich nehme mal an, dass du ein I2C-LCD anschließen möchtest.
Da solltest du dir eins aussuchen, welches auch mit 3,3Volt funktioniert.
Das wird einfacher, da du sonst mit Levelshifter arbeiten musst.
warum den das ich habe ja einen 5v Ausgang.
gruss
arduino5000:
warum den das ich habe ja einen 5v Ausgang.
gruss
Aber die Datenpins sind soweit mir bekannt, nur 3,3Volt kompatibel.
Damit funktionieren da auch nur 3,3Volt I2C dran.
HotSystems:
Aber die Datenpins sind soweit mir bekannt, nur 3,3Volt kompatibel.
Damit funktionieren da auch nur 3,3Volt I2C dran.
ja die daten pins sind wirklich 3.3 volt jetz muss ich mir ein neues lcd besorgen.
wie wüdest du den code verändern das ich beide anzeigen haben über lcd und über freeboard.
danke
gruss
arduino5000:
ja die daten pins sind wirklich 3.3 volt jetz muss ich mir ein neues lcd besorgen.
wie wüdest du den code verändern das ich beide anzeigen haben über lcd und über freeboard.
danke
gruss
Wenn du schon ein LCD hast, kannst du doch einen Levelshifter für I2C verwenden.
Und sieh dir die Beispiele in der entsprechenden Library zu LCD-I2C an.
Da gibt es passende Beispiele.
HotSystems:
Wenn du schon ein LCD hast, kannst du doch einen Levelshifter für I2C verwenden.
Und sieh dir die Beispiele in der entsprechenden Library zu LCD-I2C an.
Da gibt es passende Beispiele.
Ich Schaue mir das mal an. Ich bin noch Anfänger auf dem Arduino gebiet und habe sehr lange an dem Sketch gearbeitet. Leider ist das ganze nicht so einfach... Übung macht den meister .
danke für die info
gruss
Hab den Anfangspost editiert und ssid und password entfernt.
@arduino5000 Du solltest Dein Password des WLANs ändern.
Grüße Uwe
uwefed:
Hab den Anfangspost editiert und ssid und password entfernt.
@arduino5000 Du solltest Dein Password des WLANs ändern.
Grüße Uwe
hallo uwe natürlich sind das nicht meine echten Logins
nur Beispiele XD
gruss
arduino5000:
Ich Schaue mir das mal an. Ich bin noch Anfänger auf dem Arduino gebiet und habe sehr lange an dem Sketch gearbeitet. Leider ist das ganze nicht so einfach... Übung macht den meister .
danke für die info
Das ist ok.
Du musst dir eine Library raussuchen, die zum MRK1000 passt, dann klappt das auch.
Leider habe ich den nicht und kann da nicht helfen.