NEWS
Wemos D1 mini
-
ich warte aktuell noch auf meine Bestellung. Habe aber die gleichen Artikel wie du bestellt 8-)
Ich werde als erstes ESPEasy benutzen und die Daten in FHEM einbinden.
Das ist sehr simpel und läuft auch schon mit meinem NodeMCU und einem Dummy Device.
Eine direkte Einbindung von ESP8266 Devices in ioBroker wäre natürlich perfekt.
Mit MQTT bin ich noch nicht weiter gekommen.
Mehr von meiner Seite kommt aber erst wenn ich die Teile alle da habe.
-
suche mal nach wemos
da gibt es einen Thread mi einigen Beispielen mit direkter Einbindung
Gesendet von iPhone mit Tapatalk
-
Hallo
jetzt versuch ich mich schon seit Stunden mit lesen und testen aber irgendwie komm ich nicht weiter.
Ich hab versucht mit Arduino den Wemos ins WLan netz zu bekommen mit einem Code aber das klappt schon garnicht.
Und ich finde auch keinen Code der irgendwie passt um einen DHT22 auszulesen.
Was natürlich auch blöd ist mir fehlt noch der 4,7kOhm Wiederstand, also kann ich den DHT22 nicht anschließen oder ?
Könntet ihr mir mit einem Link oder einem Code für Ardoino aushelfen den ich anpassen kann.
eigentlich ist ja egal ob die Werte in dem PI mit Homematic laufen oder direkt zum Iobroker.
Vielen Vielen Dank
Gruß
Dippi
-
Hast du den dht22 einzeln? den gibt es für den wemos auch auf platine
espeasy hat bereits mqtt und die funktionen für den dht22 integriert
-
Hi
ja ich hab den DHT einzeln erst nach dem bestellen hab ich gesehen das es den auch auf einer Platine gibt das werde ich dann bestellen wenn ich mal einen zu laufen gebracht habe.
espeasy hab ich schon gesucht aber nicht dahintergekommen wie das geht.
könntest du mich dabei anleiten ?
Gruß
Dippi
-
Ich nutze das schon lange mit dem MQTT-Adapter.
`#include <esp8266wifi.h> #include <pubsubclient.h> #include <dht.h> #include <spi.h> #include <wire.h> #include <adafruit_gfx.h> #include <adafruit_ssd1306.h> // If using software SPI (the default case): #define OLED_MOSI D7 //Connect to D1 on OLED #define OLED_CLK D5 //Connect to D0 on OLED #define OLED_DC D1 //Connect to DC on OLED #define OLED_CS D8 //Connect to CS on OLED #define OLED_RESET D3 //Connect to RES on OLED Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS); dht DHT; #define DHT22_PIN D2 const char* ssid = "deine_ssid"; const char* wpakey = "dein_key"; const char* mqtt_server = "iobroker_server_ip"; const char* login = "name"; const char* password = "passwort"; WiFiClient espClient; PubSubClient client(espClient); long lastMsg = 0; char msg[50]; char msgt[50]; int counter; String clientName; uint8_t mac[6]; String macToStr(const uint8_t* mac){ String result; for (int i = 0; i < 6; ++i) { result += String(mac[i], 16); if (i < 5){ result += ':'; } } return result; } void setup_wifi() { delay(5); WiFi.begin(ssid, wpakey); clientName += "wemos_"; WiFi.macAddress(mac); clientName += macToStr(mac); while (WiFi.status() != WL_CONNECTED) { delay(500); } } void callback(char* topic, byte* payload, unsigned int length) { } void reconnect() { while (!client.connected()) { if (client.connect((char*) clientName.c_str(), login, password)) { } else { delay(5000); } } } void setup() { display.begin(SSD1306_SWITCHCAPVCC); // Clear the buffer. display.clearDisplay(); display.display(); setup_wifi(); client.setServer(mqtt_server, 1883); client.setCallback(callback); } void ReadDHT() { int chk = DHT.read22(DHT22_PIN); dtostrf(DHT.temperature, 2, 1, msgt); sprintf(msg,"%02x:%02x:%02x:%02x:%02x:%02x/sensor/temperatur/DHT22",mac[0],mac[1],mac[2],mac[3],mac[4],mac[5]); if (client.connected()){ client.publish(msg,msgt); } display.clearDisplay(); display.setTextSize(3); display.setTextColor(WHITE); display.setCursor(0,0); display.print(msgt); display.print((char)247); display.println("C"); display.display(); dtostrf(DHT.humidity, 2, 1, msgt); sprintf(msg,"%02x:%02x:%02x:%02x:%02x:%02x/sensor/humidity",mac[0],mac[1],mac[2],mac[3],mac[4],mac[5]); if (client.connected()){ client.publish(msg,msgt); } display.setTextSize(3); display.setTextColor(WHITE); display.setCursor(0,32); display.print(msgt); display.println("%"); display.display(); } void loop() { if (!client.connected()) { reconnect(); } client.loop(); long now = millis(); if (now - lastMsg > 6000) { lastMsg = now; ReadDHT(); } }</adafruit_ssd1306.h></adafruit_gfx.h></wire.h></spi.h></dht.h></pubsubclient.h></esp8266wifi.h>` Hardware: Wemos mini DHT22 SSD1306 Display [2551_wemos.jpg](/assets/uploads/files/2551_wemos.jpg) [2551_dsc_0107.jpg](/assets/uploads/files/2551_dsc_0107.jpg) [2551_float.jpg](/assets/uploads/files/2551_float.jpg) [/i]
-
Hallo
ich hab im iobroker den mqtt Adapter per github installiert, und versuche jetzt den code per Arduino auf den Wemos zu übertragen aber bekomme beim Kompilieren folgende Fehlermeldung:
Arduino: 1.6.5 (Windows 7), Platine: "WeMos D1 R2 & mini, 80 MHz, 921600, 4M (3M SPIFFS)"
DHT22.ino:2:26: fatal error: PubSubClient.h: No such file or directory
compilation terminated.
Fehler beim Kompilieren.
Wo liegt der Fehler die WLan Daten und die Zugangs Daten vom PI hab ich eingegeben.
Noch was kann ich den DHT22 auch zu testzwecken auch ohne Wiederstand anschließen ?
Gruß
Dippi
-
dir fehlt einfach die PubSubClient.h
unter anderem ist die Datei auch für dei Verbindung am MQTT Server verantwortlich. Damit kämpfe ich zur Zeit….
Ich habe einige aus den Netz schon ausprobiert. zB.
https://github.com/knolleary/pubsubclient
Der ganze Inhalt soll in den Arduino library Ordner herein... Die PubSubClient.h befindet sich in Ordner src...
@Wall
Kannst Du deine lib hier zu verfügung stellen?
es muß ein Ordner Pubsubclient sein mit dem Inhalt aus dem Bild.
1526_unbenannt4.png -
Habe sie aus dem Bibliotheksverwalter installiert.
ArduinoIDEversion 1.8.1
PubSubClientversion 2.6.0
2551_pub.jpg
2551_pubsubclient.zip -
danke Dir!
-
Hallo
ArduinoIDEversion 1.8.1 find ich nicht
PubSubClientversion 2.6.0 ist installiert
PubSubClient.h das Verzeichnis hab ich runtergeladen und im Library Ordner eingefügt.
-
ArduinoIDEversion 1.8.1 ist deine Benutzeroberfläche mit der du den Wemos programmierst, aktuell ist 1.8.3.
Wenn du die PubSubClient 2.6.0 über die IDE installiert hast brauchst du den Ordner nicht mehr kopieren.
-
ah ok ich hab die Version 1.8.3 installiert
-
Hallo zusammen,
ich versuche gerade meine Wetterstation auf einem Wemos D1 mini Pro umzusetzten.
Dabei habe ich die html-Seiten aus Platzgründen in den SPIFF (Filesystem des Pro) ausgelagt.
Grundsätzlich funktioniert das erst einmal recht gut.
Die ersten erstellten html-Files konnte ich vom PC mit jedem beliebigen Browser aufrufen.
Sobald dies aber etwas umfangreicher werden, zeigt kein Browser (IE, Firefox, Chrome) am PC die Seiten mehr an.
Mit dem Safari auf dem iPhone geht es jedoch problemlos.
Vielleicht hat von Euch ja jemand eine Idee?
Ich bin was html angeht ein blutiger Anfänger und suche mir derzeit alles zusammen und arbeite nach dem Prinzp "try & error"
Dieser Code wird einwandfrei überall angezeigt
`<title>Wemos D1 mini Pro - WeatherStation V1.0</title> > ## [myHostname] **[functionName]** on IP: [myIPAddress] <form method="get" action="/reboot"> <fieldset> <legend>Reboot</legend> Das Geraete wird jetzt **neu gestartet!** Bitte druecke den Button zum Ausfuehren des Reboots... </fieldset> <fieldset> <legend>Reboot ausfuehren</legend> </fieldset> </form>` `[swVersion]` Dieser hingegen nur auf dem Iphone:
`<title>Wemos D1 mini Pro - WeatherStation V1.0</title>
[myHostname]
[functionName] on IP: [myIPAddress]
<fieldset>
<legend>Aktuelle Systemwerte</legend>Aktuelle Systemzeit: [localSystime]
freier Systemspeicher: [memfree]
Mess-Intervall: [measureInterval]
</fieldset>
<fieldset>
<legend>Netzwerk-Einstellungen</legend>SSID [SSID]
IP-Adresse: [myIPAddress]
SubNet-Mask: [myIPSubnet]
Gateway: [myIPGateway]
DNS-Server: [myIPDns]
NTP-Server: [actualNTP]
ZeitZone: [timeZone]
</fieldset>
<fieldset>
<legend>CCU-Einstellungen</legend>IP der CCU: [hostCCU]
CCU-Port: [hostportCCU]
Uebertagunsintervall: [transmitInterval]
</fieldset>
<fieldset>
<legend>Menu</legend>| | | | | | | |
</fieldset>`
[swVersion]
Gruss
Silvio