Black Friday = Pricewatch Bekijk onze selectie van de beste Black Friday-deals en voorkom een miskoop.

[HA] Temperatuur controller en luchtvochtigheid terrarium

Pagina: 1
Acties:

Vraag


  • MatthijsMack
  • Registratie: Juli 2015
  • Laatst online: 25-08 20:18
Dag allen,

Excuus als deze vraag eerder gesteld is en tegelijkertijd een waarschuwing, ik ben oorspronkelijk dierverzorger en heb zeer beperkte kennis van dergelijke systemen.

Mijn situatie is als volgt: Ik heb twee terraria welke ik wil aansturen met een raspberry pi 3 op basis van temperatuur. Daarnaast zou het erg prettig zijn als ik tegelijkertijd ook de luchtvochtigheid zou kunnen meten. Beide zou ik ook graag willen loggen.

Ik heb dit al eens eerder gedaan met Domoticz maar dit was helemaal geïnstalleerd door een kennis. Momenteel probeer ik hetzelfde te doen met Home Assistant (Succesvol zelf geïnstalleerd). Ik kwam er echter al snel achter dat de ondersteuning voor de gpio pins vervallen is. Ondanks dat heb ik vanochtend het relay bord wat ik momenteel gebruik wel aan de praat gekregen met behulp van deze post: https://github.com/thecode/ha-rpi_gpio.

Ik ben echter al de gehele middag aan het proberen om de twee sensoren welke ik heb (DHT22/am2302) aan de praat te krijgen via de gpio's. Het lukt mij echter maar niet om aan de praat te krijgen. Ik heb al verschillende fora gelezen en het keer op keer geprobeerd, o.a. via https://community.home-as...-custom-components/390428. Een optie zou zijn (zoals ik het lees) is om esp home te gebruiken met een esp bordje, maar mijn voorkeur gaat daar niet naar uit. Ten eerste omdat ik daar al helemaal onbekend mee ben en omdat ik de sensoren het liefste zo klein mogelijk heb omdat deze in het terrarium komen.

Is er iemand die tips heeft wat ik het beste zou kunnen doen?
Kunnen de dht22 sensoren werken op de raspberry en home assistant?
Zijn er eventueel alternatieve sensoren die nog wel ondersteund worden door HA?

Alvast bedankt voor de hulp _/-\o_ , en mochten er vragen zijn dan hoor ik het natuurlijk wel :)

Alle reacties


  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 13-11 09:01
Ik heb zelf geen DHT22 maar het eerste Google resultaat geeft een perfecte tutorial om deze direct op de GPIO aan te sluiten https://pimylifeup.com/raspberry-pi-humidity-sensor-dht22/

Hier zie je ook een voorbeeld in python gemaakt, en python scripts kan je rechtstreeks gebruiken in HomeAssist https://www.home-assistant.io/integrations/python_script/

Volgens mij kan je hiermee tot je oplossing komen lijkt me...

  • Gizz
  • Registratie: Maart 2001
  • Laatst online: 15-11 09:37

Gizz

Dunder-Mifflin, Inc.

MatthijsMack schreef op maandag 3 april 2023 @ 21:03:
Een optie zou zijn (zoals ik het lees) is om esp home te gebruiken met een esp bordje, maar mijn voorkeur gaat daar niet naar uit. Ten eerste omdat ik daar al helemaal onbekend mee ben en omdat ik de sensoren het liefste zo klein mogelijk heb omdat deze in het terrarium komen.
Daarvoor maakt een ESP i.p.v. een Pi geen verschil. De ESP kun je gewoon buiten je terrarium plaatsen, net als je Pi. En de sensoren worden vanuit het terrarium met een draad aangesloten op de ESP/Pi buiten je terrarium.

In je terrarium gaat het dus geen verschil maken. Wat wel handig kan zijn is dat je de Pi nu kan plaatsen waar je wilt, die hoeft niet meer bij je terrarium in de buurt als je een ESPtje gebruikt om de boel aan te sluiten. Mits je de Pi natuurlijk niet voor andere dingen gebruikt waardoor hij toch bij je terrarium moet blijven :P . En een ESP werk je makkelijk weg in een doosje, die dingen zijn piepklein:

Afbeeldingslocatie: https://tweakers.net/i/nhOs3bUddgUQmqbSc8P1p-yy6D8=/800x/filters:strip_exif()/f/image/61zEwlGyQpDdy7XBx6mzrnfg.png?f=fotoalbum_large

[ Voor 4% gewijzigd door Gizz op 04-04-2023 11:59 ]

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


  • MatthijsMack
  • Registratie: Juli 2015
  • Laatst online: 25-08 20:18
Hier zie je ook een voorbeeld in python gemaakt, en python scripts kan je rechtstreeks gebruiken in HomeAssist https://www.home-assistant.io/integrations/python_script/

Volgens mij kan je hiermee tot je oplossing komen lijkt me...
En daar loop ik al in de problemen. Ik weet niet precies wat ik verkeerd heb gedaan of dat ik het simpelweg niet begrijp maar dit zijn de stappen die ik vanaf begin af aan heb gevolgd.

1. HASSIO geïnstalleerd (inclusief de door hem genoemde add-ons) volgens youtube video: https://www.youtube.com/watch?v=Th1SI_S9AQY
2. HACS geïnstalleerd om relay board te kunnen bedienen via settings -> Devices and services -> Add integration.
3. Home Assistant Raspberry Pi GPIO toegevoegd via de HACS integrations.
4. In het configuration.yaml bestand code toegevoegd waarna de relay's als knoppen zichtbaar en bruikbaar zijn geworden in het home screen en de button widgets. Zie:

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
44
45
46
47
48
49
50
51
52
# Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

# Text to speech
tts:
  - platform: google_translate

automation: !include automations.yaml
script: !include scripts.yaml 
scene: !include scenes.yaml

#Toevoeging relay board
# Full configuration.yaml entry
switch:
  - platform: rpi_gpio
    switches:
      - port: 14
        name: "relay_8"
        unique_id: "Relay_8"
        invert_logic: true
      - port: 15
        name: "relay_7"
        unique_id: "Relay_7"
        invert_logic: true
      - port: 18
        name: "relay_6"
        unique_id: "Relay_6"
        invert_logic: true
      - port: 23
        name: "relay_5"
        unique_id: "Relay_5"
        invert_logic: true
      - port: 24
        name: "relay_4"
        unique_id: "Relay_4"
        invert_logic: true
      - port: 25
        name: "relay_3"
        unique_id: "Relay_3"
        invert_logic: true
      - port: 8
        name: "relay_2"
        unique_id: "Relay_2"
        invert_logic: true
      - port: 7
        name: "relay_1"
        unique_id: "Relay_1"
        invert_logic: true


5. Hello_world bestand aangemaakt in map python scripts. (/config/python_scripts/hello_world.py)
6. Python "geïnstalleerd" door code toe te voegen aan het configuration.yaml bestand.
code:
1
python_script:


In eerste instantie kreeg ik bij de reboot de foutmelding dat het bestand niet gevonden kon worden in de map configurations. Maar op een voor mij onverklaarbare reden heeft hij het uiteindelijk toch gevonden. Althans, dat denk ik omdat als ik onderstaande code invoer in Developer Tools -> Services ik een vinkje krijg te zien.
code:
1
2
3
service: python_script.hello_world
data:
  name: "Input-Text"


Zie:

Afbeeldingslocatie: https://tweakers.net/i/6FlOUVXjSvMSJIsx-N5sB7zBNok=/800x/filters:strip_exif()/f/image/JnL9A5X1lIphrQdA0LkUGf4c.png?f=fotoalbum_large

Er gebeurd echter niks. Volgens de handleiding klopt dat ook. Maar verder dan dat ben ik nog niet gekomen. Als ik volgens de handleiding "hass.bus.fire("hello_world_event", {"wow": "from a Python script!"}" toe voeg en vervolgens via Developer Tools -> Events ga luisteren naar een event krijg ik niks.

code:
1
2
3
4
5
# `data` is available as builtin and is a dictionary with the input data.
name = data.get("name", "world")
# `logger` and `time` are available as builtin without the need of explicit import.
logger.info("Hello {} at {}".format(name, time.time()))
hass.bus.fire("hello_world_event", {"wow": "from a Python script!"})


Afbeeldingslocatie: https://tweakers.net/i/7mEdC-9Ob6F6fAQrg5hcxrkLe9A=/800x/filters:strip_exif()/f/image/lJmBXGPvhULObmzcHIkMBLD5.png?f=fotoalbum_large

Ik vraag mij af of ik het dan wel goed heb gedaan en loop eigenlijk helemaal vast. En dan heb ik het nog niet eens gehad over dat "sudo, ssh, etc." welke in de Terminal & SSH Add-on niet werken. Commando's die ik zo ver ik begrijp wel moet gebruiken om de DHT22 uiteindelijk werkend te krijgen.

Iemand die weet hoe ik verder moet of wat ik precies fout heb gedaan?
Gizz schreef op dinsdag 4 april 2023 @ 11:54:
[...]

Daarvoor maakt een ESP i.p.v. een Pi geen verschil. De ESP kun je gewoon buiten je terrarium plaatsen, net als je Pi. En de sensoren worden vanuit het terrarium met een draad aangesloten op de ESP/Pi buiten je terrarium.

In je terrarium gaat het dus geen verschil maken. Wat wel handig kan zijn is dat je de Pi nu kan plaatsen waar je wilt, die hoeft niet meer bij je terrarium in de buurt als je een ESPtje gebruikt om de boel aan te sluiten. Mits je de Pi natuurlijk niet voor andere dingen gebruikt waardoor hij toch bij je terrarium moet blijven :P . En een ESP werk je makkelijk weg in een doosje, die dingen zijn piepklein:

[Afbeelding]
Dat is wel waar, maar ik doe het het liefste met wat ik momenteel in huis heb. Voorheen heeft dat via Domoticz ook gewerkt alleen de kennis waarmee ik dat toen heb gedaan heb ik geen contact meer mee en ben op mijzelf aangewezen. De Pi moet daarnaast toch al dichtbij hangen omdat de relay's in de behuizing zijn gebouwd. Zie foto:

Afbeeldingslocatie: https://tweakers.net/i/Cshs7cNzlKBcNLPx0c1C4qKP1f4=/800x/filters:strip_icc():strip_exif()/f/image/daMniIVtWiNGXehVW65s15My.jpg?f=fotoalbum_small

Is overigens een oudere foto want de 220v draden waren verkeerd aangesloten waardoor als de Pi uit was alle apparaten aangingen omdat hij voorheen op normally open closed was aangesloten.

[ Voor 16% gewijzigd door MatthijsMack op 04-04-2023 20:49 ]


  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 13-11 09:01
Heb je de logger wel aanstaan?
Running this script show absolutely no output on the screen, but it logs with level info. You must have the Logger enabled at least for level info.

Your configuration.yaml should include something like this.

logger:
default: info
Overigens zag ik dat er een GPIO ondersteuning was in HA, ook voor DHT was er een script: https://github.com/home-a...eassistant/components/dht

Dit wordt niet meer supported maar ik denk dat je volgens mij het nog wel kan implementeren in je HA

[ Voor 32% gewijzigd door Apocalyps895 op 05-04-2023 10:24 ]


  • MatthijsMack
  • Registratie: Juli 2015
  • Laatst online: 25-08 20:18
Jep, het configuration.yaml bestand ziet er nu zo uit:
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
44
45
46
47
48
49
50
51
52
53
54
55
56
# Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

# Text to speech
tts:
  - platform: google_translate

automation: !include automations.yaml
script: !include scripts.yaml 
scene: !include scenes.yaml

#Toevoeging relay board
# Full configuration.yaml entry
switch:
  - platform: rpi_gpio
    switches:
      - port: 14
        name: "relay_8"
        unique_id: "Relay_8"
        invert_logic: true
      - port: 15
        name: "relay_7"
        unique_id: "Relay_7"
        invert_logic: true
      - port: 18
        name: "relay_6"
        unique_id: "Relay_6"
        invert_logic: true
      - port: 23
        name: "relay_5"
        unique_id: "Relay_5"
        invert_logic: true
      - port: 24
        name: "relay_4"
        unique_id: "Relay_4"
        invert_logic: true
      - port: 25
        name: "relay_3"
        unique_id: "Relay_3"
        invert_logic: true
      - port: 8
        name: "relay_2"
        unique_id: "Relay_2"
        invert_logic: true
      - port: 7
        name: "relay_1"
        unique_id: "Relay_1"
        invert_logic: true
        
python_script:
logger:
  default: info


Waar moet ik het echter kunnen zien? In het Logbook?

  • Apocalyps895
  • Registratie: Augustus 2001
  • Laatst online: 13-11 09:01
MatthijsMack schreef op woensdag 5 april 2023 @ 10:24:
Jep, het configuration.yaml bestand ziet er nu zo uit:
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
44
45
46
47
48
49
50
51
52
53
54
55
56
# Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

# Text to speech
tts:
  - platform: google_translate

automation: !include automations.yaml
script: !include scripts.yaml 
scene: !include scenes.yaml

#Toevoeging relay board
# Full configuration.yaml entry
switch:
  - platform: rpi_gpio
    switches:
      - port: 14
        name: "relay_8"
        unique_id: "Relay_8"
        invert_logic: true
      - port: 15
        name: "relay_7"
        unique_id: "Relay_7"
        invert_logic: true
      - port: 18
        name: "relay_6"
        unique_id: "Relay_6"
        invert_logic: true
      - port: 23
        name: "relay_5"
        unique_id: "Relay_5"
        invert_logic: true
      - port: 24
        name: "relay_4"
        unique_id: "Relay_4"
        invert_logic: true
      - port: 25
        name: "relay_3"
        unique_id: "Relay_3"
        invert_logic: true
      - port: 8
        name: "relay_2"
        unique_id: "Relay_2"
        invert_logic: true
      - port: 7
        name: "relay_1"
        unique_id: "Relay_1"
        invert_logic: true
        
python_script:
logger:
  default: info


Waar moet ik het echter kunnen zien? In het Logbook?
In het gedeelte van developertools van HA en dan bij events

  • MatthijsMack
  • Registratie: Juli 2015
  • Laatst online: 25-08 20:18
Ik heb eergisteren toch de Wemos d1 mini besteld en bme280 sensoren, als ik het geld toch uitgeef dan ook gelijk iets betrouwbaardere sensoren. Het was even klooien maar heb inmiddels ook de sensoren werkend binnen home assistant. Dit is dus opgelost. Nu verder met, ik denk, node red om de IFTTT dingetjes in te stellen.

Bedankt voor jullie hulp!

Afbeeldingslocatie: https://tweakers.net/i/XoLbXnczm-p7qru1oSHif72_iW4=/800x/filters:strip_exif()/f/image/uLsE5OK87tFYrQFzv1g5ya3h.png?f=fotoalbum_large
Pagina: 1