Toon posts:

[ESPhome] Problemen verbinden DS18B20 via ESP32 met HA

Pagina: 1
Acties:

Vraag


  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
Hi allemaal,

Nog een redelijke beginner in home Assistant op mijn RPI, maar lichten aanschakelen en meterstanden uitlezen heb ik voor melkaar 😊

Ik heb nu 5 Dallas (DS18B20) sensoren verbonden via een SEEED studio Xiao ESP32-C3 met home assistant. Dit lijkt eerst te werken maar heb aantal problemen die ik niet opgelost krijg ook niet met veel gegoogle..
De 5 temperaturen geeft hij op zich meestal keurig weer.

De WIFI verbinding valt regelmatig uit (not connected) om dan na enkele seconden meestal weer terug te keren. Ik heb daar alles wat ik kon vinden toegepast, (energy save mode uit, fixed IP etc) maar verbining blijft af en toe wegvallen.
MCU staat naast de router en geeft goed signaal aan, dat is geen probleem.
Als ik de logs via wifi aanvraag verlies ik altijd na enige tijd de wifi verbining, krijg ik alleen terug als ik device opnieuw benader via USB. Dan liijkt hij zich opnieuw op te bouwen en werkt het weer.
Andere vreemde is dat als de verbinding keurig werkt mijn router de ESP32 niet ziet. Terwijl ik hem wel kan pingen met reply, dat is toch vreemd?

Laatste punt waar ik mee worstel is feit dat als ik hem los haal van RPI USB en er voeding via USB insteek hij nooit verbind met wifi. Lijkt wel of hij niet start of z’n code is vergeten maar pas al ik hem weer aan de RPI hang via USB en de bijv een log via de USB aanvraag lijkt hij weer te starten en werkt alles weer. Zinloos als de sensoren alleen maar werken verbonden met de RPI.

Ik heb nog een heleboel vragen (zoals kan ik ook Bluetooth gebruiken om temps over te dragen), maar die zijn voor later. Ik krijg dit niet opgelost ondanks veel proberen en googlen.

Alvast dank, Patrick

Ik kan evt logs toevoegen als dat helpt of de configuratie?

Alle reacties


  • jobr
  • Registratie: Januari 2009
  • Laatst online: 04-02 22:23
patrickvdhart schreef op dinsdag 17 januari 2023 @ 16:00:
Als ik de logs via wifi aanvraag verlies ik altijd na enige tijd de wifi verbining, krijg ik alleen terug als ik device opnieuw benader via USB.
Dan start ie inderdaad weer opnieuw op. Druk de volgende keer maar eens op de reset knop. Dan gaat het waarschijnlijk ook weer werken.

  • jobr
  • Registratie: Januari 2009
  • Laatst online: 04-02 22:23
patrickvdhart schreef op dinsdag 17 januari 2023 @ 16:00:
Laatste punt waar ik mee worstel is feit dat als ik hem los haal van RPI USB en er voeding via USB insteek hij nooit verbind met wifi. Lijkt wel of hij niet start of z’n code is vergeten maar pas al ik hem weer aan de RPI hang via USB en de bijv een log via de USB aanvraag lijkt hij weer te starten en werkt alles weer.
Mogelijk is die voeding niet helemaal jovel. Probeer eens een andere.
En gebruik dan ook de kabel die anders in je Pi steekt, als je dat al niet deed.

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
Dank voor je reactie - dezelfde kabel gebruikte ik al, ik zal ook eens de reset knop proberen

  • septillion
  • Registratie: Januari 2009
  • Laatst online: 04-02 09:29

septillion

Moderator Wonen & Mobiliteit
HA zelf heeft niets voor een ESP. Dus wat draai je daarop? ESPhome? Zo ja, daar even de code van delen.

[Voor 21% gewijzigd door septillion op 17-01-2023 21:19]


  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
septillion schreef op dinsdag 17 januari 2023 @ 21:18:
HA zelf heeft niets voor een ESP. Dus wat draai je daarop? ESPhome? Zo ja, daar even de code van delen.
Ik gebruik inderdaad ESPHome. Daar heb ik de MCU gevonden en geconfigureerd via ESPHOME.

Ik zal de exacte config file morgen avond toevoegen (kan er nu niet bij, ben niet thuis), heb nu config entry file toegevoegd, misschine geeft dat al inzicht.


config_entry_esphome:
JSON:
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.1.2",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.10.7",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Europe/Amsterdam",
    "os_name": "Linux",
    "os_version": "5.15.76-v8",
    "supervisor": "2022.12.1",
    "host_os": "Home Assistant OS 9.4",
    "docker_version": "20.10.19",
    "chassis": "embedded",
    "run_as_root": true
  },
  "custom_components": {},
  "integration_manifest": {
    "domain": "esphome",
    "name": "ESPHome",
    "config_flow": true,
    "documentation": "https://www.home-assistant.io/integrations/esphome",
    "requirements": [
      "aioesphomeapi==13.0.2"
    ],
    "zeroconf": [
      "_esphomelib._tcp.local."
    ],
    "dhcp": [
      {
        "registered_devices": true
      }
    ],
    "codeowners": [
      "@OttoWinter",
      "@jesserockz"
    ],
    "dependencies": [
      "bluetooth"
    ],
    "after_dependencies": [
      "zeroconf",
      "tag"
    ],
    "iot_class": "local_push",
    "integration_type": "device",
    "loggers": [
      "aioesphomeapi",
      "noiseprotocol"
    ],
    "is_built_in": true
  },
  "data": {
    "config": {
      "entry_id": "3848ed40422facc0aa9b216e20b049fc",
      "version": 1,
      "domain": "esphome",
      "title": "vvw-temps-seeed",
      "data": {
        "host": "192.168.178.107",
        "port": 6053,
        "password": "",
        "noise_psk": "**REDACTED**"
      },
      "options": {},
      "pref_disable_new_entities": false,
      "pref_disable_polling": false,
      "source": "zeroconf",
      "unique_id": "68:67:25:ee:8b:e4",
      "disabled_by": null
    },
    "storage_data": {
      "device_info": {
        "uses_password": false,
        "name": "vvw-temps-seeed",
        "mac_address": "**REDACTED**",
        "compilation_time": "Jan 17 2023, 07:56:15",
        "model": "seeed_xiao_esp32c3",
        "manufacturer": "Espressif",
        "has_deep_sleep": false,
        "esphome_version": "2022.12.3",
        "project_name": "",
        "project_version": "",
        "webserver_port": 0,
        "bluetooth_proxy_version": 0
      },
      "services": [],
      "api_version": {
        "major": 1,
        "minor": 7
      },
      "sensor": [
        {
          "object_id": "temperature_1",
          "key": 2972574237,
          "name": "Temperature 1",
          "unique_id": "dallas-5f8180811e64ff28",
          "disabled_by_default": false,
          "icon": "",
          "entity_category": 0,
          "device_class": "temperature",
          "unit_of_measurement": "\u00b0C",
          "accuracy_decimals": 1,
          "force_update": false,
          "state_class": 1,
          "last_reset_type": 0
        },
        {
          "object_id": "temperature_2",
          "key": 2972574238,
          "name": "Temperature 2",
          "unique_id": "dallas-bddd98811e64ff28",
          "disabled_by_default": false,
          "icon": "",
          "entity_category": 0,
          "device_class": "temperature",
          "unit_of_measurement": "\u00b0C",
          "accuracy_decimals": 1,
          "force_update": false,
          "state_class": 1,
          "last_reset_type": 0
        },
        {
          "object_id": "temperature_3",
          "key": 2972574239,
          "name": "Temperature 3",
          "unique_id": "dallas-c93296811e64ff28",
          "disabled_by_default": false,
          "icon": "",
          "entity_category": 0,
          "device_class": "temperature",
          "unit_of_measurement": "\u00b0C",
          "accuracy_decimals": 1,
          "force_update": false,
          "state_class": 1,
          "last_reset_type": 0
        },
        {
          "object_id": "temperature_4",
          "key": 2972574232,
          "name": "Temperature 4",
          "unique_id": "dallas-8bb483811e64ff28",
          "disabled_by_default": false,
          "icon": "",
          "entity_category": 0,
          "device_class": "temperature",
          "unit_of_measurement": "\u00b0C",
          "accuracy_decimals": 1,
          "force_update": false,
          "state_class": 1,
          "last_reset_type": 0
        },
        {
          "object_id": "temperature_5",
          "key": 2972574233,
          "name": "Temperature 5",
          "unique_id": "dallas-d45097811e64ff28",
          "disabled_by_default": false,
          "icon": "",
          "entity_category": 0,
          "device_class": "temperature",
          "unit_of_measurement": "\u00b0C",
          "accuracy_decimals": 1,
          "force_update": false,
          "state_class": 1,
          "last_reset_type": 0
        }
      ],
      "text_sensor": []
    }
  }
}


Volgende keer graag zelf code-tags toepassen

[Voor 0% gewijzigd door septillion op 18-01-2023 09:14]


  • septillion
  • Registratie: Januari 2009
  • Laatst online: 04-02 09:29

septillion

Moderator Wonen & Mobiliteit
Waar heb je die config vandaan? Dit is geen ESPhome config voor een device, die zijn in YAML.

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
septillion schreef op woensdag 18 januari 2023 @ 09:15:
Waar heb je die config vandaan? Dit is geen ESPhome config voor een device, die zijn in YAML.
Gelukkig dat ik aangaf nog redelijke beginner te zijn.... :o

Dit was een vd logs die voorbij kwam die ik toevallig gesaved had, ESPHome geeft er de naam config_entry-esphome-xxxxx.json .
Ik ga eens kijken wat ik kan vinden aan echte config file. Bedankt voor je geduld, weet uit ervaring dat het af en toe frustrerend is mensen te helpen die enige basic zaken nog niet begrijpen..

  • septillion
  • Registratie: Januari 2009
  • Laatst online: 04-02 09:29

septillion

Moderator Wonen & Mobiliteit
De config zie je gewoon als je "edit" drukt bij een device in ESPhome. En als het goed is heb je die er zelf ooit neergezet...

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
DIe had ik idd in gedachten, waar ik uiteindelijk mijn sensoren heb toegevoegd en WIFI params etc.
Dat wordt donderdag voor ik weer thuis ben om access te hebben.

Die code tags zelf toevoegen, is er ergens een korte beschrijving hoe ik dat zou moeten doen?

  • septillion
  • Registratie: Januari 2009
  • Laatst online: 04-02 09:29

septillion

Moderator Wonen & Mobiliteit
Want je in die config (in yaml) neerzet wordt uiteindelijk gebruikt om een programma voor je ESP te brouwen en werkelijk op je ESP draait, volledig uniek voor het device en compleet onafhankelijk van HA.

En zeker, het forum kent een mooie FAQ.

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
Hier de yaml file.


YAML: vvw-temps-seeed
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
  {esphome:
  name: vvw-temps-seeed

esp32:
  board: seeed_xiao_esp32c3
  framework:
    type: arduino

dallas:
  pin: GPIO3

sensor:
  - platform: dallas
    address: 0x5f8180811e64ff28
    name: "Temperature 1"
    accuracy_decimals: 1

  - platform: dallas
    address: 0xbddd98811e64ff28
    name: "Temperature 2"
    accuracy_decimals: 1

  - platform: dallas
    address: 0xc93296811e64ff28
    name: "Temperature 3"
    accuracy_decimals: 1

  - platform: dallas
    address: 0x8bb483811e64ff28
    name: "Temperature 4"
    accuracy_decimals: 1

  - platform: dallas
    address: 0xd45097811e64ff28
    name: "Temperature 5"
    accuracy_decimals: 1

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "z4gomY8IB7033JRzK+yeXaUQUeFNmGz0fgOuoza8gOw="

ota:
  password: "Secret"

wifi:
  ssid: ZiggoBA6D68D
  password: SECRET
    # Switch off power safe mode
  power_save_mode: none
    # Set fixed IP
  manual_ip:
    static_ip: 192.168.178.21
    gateway: 192.168.178.1
    subnet: 255.255.255.0

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Vvw-Temps-Seeed Fallback Hotspot"
    password: "rUrAe35WJEBE"

captive_portal:
     } 


Hoop dat de opmaak zo wat beter is . weer wat geleerd...

[Voor 3% gewijzigd door patrickvdhart op 20-01-2023 10:37]


  • septillion
  • Registratie: Januari 2009
  • Laatst online: 04-02 09:29

septillion

Moderator Wonen & Mobiliteit
Zie op zich niets geks, ik zou eens op zoek naar een andere voeding :)

  • AUijtdehaag
  • Registratie: Oktober 2006
  • Niet online
Er schijnen wat wifi problemen te zijn met C3?
https://github.com/arendst/Tasmota/discussions/15443

Je zou ook een wemos s2 mini kunnen proberen?
https://www.tinytronics.n...fi/wemos-s2-mini-esp32-s2
YAML:
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
substitutions:
  device: vvw-temps-seeed

## ARDUINO_USB_CDC_ON_BOOT fixes USB_CDC compilation error
esphome:
  name: ${device}
  platformio_options:
    board_build.extra_flags:
      - "-DARDUINO_USB_CDC_ON_BOOT=0"

# Flash S2: press "O" and hold, press "RST", com port changes, esp connects, flash manual in web-esphome after manual download
esp32:
  board: lolin_s2_mini
  variant: ESP32S2
  framework:
    type: arduino

wifi:
  ssid: ZiggoBA6D68D
  password: SECRET
    # Switch off power safe mode
  power_save_mode: none
    # Set fixed IP
  manual_ip:
    static_ip: 192.168.178.21
    gateway: 192.168.178.1
    subnet: 255.255.255.0

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Vvw-Temps-Seeed Fallback Hotspot"
    password: "rUrAe35WJEBE"

logger:
api:
ota:
captive_portal:
web_server:

status_led:
  pin:
    number: 15

dallas:
  pin: 3

sensor:
  - platform: dallas
    address: 0x5f8180811e64ff28
    name: "Temperature 1"
    accuracy_decimals: 1

  - platform: dallas
    address: 0xbddd98811e64ff28
    name: "Temperature 2"
    accuracy_decimals: 1

  - platform: dallas
    address: 0xc93296811e64ff28
    name: "Temperature 3"
    accuracy_decimals: 1

  - platform: dallas
    address: 0x8bb483811e64ff28
    name: "Temperature 4"
    accuracy_decimals: 1

  - platform: dallas
    address: 0xd45097811e64ff28
    name: "Temperature 5"
    accuracy_decimals: 1


Gebruik je ook een 4K7 weerstandje tussen de Vcc en het signaal van de ds18b20?
https://learn.adafruit.co...th-circuitpython/hardware

[Voor 7% gewijzigd door AUijtdehaag op 20-01-2023 15:34]

PV Output - Pana Hit Kuro Zuid / SF Noord- Mitsubsidie WP - Procon melcobems mini TK - MHI ESP WiFi TK


  • tafkaw
  • Registratie: December 2002
  • Laatst online: 11:49
Klopt het dat die adressen voor de sensoren allemaal dezelfde zijn?

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
septillion schreef op vrijdag 20 januari 2023 @ 12:30:
Zie op zich niets geks, ik zou eens op zoek naar een andere voeding :)
Bedankt.
klopt met het feit dat hij het een tijdje goed doet.

Voeding. Ik snap er niks van, ingeplugd voor voeding in andere computer doet hij het prima.
tafkaw schreef op vrijdag 20 januari 2023 @ 15:38:
Klopt het dat die adressen voor de sensoren allemaal dezelfde zijn?
Het einde van het adres is vaak hetzelfde maar de addressen zijn toch echt anders. De 1e keer dacht ik ook hetzelfde, maar bij nader inzien toch anders.

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
AUijtdehaag schreef op vrijdag 20 januari 2023 @ 15:26:
Er schijnen wat wifi problemen te zijn met C3?
https://github.com/arendst/Tasmota/discussions/15443

Je zou ook een wemos s2 mini kunnen proberen?
https://www.tinytronics.n...fi/wemos-s2-mini-esp32-s2

Gebruik je ook een 4K7 weerstandje tussen de Vcc en het signaal van de ds18b20?
https://learn.adafruit.co...th-circuitpython/hardware
Ik zal die links bekijken maar heb al veel gevonden, maar niks dat helpt. Heb idd een 4,7 k weerstand ertussen gesoldeerd. Ik ga aan de slag met je andere tips

  • patrickvdhart
  • Registratie: Mei 2008
  • Laatst online: 06:35
Even een update: heb de ESP32 opnieuw geflashed met generic ESP32 ESPhome code.
Dat werkt, ik krijg de temperaturen nu binnen. :-)

Ook heeft dat vreemd genoeg het probleem met de voedingen opgelost, al mijn USB voedingen werken nu met de ESP32.

Eerstmaal dank voor iedereen die meegedacht heeft. Wellicht leerzaam dat de generieke code some beter werkt dan de specifieke code voor een MCU.

Ik heb nog wel een issue dat de temperaturen om de paar minuten 1 cycle niet beschikbaar zijn, dit verschijnsel lijkt geheel random dus wellicht iets met wifi stabiliteit.

Nu verder met het creeeren van mijn eigen huis thermostaat :-)
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee