HGI80 Linux TI3410 driver errors

For Evohome related questions in Domoticz

Moderator: leecollings

Post Reply
EdwinXZ
Posts: 2
Joined: Wednesday 13 May 2020 10:42
Target OS: Linux
Domoticz version:
Location: The Netherlands
Contact:

HGI80 Linux TI3410 driver errors

Post by EdwinXZ »

Hi,

I'm using a HGI80 on a Fedora 30 linux box (5.6.8-100.fc30.x86_64) with the default TI3410 driver, which recognizes my device.
I'm running a Python script to read the information from /dev/USBCV, but about twice a day reading the data stalls.
In the journal I notice the following message:
May 10 23:21:36 servername kernel: usb 3-2: ti_bulk_in_callback - nonzero urb status, -75
May 10 23:21:36 servername kernel: usb 3-2: ti_bulk_in_callback - stopping read!

I found the TI driver source at https://github.com/torvalds/linux/blob/ ... 410_5052.c (line 1190) but it does not help: just confirming that it got a non-zero status and exits the reading.
According to include/asm-generic/errno.h error 75 is EOVERFLOW, but I read different interpretations (buffer overflow or value overflow)

I tried multiple settings of flow control (raw, rts/cts, xon/xoff), but no change. Also the flow rate seems to be so low that I cannot imagine it is a buffer issue.
It may be a 'simple' mis-read, but the impact is that I need to fully re-open the serial connection to start reading data again, about 2-3 times a day :-(

Do other people experience the same issue?
Any ideas how to solve this?
brucemiranda
Posts: 26
Joined: Tuesday 08 August 2017 21:16
Target OS: -
Domoticz version:
Contact:

Re: HGI80 Linux TI3410 driver errors

Post by brucemiranda »

I realise that this is a very old thread. But I have suddenly hit the exact same problem and wondered if you ever found a solution to keep the HGI80 working.
EdwinXZ
Posts: 2
Joined: Wednesday 13 May 2020 10:42
Target OS: Linux
Domoticz version:
Location: The Netherlands
Contact:

Re: HGI80 Linux TI3410 driver errors

Post by EdwinXZ »

Hi Bruce,

I checked my logs and apparently I have fixed this years ago :-)
Note sure if this helps, but this is my udev USB rule (I called the device USBCV):

Code: Select all

SUBSYSTEM=="tty", ATTRS{idVendor}=="10ac", ATTRS{idProduct}=="0102", SYMLINK+="USBCV"
And this is the result of "udevadm info --attribute-walk --name=/dev/USBCV":

Code: Select all

 looking at device '/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:2.0/ttyUSB1/tty/ttyUSB1':
    KERNEL=="ttyUSB1"
    SUBSYSTEM=="tty"
    DRIVER==""
    ATTR{power/control}=="auto"
    ATTR{power/runtime_active_time}=="0"
    ATTR{power/runtime_status}=="unsupported"
    ATTR{power/runtime_suspended_time}=="0"
  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:2.0/ttyUSB1':
    KERNELS=="ttyUSB1"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="ti_usb_3410_5052_1"
    ATTRS{port_number}=="0"
    ATTRS{power/control}=="auto"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"
  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:2.0':
    KERNELS=="1-5:2.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="ti_usb_3410_5052"
    ATTRS{authorized}=="1"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{bInterfaceProtocol}=="00"
    ATTRS{bInterfaceSubClass}=="00"
    ATTRS{bNumEndpoints}=="03"
    ATTRS{physical_location/dock}=="no"
    ATTRS{physical_location/horizontal_position}=="left"
    ATTRS{physical_location/lid}=="no"
    ATTRS{physical_location/panel}=="top"
    ATTRS{physical_location/vertical_position}=="upper"
    ATTRS{supports_autosuspend}=="1"
Unfortunately I cannot find back any specific setting that I may have done...
brucemiranda
Posts: 26
Joined: Tuesday 08 August 2017 21:16
Target OS: -
Domoticz version:
Contact:

Re: HGI80 Linux TI3410 driver errors

Post by brucemiranda »

I am using a udev rule too. Mine looks like this.

Code: Select all

SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{idVendor}=="10ac", ATTRS{serial}=="TUSB3410        ", ATTRS{idProduct}=="0102", ATTRS{manufacturer}=="Texas Instruments", ATTRS{product}=="TUSB3410 Boot Device", SYMLINK+="ttyUSB-HGI80"
the result of "udevadm info --attribute-walk --name=/dev/ttyUSB-HGI80":

Code: Select all

  looking at device '/devices/pci0000:00/0000:00:04.0/usb1/1-3/1-3:2.0/ttyUSB0/tty/ttyUSB0':
    KERNEL=="ttyUSB0"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:04.0/usb1/1-3/1-3:2.0/ttyUSB0':
    KERNELS=="ttyUSB0"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="ti_usb_3410_5052_1"
    ATTRS{port_number}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:04.0/usb1/1-3/1-3:2.0':
    KERNELS=="1-3:2.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="ti_usb_3410_5052"
    ATTRS{bInterfaceSubClass}=="00"
    ATTRS{authorized}=="1"
    ATTRS{bInterfaceProtocol}=="00"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bNumEndpoints}=="03"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{supports_autosuspend}=="1"
    ATTRS{bInterfaceClass}=="ff"

  looking at parent device '/devices/pci0000:00/0000:00:04.0/usb1/1-3':
    KERNELS=="1-3"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{ltm_capable}=="no"
    ATTRS{urbnum}=="12"
    ATTRS{product}=="TUSB3410 Boot Device"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{manufacturer}=="Texas Instruments"
    ATTRS{busnum}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{removable}=="unknown"
    ATTRS{bMaxPower}=="100mA"
    ATTRS{bConfigurationValue}=="2"
    ATTRS{bMaxPacketSize0}=="8"
    ATTRS{rx_lanes}=="1"
    ATTRS{bNumConfigurations}=="2"
    ATTRS{serial}=="TUSB3410        "
    ATTRS{bDeviceClass}=="ff"
    ATTRS{bmAttributes}=="a0"
    ATTRS{tx_lanes}=="1"
    ATTRS{maxchild}=="0"
    ATTRS{idVendor}=="10ac"
    ATTRS{quirks}=="0x0"
    ATTRS{authorized}=="1"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{version}==" 1.10"
    ATTRS{idProduct}=="0102"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{devpath}=="3"
    ATTRS{devnum}=="4"
    ATTRS{bcdDevice}=="0101"
    ATTRS{speed}=="12"

  looking at parent device '/devices/pci0000:00/0000:00:04.0/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{idProduct}=="0002"
    ATTRS{manufacturer}=="Linux 5.4.0-174-generic xhci-hcd"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bcdDevice}=="0504"
    ATTRS{removable}=="unknown"
    ATTRS{authorized_default}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{product}=="xHCI Host Controller"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{configuration}==""
    ATTRS{version}==" 2.00"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{maxchild}=="6"
    ATTRS{speed}=="480"
    ATTRS{rx_lanes}=="1"
    ATTRS{tx_lanes}=="1"
    ATTRS{devpath}=="0"
    ATTRS{idVendor}=="1d6b"
    ATTRS{ltm_capable}=="no"
    ATTRS{bDeviceProtocol}=="01"
    ATTRS{bmAttributes}=="e0"
    ATTRS{bMaxPower}=="0mA"
    ATTRS{authorized}=="1"
    ATTRS{serial}=="0000:00:04.0"
    ATTRS{busnum}=="1"
    ATTRS{interface_authorized_default}=="1"
    ATTRS{urbnum}=="54"
    ATTRS{devnum}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:04.0':
    KERNELS=="0000:00:04.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="xhci_hcd"
    ATTRS{numa_node}=="-1"
    ATTRS{driver_override}=="(null)"
    ATTRS{ari_enabled}=="0"
    ATTRS{consistent_dma_mask_bits}=="64"
    ATTRS{enable}=="1"
    ATTRS{subsystem_device}=="0x1100"
    ATTRS{device}=="0x0194"
    ATTRS{msi_bus}=="1"
    ATTRS{irq}=="11"
    ATTRS{vendor}=="0x1033"
    ATTRS{local_cpulist}=="0-3"
    ATTRS{subsystem_vendor}=="0x1af4"
    ATTRS{local_cpus}=="f"
    ATTRS{class}=="0x0c0330"
    ATTRS{dma_mask_bits}=="64"
    ATTRS{d3cold_allowed}=="0"
    ATTRS{broken_parity_status}=="0"
    ATTRS{revision}=="0x03"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""
Are you absolutely sure you didn't make any other changes to get the HGI80 to work again. Mine too was working for years and now suddenly appears to have this issue. What version of the Linux kernel are you on?
brucemiranda
Posts: 26
Joined: Tuesday 08 August 2017 21:16
Target OS: -
Domoticz version:
Contact:

Re: HGI80 Linux TI3410 driver errors

Post by brucemiranda »

what I have managed to find now is that, if I enable USB 3.0 support for my VM running HSOS then the HGI80 has stayed up for over 24 hours. I have no idea if this is coincidence or something else has allowed this to stop failing.
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests