Integrating Becker Motors in to Hassio

The integration allows to set the position by value_template.
You can test the templates in Developer Tools → Template before adding them to your config file.
Valid results are True for closed position, False for open position and any numbers to set the position.
I don’t use it, so let me know if you see any issues.

Good morning,

I am using the Integration, too - through HACS, works meanwhile quite well.

The only Thing I am still struggeling with is the existing remote Integration: I have a complete of handsets that I can not read out yet. There seems to be a way to read the remote by a log file comment, but I can not get it to work.

Can anybody please help? Any experience made with such setup?

Any help is highly appreciated!

Have a great Sunday!!!

Hello,
we bought two solar shutters from Roto and would like to integrate them into our smart home. Can you tell us how to determine if they are powered by Becker motors? And if we know they are powered by Becker motors, which is the right USB stick for us?
Thanks in advance

To enable log for the becker component you need to add the following lines to your configuration.yaml file.

logger:
  default: info
  logs:
    custom_components.becker : debug

Please note that the name of the component in your configuration.yaml file must match with the folder name in the custom_components folder.
If becker is installed here config\custom_components\becker the line in configuration.yaml must be custom_components.becker : debug
Then reboot Home Assistant and open the home-assistant.log file with a text editor. Search for becker. You should find a line like:

2022-09-22 05:20:42 DEBUG (MainThread) [custom_components.becker.pybecker.becker_helper] Try to open connection.

No press the stop key of your remote and re-open the log file. You should find a line like:

2022-09-22 06:41:11 DEBUG (Thread-3) [custom_components.becker.pybecker.becker_helper] Received packet: unit_id: 12345, channel: 1, command: UP, argument: 0, packet: b'\x020....\x03'

Here is the ID of your remote unit_id: 12345 and the corresponding channel channel: 1
Add
remote_id: "12345:1"
into the section of your cover.

Please see the README.md file for more information.

From my understanding all Roto shutters with wireless remote use Becker Centronic standard.
Please see this discussion about supported USB Sticks:

Both, the white and the black USB Stick are supported. You require a Becker Centronic USB Stick (without Plus).

1 Like

Hello Rainer,

thank you very much. I will buy one of the sticks and try to integrate it to my home assistant.

Hi, if you stress “without plus” - is it correct, that only centronic usb is supported and not centronic plus usb?

One of my motors is dying, because of the missing feedback in centronic I was thinking to replace the motor by a centronic plus motor.

But that would not give me Home Assistant support?

“Without plus” refers to the USB Stick only.
From what I know, the Centronic Plus motors are backwards compatible. But of course you cannot make use of the new Centronic Plus features.
To make use of the Centronic Plus features, all devices needs to be Centronic Plus devices. But as I know, the support for the Centronic Plus USB Stick has not been integrated by anybody into Home Assistant.
To be on the safe side, you could try to train the motor before you mount them into your cover.
Let us know the results.

THANK YOU!!! It works!!! (see my post from Feb 2021, I was lost back then and gave it up already :slight_smile:

1 Like

Dear Rainer,
unfortunately I was not able to find the integration in HACS. Is it still available there?

I added the integration as a custom repository. Is this the right way to do it in HACS?

This is fine :slight_smile:
It is only available as custom repository.

I struggle pairing my shutters to HA.
This is written in my configuration.yaml:

cover:
  - platform: becker
    # Optional device path (useful when running from docker container)
    # Default device:
    device: "/dev/serial/by-id/usb-Becker-Antriebe_GmbH_CDC_RS232_v125_Centronic-if00"
    # device: "/dev/beckercentronicusb"
    # Optional database filename (database is stored in HA config folder)
    filename: "centronic-stick.db"
    covers:
      kitchen:
        friendly_name: "Kitchen Cover"
        channel: "1:1"

I put my shutter in pairing mode and started the becker pair service with this content:

service: becker.pair
data:
  channel: 1
  unit: 1

Unfortunately the shutter did not respond and I am not able to control it via HA.
Do you have any suggestions?
In addition I am wondering what the kitchen underneath the covers stands for?

I am able to provide the content of my centronic-stick.db if needed.

Kitchen is just the example for the name of your first cover …

    covers:
    # Here you can add your covers
      kitchen:  # Just as an example name
        friendly_name: "Kitchen Cover" # Just as an example name
        channel: "1:1"
      my_second_cover:
        friendly_name: "My second cover"
        channel: "1:2"

If your have any trouble please refer to the readme, enable debug for the becker component and reboot afterwards.
Have a look to the home-assistant.log and search for becker.
Verify that debug is sucessfully enabled for becker - verify you see any lines with DEBUG and becker, e.g.:

2022-10-15 12:30:12 DEBUG (MainThread) [custom_components.becker.cover] device: /dev/centronicusb; filename: None
2022-10-15 12:30:12 DEBUG (MainThread) [custom_components.becker.rf_device] Use filename: centronic-stick.db
2022-10-15 12:30:12 DEBUG (MainThread) [custom_components.becker.pybecker.becker_helper] Try to open connection.
2022-10-15 12:30:12 DEBUG (Thread-3) [custom_components.becker.pybecker.becker_helper] BeckerCommunicator thread started.

Are there any errors related to becker?

If you are not sure post the corresponding lines of your log file.

I checked the log and the only entries with DEBUG are the ones from yesterday:

2022-11-10 13:16:43.324 DEBUG (MainThread) [custom_components.becker.cover] device: /dev/serial/by-id/usb-Becker-Antriebe_GmbH_CDC_RS232_v125_Centronic-if00; filename: centronic-stick.db
2022-11-10 13:16:43.326 DEBUG (MainThread) [custom_components.becker.rf_device] Use filename: centronic-stick.db
2022-11-10 13:16:43.329 DEBUG (MainThread) [custom_components.becker.pybecker.becker_helper] Try to open connection.
2022-11-10 13:16:43.338 DEBUG (Thread-2) [custom_components.becker.pybecker.becker_helper] BeckerCommunicator thread started.

I found this entry too:

2022-11-10 13:16:53.423 WARNING (MainThread) [homeassistant.components.cover] Setup of cover platform becker is taking over 10 seconds.

I pressed the buttons on my remote also but no entry is shown in the log.

Addition:
I renamed the shutters yesterday. I called them “wohnzimmer”.
I addeded a card for it on my dashboard and pressed some buttons. Got these entries in my log:

2022-11-11 12:31:19.352 DEBUG (MainThread) [custom_components.becker.cover] Wohnzimmmer Rollo is travelling from position 0 to 100 in 0.0 seconds
2022-11-11 12:31:19.352 DEBUG (MainThread) [custom_components.becker.cover] Wohnzimmmer Rollo update ha-state now
2022-11-11 12:31:19.365 DEBUG (Thread-2) [custom_components.becker.pybecker.becker_helper] Sent packet: unit_id: 1737B, channel: 1, command: UP, argument: 0, packet: b'\x020000000002010B00870000001737B021010100202D\x03'
2022-11-11 12:31:20.784 DEBUG (MainThread) [custom_components.becker.cover] Wohnzimmmer Rollo is travelling from position 100 to 0 in 0.0 seconds
2022-11-11 12:31:20.784 DEBUG (MainThread) [custom_components.becker.cover] Wohnzimmmer Rollo update ha-state now
2022-11-11 12:31:20.799 DEBUG (Thread-2) [custom_components.becker.pybecker.becker_helper] Sent packet: unit_id: 1737B, channel: 1, command: DOWN, argument: 0, packet: b'\x020000000002010B00880000001737B021010100400C\x03'
2022-11-11 12:31:22.324 DEBUG (MainThread) [custom_components.becker.cover] Wohnzimmmer Rollo stopped at position 50
2022-11-11 12:31:22.324 DEBUG (MainThread) [custom_components.becker.cover] Wohnzimmmer Rollo update ha-state now
2022-11-11 12:31:22.342 DEBUG (Thread-2) [custom_components.becker.pybecker.becker_helper] Sent packet: unit_id: 1737B, channel: 1, command: HALT, argument: 0, packet: b'\x020000000002010B00890000001737B021010100103B\x03'

The warning about the long startup time is not normal. Maybe some issue with the USB stick. But other than that I don’t see anything wrong.
Have you restarted your system after setting up? It’s worth to try.
I saw issues during development after hot plugging the USB stick without reboot. Maybe that’s related to the long startup as well.

Thank you very much for your support.
I will completely restart my Pi tomorrow.
Regarding the connection, I wanted to ask what the reaction of the shutter looks like?
When you pair a normal remote it makes the clack sound when you start the paring with the main remote, then it is supposed to clack again when you put the new remote in pairing mode and two more times when you successfully paired the new remote. With the stick you connect directly after enabling paring mode with the main remote, right? Or does it also make the two steps with one clack for the start of the paring and two clacks for the successful pairing?

The pairing is always between your remote and the motor. The motor will react on the commands of all paired remotes.
Usually you already have programmed your remote as a master remote. I would not recommend to program the USB stick as the master remote!
The USB stick is like an additional remote. Therefore the pairing procedure for the USB stick is the same as with a additional remotes. Please refer to you manual for more details.
First you have to bring your motor into training mode with your master remote (first clack). Then issue the pair command in HA. This will be confirmed by your motor with the second clack followed by the clack clack which confirms that the pairing procedure was successful. If you don’t get the clack clack confirmation just repeat the pair command in HA (let me know if this is the case).

Thank you very much for the information. That is what I wanted to know. I will test it later today. I hope that it will work.