Read the statement by Michael Teeuw here.
Display different Roomtemperature on MagicMirror
-
@Xilef
Perfect. This is the right setting.You need to replace the
##, too.
It will look something like:const char* ssid = "MY_WIFI_NETWORK"; const char* password = "123ABC456"; IPAddress local_IP(192, 168, 178, 106); IPAddress gateway(192, 168, 178, 1); IPAddress subnet(255, 255, 255, 0); IPAddress primaryDNS(192, 168, 178, 1); IPAddress secondaryDNS(8, 8, 8, 8);To check if everything is set up correctly you can run:
/bin/nc -w3 192.168.178.106 80 -
@wishmaster270 the “/bin/nc -w3 192.168.178.106 80” command on the serial monitor message line?
:/


I would suggest to remove the clamp behind the ; ??
-
@Xilef
Sorry, my fault. You need to change line 52 to:if (!bme.begin(0x76)) {Copy&Paste mistake of me
-
@wishmaster270 i installed the module, but i cant display the data

what am i doing wrong, ah the esp32 says he couldnt find a sensor, thats weird
(edit: i tried another one and it worked this time) -
@Xilef
You will need the MMM-Temperature module and not the Embed module as you do not want to display a website but parse the JSON data object and display its contents.
The config will look something like:{ module: "MMM-Temperature", position: "bottom_right", config: { sensors: [ { name: "ESP", script: "/bin/nc", args: "-w3 192.168.178.106" }, ] }, },But you will need to fix the missing sensor first.
Can you please check your wiring and use this sketch instead of the other one. I only removed one line which i do not think is the problem but i can not test the sketch at the moment.
#include <WiFi.h> #include <Wire.h> #include <Adafruit_Sensor.h> #include <Adafruit_BME280.h> const char* ssid = "##ADD_WIFI_SSID_HERE"; const char* password = "##ADD_WIFI_PASSWORD_HERE"; //ENTER STATIC IP OF THE ESP32 BOARD HERE IPAddress local_IP(192, 168, 0, 2); IPAddress gateway(192, 168, 0, 1); IPAddress subnet(255, 255, 255, 0); IPAddress primaryDNS(192, 168, 0, 1); IPAddress secondaryDNS(8, 8, 8, 8); Adafruit_BME280 bme; WiFiServer server(80); void setup() { Serial.begin(115200); if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS)) { Serial.println("STA Failed to configure"); } Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected!"); Serial.print("IP address: "); Serial.println(WiFi.localIP()); Serial.print("ESP Mac Address: "); Serial.println(WiFi.macAddress()); Serial.print("Subnet Mask: "); Serial.println(WiFi.subnetMask()); Serial.print("Gateway IP: "); Serial.println(WiFi.gatewayIP()); Serial.print("DNS: "); Serial.println(WiFi.dnsIP()); if (!bme.begin(0x76)) { Serial.println("Couldn't find sensor!"); while (1); } server.begin(); } void loop() { float temp = bme.readTemperature(); float tempf = temp * 1.8 + 32; float rel_hum = bme.readHumidity(); WiFiClient client = server.available(); if (client) { Serial.println("New Client."); client.println("{"); client.print(" \"temperature_c\": "); client.print(temp); client.println(","); client.print(" \"temperature_f\": "); client.print(tempf); client.println(","); client.print(" \"humidity\": "); client.print(rel_hum); client.println(","); client.println(" \"error\": false"); client.println("}"); client.stop(); Serial.println("Client disconnected."); Serial.println(""); } delay(100); } -
@wishmaster270 i connected an other sensor and it doesnt showed me the error message, i will try the sketch tomorrow, the MMM_Temperature module is installed and works, but doesnt show any data, im gona try to fix it tomorrow
-
@wishmaster270 everything worked, you just forgot to add the “80” here:

i just set up a second sensor and cloned the module
if i go into my browser and type the two different IPs every sensor shows his own data, but the mirror displays 2times the data of sensor 2:

(sensor1: “test” | sensor2: “test2”)
how do i fix that? -
@Xilef Perfect. One step further.
You only need one instance of the module. So your config will look something like:
{ module: "MMM-Temperature", position: "middle_center", config: { sensors: [ { name: "test", script: "/bin/nc", args: "-w3 192.168.178.106 80" }, { name: "test2", script: "/bin/nc", args: "-w3 192.168.178.108 80" }, ] }, }, -
@wishmaster270 yes, it works
and in the future i can experiment with the MMM-ValuesByNotification Module to customize the module, right?
and a big thank you for the help and the quick reply
-
@Xilef Perfect.
Yes, the ValuesByNotification module is very powerful but the configuration can be get complex very quickly. You will need my other module CommandToNotification, too.
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login
