Bentel Absoluta Alarm System integration

Great news!

I received the documents from Bentel to develop a custom component in the meanwhile but I’m struggling with the connection because I don’t receive any response from my Bentel even if the string is correct…

Fantastic
Thank you very much

I’ve found some time so I can start by sharing some details ( I’m writing from my iPhone so for the code you have to wait a little, sorry :disappointed:)

I took the original project and started fixing the Java code, even though I’m not a seasoned Java developer — I had to learn quite a lot.
Right now, connects to the central unit. It reads the status of sensors, partitions, and the global alarm, and allows for arming individual partitions, the whole system, or using custom modes (A, B, C, D).

The communication works reliably, including automatic reconnection, and hands over control to the official app when needed, (push notifications works).
There are still some random disconnection when packets are lost ( I’m working on it but the frequency is like 1 every week and a half ) and the reconnection logic of the alarm is to start by saying that is disarmed and after few seconds it will give back the correct status.

The system publishes everything to an MQTT server and could also run in a Docker container, though I currently run it directly in Node-RED as I’m not using home assistant.

The old Home Assistant plugin no longer works due to huge changes.
The original code shared by Nicomedia was based on IMAVIS’ Panel Control.
I’ve rewritten it with some help, but to avoid legal trouble, I plan to release only the compiled Java package, keeping the protocol part closed-source. ( don’t judge me but we are talking about source code of a communication protocol that is “confidential” I don’t want to have any troubles in the real life tho)

Still, users will be able to build their own MQTT integrations like before if the know how to use Java. If someone wants to revive the Home Assistant plugin or create a new one, I’d be happy to help.
I’m now a bit more available for that.

Once I will release the code I will also release a guide with the MQTT message that need to be sent or read so if you don’t want to bother about the code you could make some integrations.

One thing about the actual status of the sensor , the refresh rate of those is not fast , so if you need to know if a door or window is open it’s ok , but if you want to turn on the light of a room based on the status of the radar , the update time is not reliable and fast as it needed for an automation, that’s how the alarm system works , I can’t do nothing more on that.

Also there is no way to get information if a command can be accepted before sending the command so you need to handle by yourself the 5 status of the alarm:

  • ok to arm the entire system
  • Ok to arm A mode B C and D
  • And if you need to be more precise you have to handle the ok to arm of every partition.

I will share also my nodered code so you can see how I build the ok to arm and the command management , so I can arm the alarm and automatically set the correct mode if some door is opened even if I’ve asked for the full arming.

P.s. I’m not a genius and for sure something will not work I just want to share what I’ve done.
In my case is working flawlessly from 1 month.


1 Like

Just to update all of you we have found some major things that need to be fixed for the Public release, I said we as AlessandroTischer joined the development with me.
Thanks to him now we do have a docker container and an integration with alarm control panel of home assistant!
I’ll keep you update as I want to share all once is ready to be released for the home assistant users!

1 Like

@Vexx02
Since I am also developing a custom component, as mentioned a few posts ago, do you need any help?
I have signed an NDA with Bentel.

:rocket: Exciting News: Beta Release!

Hello everybody!

I’m very happy to report that @Vexx02 and I are now ready to share the first version of the software we have been working on.

It’s been a long journey, mostly for @Vexx02, who has been working on this for more than a year now.

I just joined the project a few weeks ago, mainly focusing on making the Home Assistant integration work, creating a Docker image and a Home Assistant Add-on.

Vexx02 started working from what was a pretty old Imavis integration of the Bentel security system, the same @nicomedia was using for his project. The project was obfuscated, so they both had to reverse engineer it to understand how it worked.
@Vexx02 also worked with Bentel to get the documentation for the API, which was not easy to obtain nor to work with.

The project is definitely not finished, it still needs to be polished, and some things can be drastically streamlined, but we are very happy with the result so far.

We are releasing the first “beta” version of the software, in order to get some feedback from the community.

Note: Unfortunately, we are not able to release the source code at this time, as Bentel has not given us permission to do so.
However, we plan to release the compiled binaries (or an obfuscated version of the source) for the communication with the Bentel security system, but share the source code for the rest of the project. This is still under discussion, but we hope to have a solution soon.


What can it do?

Almost everything you can do with the Bentel Absoluta App:

  • Arm and disarm the system
  • Check the status of the zones
  • Bypass or unbypass each zone
  • Activate modes

Using it (if you already have MQTT set up in your HA) is just a matter of configuring the Docker container or the Home Assistant Add-on with the required parameters, and starting it up.

In a few seconds, all the information from your alarm system will be available in Home Assistant as an MQTT Device, and you can start using it right away.

Everything happens locally, and the Absoluta app can still be used at the same time, as the software will let the app work, and reconnect to the alarm system as soon as it is available again. Notifications to the app will also be sent as usual, so you can use both the app and the Home Assistant integration at the same time.


We still have to work on the documentation, but we will try to create some README files soon.

In the meantime, if you want to try it out, you can use docker compose to run the Docker image, or install the Home Assistant Add-on from the Home Assistant Add-on store.

We are looking forward to your feedback and suggestions!

Home Assistant Add-on:

Add the following repository to your Home Assistant Add-on store:

https://github.com/AlessandroTischer/absoluta-local-addon

Then you can install the “absoluta_local” add-on from the store, configure it and start it.

Docker image:

You can use the following docker-compose file to run the docker image:

version: "3.8"
services:
  bentel-absoluta:
    image: "axtx2301/bentel-absoluta-local-bridge:latest"
    environment:
      MQTT_ADDRESS: "<MQTT_ADDRESS>"
      MQTT_PORT: "<MQTT_PORT>" # Default is 1883
      MQTT_USERNAME: "<MQTT_USERNAME>"
      MQTT_PASSWORD: "<MQTT_PASSWORD>"
      ALARM_ADDRESS: "<ALARM_ADDRESS>"
      ALARM_PIN: "<ALARM_PIN>"
      ALARM_PORT: "<ALARM_PORT>" # Default is 3064
    restart: unless-stopped
2 Likes

Wow, this is a super news :slight_smile:
Thank you very much

1 Like

Great guys!!! I’d say let’s write a little documentation, so that we are available for everyone and avoid unnecessary questions =)

Here is the log just installed and configured

INFO: connecting to /192.168.0.44:3064

INFO: setting state: HANDSHAKING

INFO: setting state: READY

WARN: repeated sequence number 37: ignoring message

ERROR: sending message: ABS/sensor/17 Exception: Cannot invoke “String.toUpperCase()” because “this.sensorStatuses[]” is null

ERROR: sending message: ABS/sensor/18 Exception: Cannot invoke “String.toUpperCase()” because “this.sensorStatuses[]” is null

ERROR: sending message: ABS/sensor/20 Exception: Cannot invoke “String.toUpperCase()” because “this.sensorStatuses[]” is null

WARN: repeated sequence number 58: ignoring message

WARN: repeated sequence number 58: ignoring message

WARN: repeated sequence number 84: ignoring message

Here I’ve tried to arm a partition, with success

DEBUG: setting partition 2 arming to: AWAY

1 Like

Good morning, thanks for your precious work. If I can, I’ll start the test in the afternoon.

1 Like

with Home Assistant Add-one everything works but at the beginning of this error

MQTT_PASSWORD=***

ALARM_ADDRESS=192.168.178.44

ALARM_PIN=***

ALARM_PORT=3064

HOME_ASSISTANT_DISCOVERY=true

Collegamento al broker: tcp://192.168.178.120:1883

Connesso

INFO: connecting to /192.168.178.44:3064

INFO: setting state: HANDSHAKING

INFO: setting state: READY

Jun 11, 2025 1:05:11 PM io.netty.channel.DefaultChannelPipeline onUnhandledInboundException

WARNING: An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.

java.lang.ArrayIndexOutOfBoundsException: Index 7 out of bounds for length 7

at Callback.setPartitionRemoteName(Callback.java:359)

at plugin.absoluta.CallbackListener.propertyChange(CallbackListener.java:39)

It’s nice to receive some feedback!
Of course the system was “perfect” until it was only my unit and the one of Alessandro.

I’ve managed to fix the error of the String.toUpperCase() of @valerix85 and i think also the exception of @GiuseppeMartini81

But could you please share with me few info?

@valerix85: i see problems on sensor 17 18 and 20, do you have any idea on what are those?

@GiuseppeMartini81 can you tell me the exact number of partition that you have on your system?

1 Like

Hi,
I have 7 partitions/zones…the GAS and H2O partitions are not currently detected. In practice, the control unit controls two relays to close the GAS and/or H2O solenoid valves…probably add-one only manages 5 partitions and therefore gives an exception on the array…if so, I would recommend manually entering the number of partitions.
Tip: when there are, for example, window sensors in a delayed partition, HA does not recognize the status and gives it as unknown, so I recommend creating a new partition with no delay.
I am an Italian computer engineer, if you need me, I am at your disposal.
In practice with the old system as partition I have:
Global
Day
Night
GAS
H2O
Perimeter
Taverna
now it does not give me GAS and H2O

Sure, here a screenshot of all sensors from Bentel BOSS

Hi,
from the BOSS backup that the installer left me I note that there are 8 zones… since he then made several changes I don’t know if it is the definitive one… if you need it let me know and I will download the new “system”.

there are 8 real partitions (the global is generated perhaps for total/pariazle insertion)… below I posted a screen of Bentel Boss regarding the zones present. It should be noted that the NO220Taverna zone is used to send me an SMS in real time when the power goes out.; Area 05 I did not understand what it is for. I would probably like to create a new zone to put all the window sensors there otherwise now, since the Perimeter zone is delayed, the central does not send the Open/Closed status. I hope I was helpful.