Texecom2mqtt: Texecom alarm panel and MQTT integration with HA support

I have the 640 zone panel with approx 120 zones in use. The addon crashes around 3 times per day. Each time it crashes, it takes a couple of minutes for my automation to kick in and then 3 minutes for the addon to start up and refresh zones. Caching is enabled.

During that restart time, I miss any zone updates, and so lights don’t come on reliably etc.

Checking today’s log, it crashed just after the panel sent updated power readings to the plugin.

I don’t suppose anyone knows if there’s a way of reducing what the panel sends out by itself, so reducing the chance of a conflict?

I’m about to move away from the addon for critical automations and mimic zones onto Texecom expander outputs and feed these into an ESP32 running ESPHome.

I’m not sure why the addon crashes and restarts to recover from a CRC failure. I don’t use texecom2mqtt, but I do have software that interfaces to the texecom panel. My software just discards the update with a CRC failure and continues reading data from the panel without forcing a disconnect/reconnect. One update is still lost, but not several minutes worth of updates. I have found this to be just about tolerable (on a 168 zone panel with about 35 zones in use), with one CRC failure every week or so.

Maybe Daniel would consider implementing a similar scheme?

1 Like

Out of interest, what do you do (and how often) to reconcile and get back in sync?

Do you mean request the status of the zones/areas/users etc? If so, I don’t ever do that because it requires sending multiple commands to the panel, which increases the risk of a tx/rx packet clash and another CRC failure.

In practice the zone updates that are most likely to be lost to a CRC error are the zones which change state most often, so they quickly resynchronise themselves. If something like a dusk sensor zone update is lost to a CRC failure it will take until the next sunrise or sunset to resync, which is more of a problem but less likely to happen.

It is a pity that Texecom won’t fix this problem. Until they do the interface isn’t really fit for purpose and cannot be used for any critical applicaiton. It must also affect their ‘Connect’ product in the same way.

I don’t get this rate of failure, but neither do I have this number of zones (I have about 20). Extrapolated down, my rate of failure is probably similar though. Mostly the add-on is restarted by the watchdog, but just occasionally it remains stopped after a failure which is a little annoying!

If at all possible, having a version with an optional config setting for “ignore CRC errors” would, I think, go a long way to stabilising things for me. I’d accept the odd lost zone update, but as it seems unlikely Texecom will fix this any time soon, this would bring it to an acceptable level of stability, at least in my own modest environment.

@dchesterton Any thoughts on this? It’s a slightly tough one as I know that the agreement you had with Texecom prevented you from publishing the code publicly, so our hands are a little tied when it comes to helping you with this!

Thanks for this, that makes perfect sense, and gives a clear principle in my mind. Use wired outputs to reliably capture slowly changing events, and the addon to capture rapid changing events.

That would be much better for me as well. I have some critical automations that I don’t want to miss, such as when areas arm, and I’ll use the wired outputs into esphome to catch these. Then I’d keep normal motion sensor events for lighting from the plugin, where a missed event will probably retrigger in a few seconds.

Hi there -

I have installed this integration into Home Assistant. I’ve isolated my SmartCom from the internet so the Connect App does not cause any issues. All the sensors are detecting properly.

However, I cannot seem to ARM the alarm correctly from the HASS alarm panel entity. I can, however, DISARM the alarm from the HASS alarm panel entity.

The states I can ‘available’ on the HASS entity - and which there are buttons for - are “Arm home”, “Arm away”, “Arm night” “Arm vacation” “Custom Bypass” but if I press any of these buttons nothing seems to happen to either the HASS entity or the actual alarm - see log below:

2024-01-18 12:07:44 - WARNING: Unknown command ARM_NIGHT for area Home
2024-01-18 12:07:47 - WARNING: Unknown command ARM_NIGHT for area Home
2024-01-18 12:07:48 - WARNING: Unknown command ARM_AWAY for area Home

When I arm the alarm on the physical keypad the HASS alarm panel keeps showing “Arming” rather than the state of the alarm.
Please help!
Thanks

This is my ‘areas’ configuration:

areas:
  - id: area_a
    full_arm: armed_away
    part_arm_1: armed_night

Suspect perhaps:

  • Your ‘area’ name is wrong, i.e the id
  • It is ‘armed_away’ not ‘ARM_AWAY’ and ‘armed_night’ not ‘ARM_NIGHT’
  • And/or CaSiNG MaYBE MAtteRS.

Thanks.

Can I choose any area name or am I trying to match it to a name that is already created?

If I copy your coding, what should I change or where can I find the names for the bits I need?

Thanks

I’m pretty sure mine - Area A - is the Texecom default, it’s been a while since I logged in via WinTex but you can see the area names there, which becomes ‘area_a’ for configuration purposes.

But to answer your question: the ‘id’ has to match what is on the panel, you cannot just choose a random id/name, if you have WinTex access you can check there.

thanks. I managed to get mine working! Used the below:

areas:
  - id: home
    full_arm: armed_away
    part_arm_1: armed_night

If the Texecom alarm is triggered it seems to crash the add-on and cause a COM2 port error . COM2 port is where the COM IP module is. I have to reboot the entire alarm panel to fix when this happens (disconnect mains and battery). My firewall blocks the Smartcom from internet access. Any thoughts why this happens? Thanks.

Can anyone help me on this? I love the Texecom add-on but it seems to crash every few days. This causes an error on the keypad and I am unable to restart the Texecom add-on in Home Assistant unless I do a cold reboot of the physical alarm panel.

  1. The keypad shows a Com 2 Fault

  2. I get the following error when I try to restart the add-on:

2024-02-01 10:37:11 - INFO: Starting texecom2mqtt v1.2.3 (Node v16.13.0)...
2024-02-01 10:37:11 - INFO: Connected to alarm, sleeping for 2 seconds...
2024-02-01 10:37:13 - DEBUG: Executing serial number command
2024-02-01 10:37:17 - DEBUG: Command serial timed out (attempt 1, id: serial).
2024-02-01 10:37:20 - DEBUG: Command serial timed out (attempt 2, id: serial).
2024-02-01 10:37:24 - DEBUG: Command serial timed out (attempt 3, id: serial).
2024-02-01 10:37:27 - DEBUG: Command serial timed out (attempt 4, id: serial).
2024-02-01 10:37:31 - DEBUG: Command serial timed out (attempt 5, id: serial).
2024-02-01 10:37:31 - ERROR: Unhandled rejection - Command serial timed out 5 times and could not be completed
2024-02-01 10:37:31 - DEBUG: Closing connection to panel
2024-02-01 10:37:31 - DEBUG: Closed connection to panel

The only way to fix this issue seems to be to reboot the entire alarm system by removing the alarm panel, disconnecting the alarm from the mains and its backup battery. I think I then need to reset digi etc.

I have a Smartcom and configure my router to (I think) stop the Smartcom accessing the Internet.

Any ideas on why this is happening and how I can fix it?

Thanks very much

I’m also having issues with the mapping, have tried majority of the reccomendations posted here but none of the appear to work, my logs show:

2024-02-02 13:02:57 - INFO: Panel: Premier Elite 64 (V5.04.02LS1)
2024-02-02 13:02:58 - INFO: Fetched Area A: House
2024-02-02 13:02:58 - INFO: Fetched Area B: Area B
2024-02-02 13:02:58 - INFO: Fetched Area C: Area C
2024-02-02 13:02:58 - INFO: Fetched Area D: Area D
2024-02-02 13:02:58 - INFO: Fetched Zone 1: Hallway (Type: Entry/Exit 1; Areas: A)
2024-02-02 13:02:58 - INFO: Fetched Zone 2: Kitchen (Type: Guard; Areas: A)
2024-02-02 13:02:59 - INFO: Fetched Zone 3: Garage (Type: Guard; Areas: A)
2024-02-02 13:02:59 - INFO: Fetched Zone 4: Conservatory (Type: Guard; Areas: A)
2024-02-02 13:03:01 - INFO: Fetched Zone 10: Front Door (Type: Entry/Exit 1; Areas: A)
2024-02-02 13:03:01 - INFO: Fetched Zone 11: Back Door (Type: Guard Access; Areas: A)
2024-02-02 13:03:02 - INFO: Fetched Zone 12: Living Room (Type: Guard; Areas: A)
2024-02-02 13:03:02 - INFO: Fetched Zone 13: Upstairs (Type: Guard; Areas: A)
2024-02-02 13:03:19 - INFO: Updating all zone states…
2024-02-02 13:03:19 - INFO: Updating all area states…
2024-02-02 13:03:19 - INFO: Application ready
2024-02-02 13:03:53 - WARNING: Unknown command ARM_HOME for area House
2024-02-02 13:03:55 - WARNING: Unknown command ARM_AWAY for area House

My config is currently set to:

discovery: true
areas:

  • id: home
    full_arm: armed_away
    part_arm_1: armed_night

Any help would be appreciated.

This is my start-up:

2024-02-02 16:42:38 - INFO: Panel: Premier Elite 24 (V6.05.03LS1)
2024-02-02 16:42:38 - INFO: Fetched Area A: Area A
2024-02-02 16:42:38 - INFO: Fetched Area B: Area B

And so my areas configuration is:

- id: area_a
  full_arm: armed_away
  part_arm_1: armed_night

Yours, shows:

2024-02-02 13:02:58 - INFO: Fetched Area A: House

So should probably be:

- id: house
  full_arm: armed_away
  part_arm_1: armed_night
1 Like

Thats one of the ways i tried it previously, just set it the same again and this is the result:

2024-02-02 20:09:18 - INFO: Panel: Premier Elite 64 (V5.04.02LS1)
2024-02-02 20:09:19 - INFO: Fetched Area A: House
2024-02-02 20:09:19 - INFO: Fetched Area B: Area B
2024-02-02 20:09:19 - INFO: Fetched Area C: Area C
2024-02-02 20:09:19 - INFO: Fetched Area D: Area D
2024-02-02 20:09:19 - INFO: Fetched Zone 1: Hallway (Type: Entry/Exit 1; Areas: A)
2024-02-02 20:09:19 - INFO: Fetched Zone 2: Kitchen (Type: Guard; Areas: A)
2024-02-02 20:09:20 - INFO: Fetched Zone 3: Garage (Type: Guard; Areas: A)
2024-02-02 20:09:20 - INFO: Fetched Zone 4: Conservatory (Type: Guard; Areas: A)
2024-02-02 20:09:22 - INFO: Fetched Zone 9: Keypad (Type: Guard; Areas: A)
2024-02-02 20:09:22 - INFO: Fetched Zone 10: Front Door (Type: Entry/Exit 1; Areas: A)
2024-02-02 20:09:22 - INFO: Fetched Zone 11: Back Door (Type: Guard Access; Areas: A)
2024-02-02 20:09:23 - INFO: Fetched Zone 12: Living Room (Type: Guard; Areas: A)
2024-02-02 20:09:23 - INFO: Fetched Zone 13: Upstairs (Type: Guard; Areas: A)
2024-02-02 20:09:57 - INFO: Updating all zone states…
2024-02-02 20:09:57 - INFO: Updating all area states…
2024-02-02 20:09:58 - INFO: Application ready
2024-02-02 20:12:12 - WARNING: Unknown command ARM_HOME for area House
2024-02-02 20:12:24 - WARNING: Unknown command ARM_AWAY for area House

Config:

discovery: true
areas:

  • id: house
    full_arm: armed_away
    part_arm_1: armed_night

Do you have anything else in your config that i could be missing?

I think you’ve probably got the wrong ‘states’ selected as options, in the frontend (lovelace).

Select only Arm Away and Arm night (not Arm home etc)

In code:

  - type: alarm-panel
    states:
      - arm_night
      - arm_away
    entity: alarm_control_panel.area_a
    name: House Alarm

I assume you should at least have ‘full_arm’ (arm_away), it would depend on the alarm setup if you’ve got ‘part_arm_1’ (arm_night).

I’ve just tried that and got the same error in the logs, this is my code from the frontend

square: false
type: grid
columns: 1
cards:

  • type: entities
    entities:
    • entity: binary_sensor.texecom_premier_elite_64_front_door
      name: Front Door
    • entity: binary_sensor.texecom_premier_elite_64_back_door
      name: Back Door
    • entity: binary_sensor.texecom_premier_elite_64_hallway
      name: Hallway
    • entity: binary_sensor.texecom_premier_elite_64_conservatory
      name: Conservatory
    • entity: binary_sensor.texecom_premier_elite_64_garage
      name: Garage
    • entity: binary_sensor.texecom_premier_elite_64_kitchen
      name: Kitchen
    • entity: binary_sensor.texecom_premier_elite_64_living_room
      name: Living Room
    • entity: binary_sensor.texecom_premier_elite_64_upstairs
      name: Upstairs
    • entity: binary_sensor.texecom_premier_elite_64_keypad
      name: Keypad
    • entity: alarm_control_panel.texecom_premier_elite_64_house
      state_color: true
      title: Alarm System
  • states:
    • arm_away
    • arm_night
      type: alarm-panel
      entity: alarm_control_panel.texecom_premier_elite_64_house
      name: Alarm System

Thanks for your help with this by the way, been wracking my brain at it for a days.

Hmm, most odd.

I’m not sure where ‘it’ is getting ‘ARM_HOME’ from then - did you restart the addon, after making configuration changes?

P.S. Please format your logs/code with the code (Preformatted) tags, it makes it much easier to read.

Hi - to anyone else who has this problem (!) - it seems like changing the ARC 1 protocol (in UDL/Digi Options / Program Digi) from “Texecom Connect” to “Disabled” fixes the problem and the system no longer crashes every few days