Vraag


Acties:
  • 0 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 12-09 13:14
Identities vrijgeven in HA ESP integratie
...

ESP32 IDE (voor programmeren) HA software laatste versie
...

Via ADD device in ESP HOME device toegevoegd.

Ik heb een esp32 wat met 4 x DS18B20 gekoppeld op mijn verwarming tank. Ik heb het device toegevoegd via ESP Home, maar krijg geen Identities te zien in HA. Wat wel werk is een Webpagina kaart aanmaken. Dan zie je de temperatuur resultaten wel.

Hoe kan ik deze identities zichtbaar maken als identities zodat ik deze data kan gebruiken om apparatuur te schakelen, ETC.

Om volledig te zijn is dit de ESP code:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <WiFi.h>
#include <WebServer.h>
#include <OneWire.h>
#include <DallasTemperature.h>

#define ONE_WIRE_BUS 4

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);

uint8_t sensor1[8] = { 0x28, 0xD6, 0x40, 0x8D, 0x31, 0x21, 0x03, 0x57  };

const char* ssid = "xxxxxxxxx";  // Enter SSID here
const char* password = "xxxxxxxxxxxx";  //Enter Password here

WebServer server(80);             

float tempSensor1;

void setup() {
  Serial.begin(115200);
  delay(100);
  
  sensors.begin();              

  Serial.println("Connecting to ");
  Serial.println(ssid);

  WiFi.begin(ssid, password);

  while (WiFi.status() != WL_CONNECTED) {
  delay(1000);
  Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected..!");
  Serial.print("Got IP: ");  Serial.println(WiFi.localIP());

  server.on("/", handle_OnConnect);
  server.onNotFound(handle_NotFound);

  server.begin();
  Serial.println("HTTP server started");

}
void loop() {
  server.handleClient();
}

void handle_OnConnect() {
  sensors.requestTemperatures();
  tempSensor1 = sensors.getTempC(sensor1); // Gets the values of the temperature
  server.send(200, "text/html", SendHTML(tempSensor1)); 
}

void handle_NotFound(){
  server.send(404, "text/plain", "Not found");
}

String SendHTML(float tempSensor1){
  String ptr = "<!DOCTYPE html> <html>\n";
  ptr +="<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=no\">\n";
  ptr +="<title>ESP32 Temperature Monitor</title>\n";
  ptr +="<style>html { font-family: Calibri; display: inline-block; margin: 0px auto; text-align: center;}\n";
  ptr +="body{margin-top: 30px;} h1 {color: #777777;margin: 30px auto 30px;}\n";
  ptr +="p {font-size: 18px;color: #777777;margin-bottom: 10px;}\n";
  ptr +="</style>\n";
  ptr +="</head>\n";
  ptr +="<body>\n";
  ptr +="<div id=\"webpage\">\n";
  ptr +="<h1>1 Sensor Temperatuur</h1>\n";
  ptr +="<p>Boven: ";
  ptr +=tempSensor1;
  ptr +="&deg;C</p>";
  ptr +="</div>\n";
  ptr +="</body>\n";
  ptr +="</html>\n";
  return ptr;
}

[ Voor 0% gewijzigd door Septillion op 20-04-2023 13:59 . Reden: Code tags toegevoegd ]

Beste antwoord (via lunarmoon op 21-04-2023 14:07)


  • jack zomer
  • Registratie: Oktober 2020
  • Niet online
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
esphome:
  name: "zwembad-temperatuur"

esp32:
  board: esp32dev
  framework:
    type: arduino

dallas:
  - pin: GPIO5

sensor:
  - platform: dallas
    address: 0x83092220a1ecd428
    name: "Temperatuur bodem"
  - platform: dallas
    address: 0x5f0922209b55f328
    name: "Temperatuur skimmer"
  - platform: dallas
    address: 0xe20922209d477b28
    name: "Temperatuur na verwarming"
    
# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "xxxxxx="

ota:


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "xxxxxxx"
    password: "xxxxxx"

captive_portal:



dit is mijn code voor een esp32 in ha en esphome.
Waar je eerst aangeeft dat er sensoren op een pin zitten, waarnaar je via het logboek de adressen ziet van de gevonden sensoren
Deze adressen voorzie je dan van een naam

[ Voor 3% gewijzigd door jack zomer op 20-04-2023 14:24 ]

The problem with communication is the illusion it has taken place.

Alle reacties


Acties:
  • +1 Henk 'm!

  • Gizz
  • Registratie: Maart 2001
  • Laatst online: 22:06

Gizz

Dunder-Mifflin, Inc.

Identities vrijgeven in HA ESP integratie
Wat bedoel je met een identitie vrijgeven?

Welke integratie? Die ik ken is ESPHome, maar die kun jij niet gebruiken als je handmatig firmware aan het bouwen bent via de Arduino iDE, zoals blijkt uit je gedeelde codes.

De DS18B20 in ESPHome doe je via YAML op deze manier.
Via ADD device in ESP HOME device toegevoegd.
Dan moet je dus wel eerst een ESP hebben waar ESPHome op draait. Die heb jij niet?

Voorstellen:
  • Gebruik gewoon ESPHome op je ESP als je ESPHome wilt gebruiken? :)
  • Of gooi andere firmware op je ESP, maar zorg dat hij de data doorstuurt naar een MQTT-broker om je data te ontsluiten in HA. Bijvoorbeeld ESPEasy, Tasmota.
En als je codes deelt, doe dat dan tussen code-tags. Dat maakt het een stuk leesbaarder

[ Voor 11% gewijzigd door Gizz op 20-04-2023 13:58 ]

Canon EOS 5Dm3 + 5D + 7D + 300D + 1000FN + EF 17-40 4L + EF 35 1.4L + EF 50 1.8 + EF 80-200 2.8L + 550EX


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • jack zomer
  • Registratie: Oktober 2020
  • Niet online
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
esphome:
  name: "zwembad-temperatuur"

esp32:
  board: esp32dev
  framework:
    type: arduino

dallas:
  - pin: GPIO5

sensor:
  - platform: dallas
    address: 0x83092220a1ecd428
    name: "Temperatuur bodem"
  - platform: dallas
    address: 0x5f0922209b55f328
    name: "Temperatuur skimmer"
  - platform: dallas
    address: 0xe20922209d477b28
    name: "Temperatuur na verwarming"
    
# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "xxxxxx="

ota:


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "xxxxxxx"
    password: "xxxxxx"

captive_portal:



dit is mijn code voor een esp32 in ha en esphome.
Waar je eerst aangeeft dat er sensoren op een pin zitten, waarnaar je via het logboek de adressen ziet van de gevonden sensoren
Deze adressen voorzie je dan van een naam

[ Voor 3% gewijzigd door jack zomer op 20-04-2023 14:24 ]

The problem with communication is the illusion it has taken place.


Acties:
  • 0 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 12-09 13:14
Gizz schreef op donderdag 20 april 2023 @ 13:52:
[...]

Wat bedoel je met een identitie vrijgeven?

Welke integratie? Die ik ken is ESPHome, maar die kun jij niet gebruiken als je handmatig firmware aan het bouwen bent via de Arduino iDE, zoals blijkt uit je gedeelde codes.

De DS18B20 in ESPHome doe je via YAML op deze manier.

[...]

Dan moet je dus wel eerst een ESP hebben waar ESPHome op draait. Die heb jij niet?

Voorstellen:
  • Gebruik gewoon ESPHome op je ESP als je ESPHome wilt gebruiken? :)
  • Of gooi andere firmware op je ESP, maar zorg dat hij de data doorstuurt naar een MQTT-broker om je data te ontsluiten in HA. Bijvoorbeeld ESPEasy, Tasmota.
En als je codes deelt, doe dat dan tussen code-tags. Dat maakt het een stuk leesbaarder
Je 2de voorstel is wat ik graag wil maar weet niet hoe. Maar hoe doe je dat, Graag een paar tips

met identities bedoel ik de 'sensor' waarde. Trouwens deze code is met een sensor maar ik heb er 4 sensors aan hangen. So lijk het html pagina:

Afbeeldingslocatie: https://tweakers.net/i/pY2R4DYyZQTFXsg2XIH38VBtcps=/full-fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():fill(white):strip_exif()/f/image/SM5JPjSy0oUfOS4VVkH1fHkr.jpg?f=user_large

de influnarmoon schreef op donderdag 20 april 2023 @ 14:12:

[...]


Je 2de voorstel is wat ik graag wil maar weet niet hoe. Maar hoe doe je dat, Graag een paar tips

[ Voor 22% gewijzigd door lunarmoon op 20-04-2023 14:24 ]


Acties:
  • 0 Henk 'm!

  • Gizz
  • Registratie: Maart 2001
  • Laatst online: 22:06

Gizz

Dunder-Mifflin, Inc.

@lunarmoon kun je ook aangeven waarom je optie 2 wil, dus een andere firmware dan ESPHome?

Maar alvast voor ESPEasy:

Zet ESPEasy op je ESP
  • Verbind met de wifi van de ESP, open de webpage en stel de basics zoals Wifi in
  • Voeg via de webpage de DS18B20 toe
  • Geef aan dat hij de data via MQTT naar je broker moet versturen
En dan in HA:
  • Maak in configuration.yaml een MQTT-sensor aan met het topic van de DS18B20
Voorbeeldje van de YAML:
code:
1
2
3
4
5
6
7
mqtt:
  sensor:
    - name: "Temperatuur CV-aanvoer"
      state_topic: "ESP_zolder/CV-aanvoer/Temperature"
      unit_of_measurement: "°C"
      device_class: "temperature"
      unique_id: "cvaanvoer"


Maar nogmaals, waarom wil je het per se met andere firmware dan ESPHome? Want met ESPhome kun je veel stappen overslaan (geen MQTT-broker nodig, niet los hoeven verbinden met de ESP om wifi etc. in te stellen. In ESPHome stel je gewoon de instellingen in van de DS18B20 en dan heb je eigenlijk het meeste werk wel gehad. Oftewel het voorbeeld dat @jack zomer al niet zien.

Ik zou het gewoon via ESPHome doen en even deze tutorial volgen:

[ Voor 24% gewijzigd door Gizz op 20-04-2023 14:35 ]

Canon EOS 5Dm3 + 5D + 7D + 300D + 1000FN + EF 17-40 4L + EF 35 1.4L + EF 50 1.8 + EF 80-200 2.8L + 550EX


Acties:
  • 0 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 12-09 13:14
Is de api key een zelf gegenereerd key

Acties:
  • 0 Henk 'm!

  • S-te-fan
  • Registratie: Juni 2010
  • Laatst online: 22:30
Begin eens bij het begin, want je hebt het over esphome. Maar je gebruikt geen esphome.

Je code moet qua format eruit zien zoals @jack zomer ook gemaakt heeft.

Acties:
  • +2 Henk 'm!

  • lunarmoon
  • Registratie: Oktober 2002
  • Laatst online: 12-09 13:14
Hoi Allemaal,

Graag wil ik Tweaker @Gizz en Tweaker @jack zomer bedanken voor hun waardevolle reacties. Heeft wel wat tijd genomen maar het werkt. Weet nu wat om te doen en desnoods ook andere integraties te maken.

Het API key heeft zat integratie ESP Home. Deze is het voorbeeld die ik nu verder zal uitwerken.

Afbeeldingslocatie: https://tweakers.net/i/sDWOhjReaMNGtv8ns66JHYmsF8E=/full-fit-in/4920x3264/filters:max_bytes(3145728):no_upscale():strip_icc():fill(white):strip_exif()/f/image/y7gaPSJSzWfErd3gCegQiN5C.jpg?f=user_large
Pagina: 1