Kincony KC868-A16 + SCD41 - konfiguracja

Witajcie, posiadam listwę Kincony KC868-A16 która działa prawidłowo jeśli chodzi o komplet wejść i wyjść stycznikowych. Postanowiłem dodać do systemu czujnik SCD41. Wpięcie czujnika powoduje freez listwy. w HA widać, że losowo styczniki zostają załączone ale sama listwa nie reaguje, kilka sekund po odłączeniu I2C zapalają się najczęściej wszystkie cewki, pozostają włączone do ręcznego ich wyłączenia.

Połączenie bezpośrednie dołączonym do listwy przewodem z odpowiednio ułożonymi pinami do wyjścia I2C. Jest to moja pierwsza próba dodania tego czujnika także proszę o wyrozumiałość.

Prace prowadzone na platformie testowej.

esphome:
  name: test-104
  platform: ESP32
  board: esp32dev
 
 
# Example configuration entry for ESP32
i2c:
  sda: GPIO4
  scl:
    number: GPIO5
    ignore_strapping_warning: true  


# Example configuration entry
ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO17_OUT
  phy_addr: 0

  # Optional manual IP
  manual_ip:
    static_ip: 192.168.8.104
    gateway: 192.168.8.1
    subnet: 255.255.255.0 


# Example configuration entry
pcf8574:
  - id: 'pcf8574_hub_out_1'  # for output channel 1-8
    address: 0x24

  - id: 'pcf8574_hub_out_2'  # for output channel 9-16
    address: 0x25

  - id: 'pcf8574_hub_in_1'  # for input channel 1-8
    address: 0x21

  - id: 'pcf8574_hub_in_2'  # for input channel 9-16
    address: 0x22

# Individual outputs
switch:
  - platform: gpio
    name: "ESP_Switch_401"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_402"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_403"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_404"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_405"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_406"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_407"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true
    
  - platform: gpio
    name: "ESP_Switch_408"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_409"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_410"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_411"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_412"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_413"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_414"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_415"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_416"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

binary_sensor:
  - platform: gpio
    name: "ESP_Sensor_401"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_402"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_403"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_404"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_405"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_406"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_407"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_408"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_409"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_410"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_411"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_412"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_413"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_414"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_415"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_416"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

one_wire:
  
  - platform: gpio
    pin: GPIO14

sensor:
  - platform: dallas_temp
    address: 0x803c8504578d3328
    name: "Temp_4X1"
    update_interval: 5s

  - platform: scd4x
    co2:
      name: "Office CO2"
    temperature:
      name: "Office Temperature"
    humidity:
      name: "office Humidity"
    address: 0x62
    update_interval: 60s

# Enable logging
logger:

# Enable Home Assistant API
api:

Proponuję podłączyć się kabelkiem i prześledzić logi w jakimś monitorze portu UART. Przydało by się też więcej informacji sprzętowej niż tylko:

Jakieś zdjęcia…

Sorry za jakość zdjęć ale jak pisałem w pierwszym poście jest to platforma testowa, czysty warsztat.

Monitor uart? to już dla mnie trochę zbyt wiele :slight_smile:



Coś mi to wygląda na inne umiejscowienie złącza niż w dokumentacji producenta:

Jak jeszcze nie uszkodziłeś tego czujnika SCD , to będzie sporo szczęścia.
Pokazujesz złącze na płycie z napięciem 12V


Czujnik może wytrzymać max 5.5V .
Może by tak zasilanie podłączyć tam gdzie masz 3,3V i wtedy pewnie będzie ok.

2 polubienia

Ależ kompromitacja, pośpiech i nieuwaga. Zasiliłem czujnik z portu 3,3V i listwa się nie zawiesza jednak odczytów brak. Czy mogę jakoś zweryfikować czy sam czujnik jest sprawny czy jednak go spaliłem.

W dokumentacji widnieje listwa V1. Posiadam zarówno V1 jaki i V3 z której pochodzi przesłane przeze mnie zdjęcie. Obie reagują tak samo.

Jeśli jest tam napięcie 12V= i włączyłeś zasilanie, to praktycznie na 100% spłonął, wystarczy zmierzyć czy jest takie napięcie.

A jak sprawdzić? czytać logi - przestrzeń adresowa I2C jest defaultowo skanowana na starcie, nie wyłączyłeś tego tym YAMLem, więc w logu masz wylistowane wszystkie znalezione urządzenia I2C.

przykładowy fragment loga w przypadku, gdy jest takich urządzeń od groma

[23:21:10][C][i2c.idf:083]: I2C Bus:
[23:21:10][C][i2c.idf:084]:   SDA Pin: GPIO8
[23:21:10][C][i2c.idf:085]:   SCL Pin: GPIO9
[23:21:10][C][i2c.idf:086]:   Frequency: 50000 Hz
[23:21:10][C][i2c.idf:092]:   Recovery: bus successfully recovered
[23:21:10][I][i2c.idf:102]: Results from i2c bus scan:
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x20
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x21
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x22
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x23
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x24
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x25
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x26
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x27
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x30
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x31
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x32
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x33
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x34
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x35
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x36
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x37
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x38
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x39
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x3A
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x3B
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x3C
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x3D
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x3E
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x3F
[23:21:10][I][i2c.idf:108]: Found i2c device at address 0x5D

Twój czujnik nie posiada regulatora napięcia na PCB , więc jak esphome go nie wykrywa to nadaje się do kosza.

Ok, trudno. Mam jeszcze jeden ale niestety nie przy sobie. Zweryfikuje w przyszłym tygodniu, dam znać oczywiście jaki wynik działań.

I tak masz dużo szczęścia że się od razu czujnik się spalił, przy pełnym zwarciu napięcie 12V wróci do płyty i będzie więcej do wymiany.

Dziękuję wam za pomoc. Czujnik przy którym popełniłem błąd padł. Kolejny działa prawidłowo i odczytuje dane zgodnie z oczekiwaniem.

Miałem jeszcze kilka błędów w konfiguracji ale już ogarnięte, sama konfiguracja poniżej:

esphome:
  name: test-104
  platform: ESP32
  board: esp32dev
 
 
# Example configuration entry for ESP32
i2c:
  sda: 4
  scl: 5
  scan: true
  id: bus_a 


# Example configuration entry
ethernet:
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk_mode: GPIO17_OUT
  phy_addr: 0

  # Optional manual IP
  manual_ip:
    static_ip: 192.168.8.104
    gateway: 192.168.8.1
    subnet: 255.255.255.0 


# Example configuration entry
pcf8574:
  - id: 'pcf8574_hub_out_1'  # for output channel 1-8
    address: 0x24

  - id: 'pcf8574_hub_out_2'  # for output channel 9-16
    address: 0x25

  - id: 'pcf8574_hub_in_1'  # for input channel 1-8
    address: 0x21

  - id: 'pcf8574_hub_in_2'  # for input channel 9-16
    address: 0x22

# Individual outputs
switch:
  - platform: gpio
    name: "ESP_Switch_401"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_402"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_403"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_404"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_405"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_406"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_407"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true
    
  - platform: gpio
    name: "ESP_Switch_408"
    pin:
      pcf8574: pcf8574_hub_out_1
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_409"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_410"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_411"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_412"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_413"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_414"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_415"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

  - platform: gpio
    name: "ESP_Switch_416"
    pin:
      pcf8574: pcf8574_hub_out_2
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: OUTPUT
      inverted: true

binary_sensor:
  - platform: gpio
    name: "ESP_Sensor_401"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_402"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_403"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_404"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_405"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_406"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_407"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_408"
    pin:
      pcf8574: pcf8574_hub_in_2
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_409"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 0
      number: 0
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_410"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 1
      number: 1
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_411"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 2
      number: 2
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_412"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 3
      number: 3
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_413"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 4
      number: 4
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_414"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 5
      number: 5
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_415"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 6
      number: 6
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

  - platform: gpio
    name: "ESP_Sensor_416"
    pin:
      pcf8574: pcf8574_hub_in_1
      # Use pin number 7
      number: 7
      # One of INPUT or OUTPUT
      mode: INPUT
      inverted: true

one_wire:
  
  - platform: gpio
    pin: GPIO14

sensor:
  - platform: dallas_temp
    address: 0x803c8504578d3328
    name: "Temp_4X1"
    update_interval: 5s

  - platform: scd4x
    co2:
      name: "Pomiar CO2"
    temperature:
      name: "Pomiar Temperatury"
    humidity:
      name: "Pomiar Wilgotności"


# Enable logging
logger:

# Enable Home Assistant API
api:
2 polubienia