HomeMatic OCCU Hardware Issue

Installed hass.io on a RPi3 today. Got a HM-MOD-RPI-PCB connected to the GPIO Pins.
Installed Addon “HomeMatic OCCU”. Container version is 2.31.23-p0. Config is default.

hassio host hardware shows the device as

"serial": [
"/dev/ttyS0",
"/dev/ttyAMA0"
],

Parameter dtoverlay=pi3-miniuart-bt is set in config.txt.

Unfortunately the Container won´t start - log is

2018/01/14 18:07:52.221 <Info> BidCoS-Service started 2018/01/14 18:07:52.249 <Info> XmlRpc Server is listening on TCP port 2001 2018/01/14 18:07:52.263 <Debug> CCU2CommController::init() - Legacy initialization. 2018/01/14 18:07:52.299 RX SERIAL: fd 00 0c 00 00 00 43 6f 2018/01/14 18:07:52.299 RX SERIAL: 5f 43 50 55 5f 42 4c 72 2018/01/14 18:07:52.300 RX SERIAL: 51 2018/01/14 18:07:52.301 RX FRAME: 00 00 00 43 6f 5f 43 50 55 5f 42 4c 2018/01/14 18:07:52.302 <Debug> () CCU2CommController::handleIdentifyEvent(): Handling incoming identify event. 2018/01/14 18:07:52.302 <Debug> () CCU2CommController::handleIdentifyEvent(): Coprocessor entered bootloader. Starting application. 2018/01/14 18:07:52.303 <Debug> () CCU2CommController::startCoprocessorApp(): Trying to start coprocessor application 2018/01/14 18:07:52.805 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command 2018/01/14 18:07:52.806 CCU2CommController::SendSystemCommdand() 2018/01/14 18:07:52.806 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 00 03 18 0a 2018/01/14 18:07:53.336 RX SERIAL: fd 00 04 00 00 04 01 99 2018/01/14 18:07:53.336 RX SERIAL: 3d 2018/01/14 18:07:53.336 RX FRAME: 00 00 04 01 2018/01/14 18:07:53.375 RX SERIAL: fd 00 10 fe 01 00 44 75 2018/01/14 18:07:53.377 RX SERIAL: 61 6c 43 6f 50 72 6f 5f 2018/01/14 18:07:53.377 RX SERIAL: 41 70 70 b7 36 2018/01/14 18:07:53.378 RX FRAME: fe 01 00 44 75 61 6c 43 6f 50 72 6f 5f 41 70 70 2018/01/14 18:07:53.378 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Unknown command type: fe (hex). 2018/01/14 18:07:53.378 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/14 18:07:57.264 <Debug> () CCU2CommController::startCoprocessorApp(): Trying to start coprocessor application 2018/01/14 18:07:57.765 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command 2018/01/14 18:07:57.765 CCU2CommController::SendSystemCommdand() 2018/01/14 18:07:57.765 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 01 03 9e 09 2018/01/14 18:07:57.768 RX SERIAL: fd 00 02 ff 01 82 05 2018/01/14 18:07:57.768 RX FRAME: ff 01 2018/01/14 18:07:57.768 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes. 2018/01/14 18:07:57.768 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/14 18:07:58.766 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response. 2018/01/14 18:08:00.766 CCU2CommController::startCoprocessorAppThreadFunction(): Retrying to send start command 2018/01/14 18:08:00.766 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command 2018/01/14 18:08:00.766 CCU2CommController::SendSystemCommdand() 2018/01/14 18:08:00.766 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 02 03 94 09 2018/01/14 18:08:00.769 RX SERIAL: fd 00 02 ff 02 82 0f 2018/01/14 18:08:00.769 RX FRAME: ff 02 2018/01/14 18:08:00.769 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes. 2018/01/14 18:08:00.769 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/14 18:08:01.767 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response. 2018/01/14 18:08:02.265 <Fatal error> CCU2CommController::init(): Init failed. Cannot start coprocessor application. 2018/01/14 18:08:02.265 CCU2CommController::SendSystemCommdand() 2018/01/14 18:08:02.265 CCU2CommController::SendSystemCommdand() sending: fd 00 04 00 03 0a 00 bd 07 2018/01/14 18:08:02.268 RX SERIAL: fd 00 02 ff 03 02 0a 2018/01/14 18:08:02.268 RX FRAME: ff 03 2018/01/14 18:08:02.268 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes. 2018/01/14 18:08:02.268 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/14 18:08:03.272 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response. 2018/01/14 18:08:03.272 <Error> () CCU2CommController::setCSMACAEnabled(): Error disabling CSMA/CA. 2018/01/14 18:08:03.292 <Error> No BidCoS-Interface available 2018/01/14 18:08:03.292 <Warning> Error initializing interfaces

Ideas on how to fix it? Tested another physical HM-MOD-RPI-PCB module btw.

1 Like

Can give more details about your settup? Is it a generic installation or resinos? How is the config of that add-on?

Everithing default :slight_smile: Did not customize anthing yet.

Problem still exists with the newer container version 2.31.25-p0

underlay OS?

RasPi3 with https://github.com/home-assistant/hassio-build/releases/download/1.1/resinos-hassio-1.1-raspberrypi3.img.bz2

Can you try to run the add-on a bit? I know they will made a firmware upgrade before it work.

I think that will help you: https://github.com/home-assistant/hassio-addons/pull/235

Thanks for checking and reworking. As I´m not that much into docker, I´ve tried updating the container but it seems, that you havent updated the container yet? Can you please provide a short “implement quickfix via”?
I´m able to use Linux and the console btw. - so logging in to the hass.io port 22222 is not a problem :slight_smile:

Thanks and regards,

Jakob

I relese now p2

You can call “reload” in store and you will see the last version :slight_smile:

Unfortunately still nothing :frowning:

Version 2.31.25-p2

2018/01/19 22:53:11.777 <Info> BidCoS-Service started
2018/01/19 22:53:11.781 <Info> XmlRpc Server is listening on TCP port 2001
2018/01/19 22:53:11.785 <Debug> CCU2CommController::init() - Legacy initialization.
2018/01/19 22:53:11.820 RX SERIAL: fd 00 0c 00 00 00 43 6f
2018/01/19 22:53:11.821 RX SERIAL: 5f 43 50 55 5f 42 4c 72
2018/01/19 22:53:11.823 RX SERIAL: 51
2018/01/19 22:53:11.823 RX FRAME: 00 00 00 43 6f 5f 43 50 55 5f 42 4c
2018/01/19 22:53:11.823 <Debug> () CCU2CommController::handleIdentifyEvent(): Handling incoming identify event.
2018/01/19 22:53:11.824 <Debug> () CCU2CommController::handleIdentifyEvent(): Coprocessor entered bootloader. Starting application.
2018/01/19 22:53:11.825 <Debug> () CCU2CommController::startCoprocessorApp(): Trying to start coprocessor application
2018/01/19 22:53:12.325 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command
2018/01/19 22:53:12.325 CCU2CommController::SendSystemCommdand()
2018/01/19 22:53:12.325 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 00 03 18 0a
2018/01/19 22:53:12.855 RX SERIAL: fd 00 04 00 00 04 01 99
2018/01/19 22:53:12.855 RX SERIAL: 3d
2018/01/19 22:53:12.856 RX FRAME: 00 00 04 01
2018/01/19 22:53:12.894 RX SERIAL: fd 00 10 fe 01 00 44 75
2018/01/19 22:53:12.896 RX SERIAL: 61 6c 43 6f 50 72 6f 5f
2018/01/19 22:53:12.897 RX SERIAL: 41 70 70 b7 36
2018/01/19 22:53:12.897 RX FRAME: fe 01 00 44 75 61 6c 43 6f 50 72 6f 5f 41 70 70
2018/01/19 22:53:12.897 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Unknown command type: fe (hex).
2018/01/19 22:53:12.897 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable.
2018/01/19 22:53:16.786 <Debug> () CCU2CommController::startCoprocessorApp(): Trying to start coprocessor application
2018/01/19 22:53:17.287 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command
2018/01/19 22:53:17.287 CCU2CommController::SendSystemCommdand()
2018/01/19 22:53:17.287 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 01 03 9e 09
2018/01/19 22:53:17.290 RX SERIAL: fd 00 02 ff 01 82 05
2018/01/19 22:53:17.290 RX FRAME: ff 01
2018/01/19 22:53:17.290 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes.
2018/01/19 22:53:17.290 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable.
2018/01/19 22:53:18.288 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response.
2018/01/19 22:53:20.288 CCU2CommController::startCoprocessorAppThreadFunction(): Retrying to send start command
2018/01/19 22:53:20.288 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command
2018/01/19 22:53:20.288 CCU2CommController::SendSystemCommdand()
2018/01/19 22:53:20.289 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 02 03 94 09
2018/01/19 22:53:20.292 RX SERIAL: fd 00 02 ff 02 82 0f
2018/01/19 22:53:20.292 RX FRAME: ff 02
2018/01/19 22:53:20.293 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes.
2018/01/19 22:53:20.293 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable.
2018/01/19 22:53:21.290 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response.
2018/01/19 22:53:21.787 <Fatal error> CCU2CommController::init(): Init failed. Cannot start coprocessor application.
2018/01/19 22:53:21.788 CCU2CommController::SendSystemCommdand()
2018/01/19 22:53:21.788 CCU2CommController::SendSystemCommdand() sending: fd 00 04 00 03 0a 00 bd 07
2018/01/19 22:53:21.790 RX SERIAL: fd 00 02 ff 03 02 0a
2018/01/19 22:53:21.791 RX FRAME: ff 03
2018/01/19 22:53:21.791 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes.
2018/01/19 22:53:21.791 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable.
2018/01/19 22:53:22.788 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response.
2018/01/19 22:53:22.788 <Error> () CCU2CommController::setCSMACAEnabled(): Error disabling CSMA/CA.
2018/01/19 22:53:22.789 <Error> No BidCoS-Interface available
2018/01/19 22:53:22.789 <Warning> Error initializing interfaces

Do you try with enabled reset?

After a reset - uninstalled, reinstalled, reset enabled:

2018/01/20 10:13:25.766 <Info> BidCoS-Service started 2018/01/20 10:13:25.825 <Info> XmlRpc Server is listening on TCP port 2001 2018/01/20 10:13:25.840 <Debug> CCU2CommController::init() - Legacy initialization. 2018/01/20 10:13:25.841 RX SERIAL: fd 00 0c 00 00 00 43 6f 5f 43 50 55 5f 42 4c 72 2018/01/20 10:13:25.875 RX SERIAL: fd 00 00 0c 00 00 00 43 6f 2018/01/20 10:13:25.876 CCU2SerialFrame::addFrameData(): Corrupt data detected. Frame start character unexpected. 2018/01/20 10:13:25.876 RX FRAME: 2018/01/20 10:13:25.876 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 0 bytes. 2018/01/20 10:13:25.876 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/20 10:13:25.876 RX SERIAL: 5f 43 50 55 5f 42 4c 72 2018/01/20 10:13:25.876 RX SERIAL: 51 2018/01/20 10:13:30.841 <Debug> () CCU2CommController::startCoprocessorApp(): Trying to start coprocessor application 2018/01/20 10:13:31.342 CCU2CommController::startCoprocessorAppThreadFunction(): Send start command 2018/01/20 10:13:31.342 CCU2CommController::SendSystemCommdand() 2018/01/20 10:13:31.342 CCU2CommController::SendSystemCommdand() sending: fd 00 03 00 00 03 18 0a 2018/01/20 10:13:31.872 RX SERIAL: fd 00 04 00 00 04 01 99 2018/01/20 10:13:31.872 CCU2SerialFrame::addFrameData(): Corrupt data detected. Frame start character unexpected. 2018/01/20 10:13:31.872 RX SERIAL: 3d 2018/01/20 10:13:31.872 RX FRAME: 00 00 04 01 2018/01/20 10:13:31.911 RX SERIAL: fd 00 10 fe 01 00 44 75 2018/01/20 10:13:31.912 RX SERIAL: 61 6c 43 6f 50 72 6f 5f 2018/01/20 10:13:31.913 RX SERIAL: 41 70 70 b7 36 2018/01/20 10:13:31.913 RX FRAME: fe 01 00 44 75 61 6c 43 6f 50 72 6f 5f 41 70 70 2018/01/20 10:13:31.913 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Unknown command type: fe (hex). 2018/01/20 10:13:31.913 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/20 10:13:35.842 <Fatal error> CCU2CommController::init(): Init failed. Cannot start coprocessor application. 2018/01/20 10:13:35.843 CCU2CommController::SendSystemCommdand() 2018/01/20 10:13:35.843 CCU2CommController::SendSystemCommdand() sending: fd 00 04 00 01 0a 00 3d 2c 2018/01/20 10:13:35.845 RX SERIAL: fd 00 02 ff 01 82 05 2018/01/20 10:13:35.846 RX FRAME: ff 01 2018/01/20 10:13:35.846 CCU2CoprocessorCommand::CCU2CoprocessorCommand(): Message too small: 2 bytes. 2018/01/20 10:13:35.846 <Debug> () CCU2CommController::handleIncomingSerialFrame(): Command not parseable. 2018/01/20 10:13:36.843 <Debug> () CCU2CommController::waitForCoProcessorResponse(): Timeout while waiting for response. 2018/01/20 10:13:36.843 <Error> () CCU2CommController::setCSMACAEnabled(): Error disabling CSMA/CA. 2018/01/20 10:13:36.846 <Error> No BidCoS-Interface available 2018/01/20 10:13:36.846 <Warning> Error initializing interfaces

Strange.

I have a new second module here. I will try it out today.

But on my first module I had no troubles. If you power supplay okay? Do you see any red light they blink on mainboard?

EDIT:
You need restart the add-on after you enable the reset

PSU is sufficient. I restarted the addon with enabled reset.
Got another module here aswell. Currently I´m using the other module in my production environment with “RaspMatic” - will there by trouble with the module, when I replug it after testing with HomeMatic-OCCU? As I understood, the Firmware (and maybe more config?) is overwritten?

I also got the same Problem…

I´m highly interested in using the OCCU Container - can I do anything, to nail down the issue?

Hello folks,
I am tinkering with the same module myself and cannot get it to work either.
I followed these instructions: https://home-assistant.io/addons/homematic/
My Pi is also Model 3 and (I hope) I was able to change the config.txt correctly.

My error messages are a little bit different although I am running the same configuration with the OCCU as an addon on hass io. Version of OCCU is 2.31.25-p2.

In terms of configuration I left everything as it is in the addon’s options tab
except setting “reset” to “true” but with “reset” = false I basically get the same result.

This is the “options” tab:
{
“rf_enable”: true,
“rf”: [
{
“type”: “CCU2”,
“device”: “/dev/ttyAMA0”,
“reset”: true
}
],
“wired_enable”: false,
“wired”: [
{
“serial”: “xy”,
“key”: “abc”,
“ip”: “192.168.0.0”
}
]
}

These are the errors I get:

2018/02/02 15:32:54.970 Device description rf_dim_1l_644_le_v2_4.xml loaded (121)
2018/02/02 15:32:54.978 Device description rf_ou_led16_ge_v1_1.xml loaded (122)
2018/02/02 15:32:54.984 Device description rf_rc-key4-2.xml loaded (123)
2018/02/02 15:32:54.987 Device description rf_s550ia.xml loaded (124)
2018/02/02 15:32:55.008 Device description rf_cfm.xml loaded (125)
2018/02/02 15:32:55.015 Device description rf_pb-2-wm55_le_v1_3.xml loaded (126)
2018/02/02 15:34:05.713 PlatformInit()
2018/02/02 15:34:49.651 PlatformInit()
2018/02/02 15:34:49.670 XmlRpc fault calling system.listMethods({“homeassistant-BidCoS-RF”}) on http://172.30.32.1:42648/RPC2:[faultCode:1,faultString:"<class ‘TypeError’>:system_listMethods() takes 1 positional argument but 2 were given"]
2018/02/02 15:34:49.688 GetAvailableFirmware for HM-RCV-50
2018/02/02 15:34:49.992 XmlRpcClient error calling newDevices({“homeassistant-BidCoS-RF”,{[ADDRESS:“BidCoS-RF”,CHILDREN:{“BidCoS-RF:0”,“BidCoS-RF:1”,“BidCoS-RF:2”,“BidCoS-RF:3”,“BidCoS-RF:4”,“BidCoS-RF:5”,“BidCoS-RF:6”,“BidCoS-RF:7”,“BidCoS-RF:8”,“BidCoS-RF:9”,“BidCoS-RF:10”,“BidCoS-RF:11”,“BidCoS-RF:12”,“BidCoS-RF:13”,“BidCoS-RF:14”,“BidCoS-RF:15”,“BidCoS-RF:16”,“BidCoS-RF:17”,“BidCoS-RF:18”,“BidCoS-RF:19”,“BidCoS-RF:20”,“BidCoS-RF:21”,“BidCoS-RF:22”,“BidCoS-RF:23”,“BidCoS-RF:24”,“BidCoS-RF:25”,“BidCoS-RF:26”,“BidCoS-RF:27”,“BidCoS-RF:28”,“BidCoS-RF:29”,“BidCoS-RF:30”,“BidCoS-RF:31”,“BidCoS-RF:32”,“BidCoS-RF:33”,“BidCoS-RF:34”,“BidCoS-RF:35”,“BidCoS-RF:36”,“BidCoS-RF:37”,“BidCoS-RF:38”,“BidCoS-RF:39”,“BidCoS-RF:40”,“BidCoS-RF:41”,“BidCoS-RF:42”,“BidCoS-RF:43”,“BidCoS-RF:44”,“BidCoS-RF:45”,“BidCoS-RF:46”,“BidCoS-RF:47”,“BidCoS-RF:48”,“BidCoS-RF:49”,“BidCoS-RF:50”},FIRMWARE:"?",FLAGS:9,INTERFACE:“OEQ2297466”,PARAMSETS:{“MASTER”},PARENT:"",RF_ADDRESS:6622639,ROAMING:0,RX_MODE:1,TYPE:“HM-RCV-50”,UPDATABLE:0,VERSION:6],[ADDRESS:“BidCoS
2018/02/02 15:34:49.993 XmlRpc fault: [faultCode:1,faultString:”<class ‘KeyError’>:‘RF’"]

Hi all,

I have the same problem as JohnnyK!
Is there a chance to test the GPIO Module?
Because it is a kit there could be an error on assembling it.

Thanks in advance!

Mario

You can test the modula via [RaspberryMatic](https://github.com/jens-maus/RaspberryMatic). If HomeMatic components work with it, the module should be working.

I myself have not been able, to use the OCCU Container version, that this thread is about and still use RaspberryMatic for my HomeMatic components. To be honest - I am really interested in switching to OCCU but am kind of frustrated cause there is no progress since weeks.

Jakob

Hello Jakob,
So this basically means you are using a separate Raspberry Pi to run the OCCU on and then integrate this think into the Pi that runs Hass.io like you would with a run-off-the-mill Homematic CCU2, right?

That’s also my fallback plan. I was just hoping to save the extra Raspberry Pi and run everything from one device.
I also posted the problem on the German HomeMatic forum.
So far unfortunately no reaction.
I keep you updated if I learn something new.