Hi Lorenzo,
sorry to bother you but I’ve been using your work for few days now, all the detector’s status are working perfectly in home-assistant, but I can’t figure out how other entities are working, they show it’s enable or disable, but no matter what I’m doing on the keyboard of the alarme, I don’t see any changes. (and what the “Safe Mode” is there for ? I’ve been checking the Bentel manual but could’t find what it could be related to)
not that I really need anything more, but I was wondering if at least the status of the alarme (on or off) can be seen through espkyogate ? (I’m using the bentel kyo 8W, if it’s acting differently than the kyo32).
Hello @julien-billaud, strange. have you configure all status regarding arm of partitions?
If you configured enabled_total_area_xx, enabled_partial_area_xx, disabled_area_xx you should see changes when you arm/disarm with alarm keyboard.
“Safe Mode” is a special button only if there’s issue during firmware update of esphome, nothing related Bentel…
Yes I configured it that way :
In the lamba part I only kept the area “0” as I’m only using the first area :
&kyo32->allarme_area[0],
&kyo32->inserimento_totale_area[0],
&kyo32->inserimento_parziale_area[0],
&kyo32->inserimento_parziale_ritardo_0_area[0],
&kyo32->disinserita_area[0],
&kyo32->stato_uscita[0]
then in Binary sensor part :
- id: alarm_area_1
name: "Alarme"
- id: enabled_total_area_1
name: "Activation Totale"
- id: enabled_partial_area_1
name: "Activation Partielle"
- id: enabled_partial_delay_0_area_1
name: "Activation Partielle Sans Délai"
- id: disabled_area_1
name: "Désactivation"
- id: exit_status_1
name: "État Sortie 1"
If I enable the debug and then arm/disarm the alarm, I can see the following :
So it seems like it should work, but the sensor doesn’t get it’s status update in HA
Hello, yes, configuration seems ok… in your case the input_boolean.enabled_total_area_1 should change from false to true and input_boolean.disabled_area_1 from true to false and viceversa… doesn’t it?
Are you using the latest version of my firmware (v2024.4.26) ?
lo so non sono un genio ma non riesco a configurare il panello allarme con espkyogate “quello con la tastiera”, con inserimento di due aree ( arma in casa ) e tre aree (arma fuori casa) qualcuno mi potrebbe aiutare
Hi folks,
ESPHome 2025.2.0 is introducing a breaking change that affects the integration.
I have no idea on how complex it will be the migration to the external component.
thoughts?
Removal of Custom Components
Custom components were deprecated over a year ago and, as promised, support for them was removed in this release. We encourage all developers to migrate their custom components to External Components. Please see A Note About Custom Components for a detailed explanation and next steps.
Yes, I know… [ESPHome 2025.2.0 e Custom Components · Issue #63 · lorenzo-deluca/espkyogate · GitHub](we are working here)
If anyone want’s to contribute please write on GitHub issue.
Thanks!
Hello Bremby, have you check on my YAML example?
I think is in this line of configuration:
# Enable logging
logger:
level: INFO
baud_rate: 0
logs:
component: ERROR
Hi, before i start with this awesom integration, is it working with the latest home assistand and esphome updates?
Thanks
Yes sir, but the config is only “hiding” the message; the warning and the behavior are still there
yes, it works
mmmh, you mean the WARNING messages about “took a long time”?
It’s how the integration works… Kyo Unit is “slow” (a few fractions of a second) to answer on serial line and “lock” the code but it’s normal and it works perfectly
If you want you can improve the code
Just a clarification: in the code, the zones start from 0
&kyo32->zona[0]
but in the ID declaration they all start from 1
- id: zone_1
name: "Sensore DT Taverna"
device_class: "motion"
Is this correct, or should the IDs also start from 0? Or does it not matter?
yes, ID name is indifferent, only the order is important
Hi,
I’m finally playing around with this awesome integration, everything worked flawlessly on the first try. Again, many thanks for your fantastic work!
That said, this was my very first time using ESPHome, so the installation process was slightly different from your guide, but there were no issues.
I just have a few questions for you:
Is it normal for all the entities to become unavailable for a few seconds every 1 or 2 hours? It’s not a big deal for me, but I’m trying to keep everything running as smoothly as possible.
Also, regarding the entity “stato sirena” what is it supposed to indicate? I thought it would become active when the siren is ringing, but that doesn’t seem to be the case for me.
many thanks
For unavailable entities it’s not optimal, have you try to monitor the ESP with a ping entity? Which ESP board you’re using? is the WiFi connection good where you put the ESP?
“stato sirena” is indicates the status of the siren/horn… should go ON when the central unit’s siren sounds.
I’m using a D1 Mini board (this one: [link]) and it’s about 4 meters from my access point, so I assume the Wi-Fi signal is strong enough. should I try another board?
for the siren it always shows as OFF.
this is my configuration, maybe there somethings wrong?
external_components:
- source:
type: git
url: https://github.com/robertklep/esphome-custom-component
components: [ custom, custom_component ]
esp8266:
board: d1_mini
# ESP32 boards alternative directives
# platform: ESP32
# board: esp32doit-devkit-v1
esphome:
name: "esphome-antifurto"
friendly_name: Antifurto
comment: Alarm System Serial to HA controller
includes:
- components/bentel-kyo/bentel_kyo32.h
uart:
id: uart_bus
tx_pin: GPIO5
rx_pin: GPIO4
# ESP32 boards alternative directives
# tx_pin: GPIO17
# rx_pin: GPIO16
baud_rate: 9600
data_bits: 8
parity: EVEN
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# use_address: "192.168.179.4"
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: !secret hotspot_wifi_ssid
password: !secret hotspot_wifi_password
captive_portal:
# Enable logging
logger:
level: INFO
baud_rate: 0
logs:
component: ERROR
# Enable Home Assistant API
api:
encryption:
key: !secret api_encryption_key
ota:
platform: esphome
password: !secret ota_password
switch:
- platform: safe_mode
name: "ESPKyoGate (Safe Mode)"
binary_sensor:
- platform: custom
lambda: |-
auto kyo32 = new Bentel_Kyo32(id(uart_bus));
App.register_component(kyo32);
return {
kyo32->kyo_comunication,
kyo32->stato_sirena,
kyo32->warn_mancanza_rete,
kyo32->sabotaggio_zona,
kyo32->sabotaggio_sistema,
kyo32->warn_scomparsa_bpi,
kyo32->warn_fusibile,
kyo32->warn_batteria_bassa,
kyo32->warn_guasto_linea_telefonica,
kyo32->warn_codici_default,
kyo32->warn_wireless,
kyo32->sabotaggio_bpi,
kyo32->sabotaggio_jam,
kyo32->sabotaggio_wireless,
kyo32->sabotaggio_chiave_falsa,
&kyo32->zona[0],
&kyo32->zona[1],
&kyo32->zona[2],
&kyo32->zona[3],
&kyo32->zona[4],
&kyo32->zona[5],
&kyo32->zona[6],
&kyo32->zona[7],
&kyo32->zona[8],
&kyo32->zona[9],
&kyo32->zona[10],
&kyo32->zona[11],
&kyo32->zona_esclusa[0],
&kyo32->zona_esclusa[1],
&kyo32->zona_esclusa[2],
&kyo32->zona_esclusa[3],
&kyo32->zona_esclusa[4],
&kyo32->zona_esclusa[5],
&kyo32->zona_esclusa[6],
&kyo32->zona_esclusa[7],
&kyo32->zona_esclusa[8],
&kyo32->zona_esclusa[9],
&kyo32->zona_esclusa[10],
&kyo32->zona_esclusa[11],
&kyo32->memoria_allarme_zona[0],
&kyo32->memoria_allarme_zona[1],
&kyo32->memoria_allarme_zona[2],
&kyo32->memoria_allarme_zona[3],
&kyo32->memoria_allarme_zona[4],
&kyo32->memoria_allarme_zona[5],
&kyo32->memoria_allarme_zona[6],
&kyo32->memoria_allarme_zona[7],
&kyo32->memoria_allarme_zona[8],
&kyo32->memoria_allarme_zona[9],
&kyo32->memoria_allarme_zona[10],
&kyo32->memoria_allarme_zona[11],
&kyo32->allarme_area[0],
&kyo32->allarme_area[1],
&kyo32->allarme_area[2],
&kyo32->inserimento_totale_area[0],
&kyo32->inserimento_totale_area[1],
&kyo32->disinserita_area[0],
&kyo32->disinserita_area[1],
};
binary_sensors:
- id: kyo_comunication
name: "Comunicazione Centrale"
- id: stato_sirena
name: "Stato Sirena"
- id: warn_mancanza_rete
name: "Mancanza Rete"
- id: sabotaggio_zona
name: "Sabotaggio Zona"
- id: sabotaggio_sistema
name: "Sabotaggio Sistema"
- id: warn_scomparsa_bpi
name: "Scomparsa BPI"
- id: warn_fusibile
name: "Fusibile"
- id: warn_batteria_bassa
name: "Batteria Bassa"
- id: warn_guasto_linea_telefonica
name: "Guasto Linea Telefonica"
- id: warn_codici_default
name: "Codici Default"
- id: warn_wireless
name: "Wireless"
- id: sabotaggio_bpi
name: "Sabotaggio BPI"
- id: sabotaggio_jam
name: "Sabotaggio Jam"
- id: sabotaggio_wireless
name: "Sabotaggio wireless"
- id: sabotaggio_chiave_falsa
name: "Sabotaggio Chiave Falsa"
- id: zone_1
name: "Porta Ingresso"
device_class: "door"
- id: zone_2
name: "Portafinestra Soggiorno"
device_class: "window"
- id: zone_3
name: "Finestra Soggiorno"
device_class: "window"
- id: zone_4
name: "Portafinestra Cucina"
device_class: "window"
- id: zone_5
name: "Portafinestra Camera"
device_class: "window"
- id: zone_6
name: "Finestra Bagno"
device_class: "window"
- id: zone_7
name: "Portafinestra Lab"
device_class: "window"
- id: zone_8
name: "Sabotaggio GSM"
device_class: "smoke"
- id: zone_9
name: "Sensore Movimento Retro"
device_class: "motion"
- id: zone_10
name: "Sensore Movimento Avanti"
device_class: "motion"
- id: zone_11
name: "Sabotaggio Sensori Movimento"
device_class: "smoke"
- id: zone_12
name: "Batteria Sensori Movimento"
device_class: "smoke"
- id: excluded_zone_1
name: "Escl. Porta Ingresso"
- id: excluded_zone_2
name: "Escl. Portafinestra Soggiorno"
- id: excluded_zone_3
name: "Escl. Finestra Soggiorno"
- id: excluded_zone_4
name: "Escl. Portafinestra Cucina"
- id: excluded_zone_5
name: "Escl. Portafinestra Camera"
- id: excluded_zone_6
name: "Escl. Finestra Bagno"
- id: excluded_zone_7
name: "Escl. Portafinestra Lab"
- id: excluded_zone_8
name: "Escl. Sabotaggio GSM"
- id: excluded_zone_9
name: "Escl. Sensore Movimento Retro"
- id: excluded_zone_10
name: "Escl. Sensore Movimento Avanti"
- id: excluded_zone_11
name: "Escl. Sabotaggio Sensori Movimento"
- id: excluded_zone_12
name: "Escl. Batteria Sensori Movimento"
- id: alarm_memory_zone_1
name: "Mem. Allarme Porta Ingresso"
- id: alarm_memory_zone_2
name: "Mem. Allarme Portafinestra Soggiorno"
- id: alarm_memory_zone_3
name: "Mem. Allarme Finestra Soggiorno"
- id: alarm_memory_zone_4
name: "Mem. Allarme Portafinestra Cucina"
- id: alarm_memory_zone_5
name: "Mem. Allarme Portafinestra Camera"
- id: alarm_memory_zone_6
name: "Mem. Allarme Finestra Bagno"
- id: alarm_memory_zone_7
name: "Mem. Allarme Portafinestra Lab"
- id: alarm_memory_zone_8
name: "Mem. Allarme Sabotaggio GSM"
- id: alarm_memory_zone_9
name: "Mem. Allarme Sensore Movimento Retro"
- id: alarm_memory_zone_10
name: "Mem. Allarme Sensore Movimento Avanti"
- id: alarm_memory_zone_11
name: "Mem. Allarme Sabotaggio Sensori Movimento"
- id: alarm_memory_zone_12
name: "Mem. Allarme Batteria Sensori Movimento"
- id: alarm_area_1
name: "Allarme Perimetrale"
- id: alarm_area_2
name: "Allarme Radar Esterni"
- id: alarm_area_3
name: "Allarme Batteria Sensori Movimento"
- id: enabled_total_area_1
name: "Ins. Totale Perimetrale"
- id: enabled_total_area_2
name: "Ins. Totale Radar Esterni"
- id: disabled_area_1
name: "Disins. Perimetrale"
- id: disabled_area_2
name: "Disins. Radar Esterni"
Configuration is ok, have you update bentel_kyo32.h with the latest version from my GitHub?
Anyway yes, wemosD1 is very poor, it’s better to upgrade to latest ESP32
Yes, I downloaded all the files last week, so I assume they were up to date.
Could you suggest some good ESP32 boards?
Thanks!