RFXCom disconnections

Hi everyone,
I mainly use my openhab installation to control my electric heaters via a rfxcom RFXtrx433. But, sometime, four times a day, my rfxcom do not receive data anymore and my heaters start going mad. To handle this I have to restart my docker container every 6 hours!!

As my WAF is going low, I need help to find a solution.

I extract from my logs two problems:

  • first problem:

At 05:20:27 (as shown below) my host disabled and re-enabled the usb port of the RFXCom (I do not known why!) But the rfxcom binding did not detect anything and stayed ONLINE! Is there a way to refresh/update the rfxcom status to re-enable it?

in …/logs/openhab.log:

2018-03-22 05:20:23.782 [DEBUG] [binding.rfxcom.handler.RFXComHandler] - Received message from bridge: rfxcom:bridge:usb0 message: Raw data = 0A5207A2DC0E0097310169, Packet type = TEMPERATURE_HUMIDITY, Seq number = 162, Sub type = TH7, Device Id = 56334, Temperature = 15.100000000000001, Humidity = 49, Humidity status = COMFORT, Signal level = 6, Battery level = 9
2018-03-22 05:20:50.970 [DEBUG] [g.rfxcom.handler.RFXComBridgeHandler] - Checking RFXCOM transceiver connection, thing status = ONLINE
2018-03-22 05:21:00.002 [INFO ] [ome.model.script.inactive_temp_items] - == Checking inactive temp items...
2018-03-22 05:21:00.914 [INFO ] [ome.model.script.inactive_temp_items] - == Done checking inactive temperature items.
2018-03-22 05:21:50.970 [DEBUG] [g.rfxcom.handler.RFXComBridgeHandler] - Checking RFXCOM transceiver connection, thing status = ONLINE
2018-03-22 05:22:00.002 [INFO ] [ome.model.script.inactive_temp_items] - == Checking inactive temp items...
2018-03-22 05:22:00.938 [INFO ] [ome.model.script.inactive_temp_items] - == Done checking inactive temperature items.
2018-03-22 05:22:50.970 [DEBUG] [g.rfxcom.handler.RFXComBridgeHandler] - Checking RFXCOM transceiver connection, thing status = ONLINE

in /var/log/kern.log:

Mar 22 05:20:27 omv-nas kernel: [4276093.480311] usb usb2-port2: disabled by hub (EMI?), re-enabling...
Mar 22 05:20:27 omv-nas kernel: [4276093.480443] usb 2-2: USB disconnect, device number 30
Mar 22 05:20:27 omv-nas kernel: [4276093.481153] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
Mar 22 05:20:27 omv-nas kernel: [4276093.481281] ftdi_sio 2-2:1.0: device disconnected
Mar 22 05:20:27 omv-nas kernel: [4276093.756202] usb 2-2: new full-speed USB device number 31 using uhci_hcd
Mar 22 05:20:27 omv-nas kernel: [4276093.969877] usb 2-2: New USB device found, idVendor=0403, idProduct=6001
Mar 22 05:20:27 omv-nas kernel: [4276093.969884] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Mar 22 05:20:27 omv-nas kernel: [4276093.969887] usb 2-2: Product: RFXtrx433
Mar 22 05:20:27 omv-nas kernel: [4276093.969890] usb 2-2: Manufacturer: RFXCOM
Mar 22 05:20:27 omv-nas kernel: [4276093.969893] usb 2-2: SerialNumber: A14H3ZO
Mar 22 05:20:27 omv-nas kernel: [4276093.977055] ftdi_sio 2-2:1.0: FTDI USB Serial Device converter detected
Mar 22 05:20:27 omv-nas kernel: [4276093.977222] usb 2-2: Detected FT232RL
Mar 22 05:20:27 omv-nas kernel: [4276093.979072] usb 2-2: FTDI USB Serial Device converter now attached to ttyUSB1
Mar 22 06:00:02 omv-nas kernel: [4278469.277683] overlayfs: upperdir is in-use by another mount, accessing files from both mounts will result in undefined behavior.
Mar 22 06:00:02 omv-nas kernel: [4278469.277693] overlayfs: workdir is in-use by another mount, accessing files from both mounts will result in undefined behavior.
Mar 22 06:00:13 omv-nas kernel: [4278479.937228] br-10028beeb9f2: port 1(veth33459cc) entered disabled state
  • second problem:

my docker container restarted at 06:00 (as usual), but only 2 min later, the rfxcom binding detected an error (not detected in kern.log) and disabled itself without trying to reconnect. So until I started feeling cold (at 07:30) all my heaters were stopped :frowning: and I restarted by hand my docker image.

in …/logs/openhab.log:

2018-03-22 06:02:30.065 [DEBUG] [binding.rfxcom.handler.RFXComHandler] - Received message from bridge: rfxcom:bridge:usb0 message: Raw data = 0A520185DF010094320070, Packet type = TEMPERATURE_HUMIDITY, Seq number = 133, Sub type = TH1, Device Id = 57089, Temperature = 14.8, Humidity = 50, Humidity status = NORMAL, Signal level = 7, Battery level = 0
2018-03-22 06:02:46.236 [DEBUG] [g.rfxcom.handler.RFXComBridgeHandler] - Message received: Raw data = 0A520D8625030098300179, Packet type = TEMPERATURE_HUMIDITY, Seq number = 134, Sub type = TH13, Device Id = 9475, Temperature = 15.200000000000001, Humidity = 48, Humidity status = COMFORT, Signal level = 7, Battery level = 9
2018-03-22 06:02:46.239 [DEBUG] [binding.rfxcom.handler.RFXComHandler] - Received message from bridge: rfxcom:bridge:usb0 message: Raw data = 0A520D8625030098300179, Packet type = TEMPERATURE_HUMIDITY, Seq number = 134, Sub type = TH13, Device Id = 9475, Temperature = 15.200000000000001, Humidity = 48, Humidity status = COMFORT, Signal level = 7, Battery level = 9
2018-03-22 06:02:50.222 [DEBUG] [g.rfxcom.handler.RFXComBridgeHandler] - Checking RFXCOM transceiver connection, thing status = OFFLINE
2018-03-22 06:02:50.222 [DEBUG] [g.rfxcom.handler.RFXComBridgeHandler] - Connecting to RFXCOM transceiver
2018-03-22 06:02:50.223 [DEBUG] [rnal.connector.RFXComSerialConnector] - Disconnecting
2018-03-22 06:02:50.251 [ERROR] [g.rfxcom.handler.RFXComBridgeHandler] - Error occurred: Timeout during packet read
2018-03-22 06:02:50.274 [DEBUG] [rnal.connector.RFXComSerialConnector] - Serial port event listener stopped
2018-03-22 06:02:50.274 [DEBUG] [rnal.connector.RFXComSerialConnector] - Interrupt serial listener

in /var/log/kern.log:

Mar 22 06:00:15 omv-nas kernel: [4278482.086577] br-10028beeb9f2: port 1(veth62ef0ae) entered blocking state
Mar 22 06:00:15 omv-nas kernel: [4278482.086583] br-10028beeb9f2: port 1(veth62ef0ae) entered forwarding state
Mar 22 06:02:43 omv-nas smartd[2696]: Device: /dev/disk/by-id/wwn-0x5000c50045516dad [SAT], SMART Prefailure Attribute: 1 Raw_Read_Error_Rate changed from 105 to 106
Mar 22 06:02:43 omv-nas smartd[2696]: Device: /dev/disk/by-id/wwn-0x5000c50045516dad [SAT], SMART Usage Attribute: 195 Hardware_ECC_Recovered changed from 17 to 18
  • Platform information:

    • Hardware: x86_64 / 4Go ram / 2To disk
    • OS: host: Debian/testing, docker: openhab/openhab:2.1.0-amd64
    • openHAB version: 2.1.0
  • Configuration:

rfxcom.things:

Bridge rfxcom:bridge:usb0 [ serialPort="/dev/ttyUSB0", ignoreConfig=false, enableOregonScientific=true, enableRubicson=true, enableHidekiUPM=true, enableLaCrosse=true, enableUndecoded=false, disableDiscovery=false] {
       Thing temperaturehumidity yellowRoomTempHum     "Yellow room temp/hum" @ "Jaune_room"               [deviceId="20227", subType="TH13"] // Rubicson
...
}

Random disconnects are mostly triggered by power spikes or a power drop. The USB FTDI becomes frozen in that case and a power cycle is necessary.
Possible solutions:
-Use a shorter USB cable,
-Use a good quality power supply on your system,
-Keep the USB cable away from power cables,
-Use a powered USB hub with a good quality power supply.

1 Like

Ok I will check that points. For now, I use the USB cable provided with RFXCom. I will try with a powered USB hub.

Hi, I have tested with an old powered USB hub and I had less troubles. Now, I still have disconnections from my old usb hub so I bought another one which is worse.

Do you know any good powered usb hub provider? A reliable one!

Or may be there is way to force usb check/refresh from the RFXCom binding?

Thanks!