Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

on Fry's Electronics MEC0003 device, nut fails to read values unless upsmart is launched first #2208

Open
mailinglists35 opened this issue Nov 29, 2023 · 9 comments
Labels
bug impacts-release-2.8.0 Issues reported against NUT release 2.8.0 (maybe vanilla or with minor packaging tweaks) Qx protocol driver Driver based on Megatec Q<number> such as new nutdrv_qx, or obsoleted blazer and some others UPSmart Some UPS are shipped with UPSmart software which may imply common (Qx?) protocol USB VID=0001 PID=0000 (Fry's Electronics/MEC0003) Seems to be a generic USB chip interfacing many devices and protocols (Qx, USB HID, ATCL...)

Comments

@mailinglists35
Copy link

scenario 1:

plug usb
start nut
(no matter how many times start stop nut)

result: values are all zero


scenario 2:

plug usb
start upsmart once
exit upsmart
start nut
stop/start nut forever

result: values are like in upsmart

remove cable, replug cable, goto scenario 1


attached nut.pcap on scenario 1
upsmart.pcap and nut pcap in scenario 2
device commercial name: UPS Serioux Line Interactive 800LI, SKU codename SRXU-LD800LI or LD800LI
hope this helps you find what upsmart is doing to "initialize" the ups and improve the hunnox subdriver
linux version of upsmart: https://zircon.co.th/download_software_for_ups scroll down click on download upsmart will take you to a google drive link
PS:

$ dpkg -l nut nut-client nut-server | grep ^ii
ii  nut            2.8.0-1ppa10~ubuntu22.04 all          network UPS tools - metapackage
ii  nut-client     2.8.0-1ppa10~ubuntu22.04 amd64        network UPS tools - clients
ii  nut-server     2.8.0-1ppa10~ubuntu22.04 amd64        network UPS tools - core system

$ sudo grep -Ev '^(#|\s*$)' /etc/nut/ups.conf
maxretry = 3
[serioux]
        driver = "nutdrv_qx"
        port = "auto"
        subdriver = "hunnox"
        vendorid = "0001"
        productid = "0000"
        novendor
        protocol = "megatec"
        desc = "serioux"

$ sudo lsusb -d 0001:0000 -v

Bus 001 Device 008: ID 0001:0000 Fry's Electronics MEC0003
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x0001 Fry's Electronics
  idProduct          0x0000
  bcdDevice            1.00
  iManufacturer           0
  iProduct                1 MEC0003
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0029
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     624
          Report Descriptor: (length is 624)
            Item(Global): Usage Page, data= [ 0x86 ] 134
                            Power Pages
            Item(Local ): Usage, data= [ 0x04 ] 4
                            (null)
            Item(Main  ): Collection, data= [ 0x01 ] 1
                            Application
            Item(Global): Usage Page, data= [ 0x84 ] 132
                            Power Device Page
            Item(Local ): Usage, data= [ 0x1e ] 30
                            Flow
            Item(Main  ): Collection, data= [ 0x00 ] 0
                            Physical
            Item(Global): Report ID, data= [ 0x01 ] 1
            Item(Local ): Usage, data= [ 0x1f ] 31
                            Flow ID
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x0f ] 15
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Feature, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x40 ] 64
                            Config Voltage
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x07 ] 7
                            Unit Exponent: 7
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfa 0x00 ] 250
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x42 ] 66
                            Config Frequency
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0xf0 ] 61441
                            System: SI Linear, Unit: Seconds^-1
            Item(Global): Unit Exponent, data= [ 0x00 ] 0
                            Unit Exponent: 0
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x3c ] 60
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x53 ] 83
                            Low Voltage Transfer
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x07 ] 7
                            Unit Exponent: 7
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfa 0x00 ] 250
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x54 ] 84
                            High Voltage Transfer
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x07 ] 7
                            Unit Exponent: 7
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfa 0x00 ] 250
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0xfd ] 253
                            iManufacturer
            Item(Local ): Usage, data= [ 0xfe ] 254
                            iProduct
            Item(Local ): Usage, data= [ 0xff ] 255
                            iSerialNumber
            Item(Global): Report Size, data= [ 0x08 ] 8
            Item(Global): Report Count, data= [ 0x03 ] 3
            Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Feature, data= [ 0x00 ] 0
                            Data Array Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Global): Usage Page, data= [ 0x84 ] 132
                            Power Device Page
            Item(Local ): Usage, data= [ 0x1e ] 30
                            Flow
            Item(Main  ): Collection, data= [ 0x00 ] 0
                            Physical
            Item(Global): Report ID, data= [ 0x02 ] 2
            Item(Local ): Usage, data= [ 0x1f ] 31
                            Flow ID
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x0f ] 15
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Main  ): Feature, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x40 ] 64
                            Config Voltage
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x07 ] 7
                            Unit Exponent: 7
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfa 0x00 ] 250
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x42 ] 66
                            Config Frequency
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0xf0 ] 61441
                            System: SI Linear, Unit: Seconds^-1
            Item(Global): Unit Exponent, data= [ 0x00 ] 0
                            Unit Exponent: 0
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x3c ] 60
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x43 ] 67
                            Config Apparent Power
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 ] 53537
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3
            Item(Global): Unit Exponent, data= [ 0x07 ] 7
                            Unit Exponent: 7
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x44 ] 68
                            Config Active Power
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Unit, data= [ 0x21 0xd1 ] 53537
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3
            Item(Global): Unit Exponent, data= [ 0x07 ] 7
                            Unit Exponent: 7
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x56 ] 86
                            Delay Before Startup
            Item(Global): Report Size, data= [ 0x18 ] 24
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0x10 ] 4097
                            System: SI Linear, Unit: Seconds
            Item(Global): Unit Exponent, data= [ 0x00 ] 0
                            Unit Exponent: 0
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x57 ] 87
                            Delay Before Shutdown
            Item(Global): Report Size, data= [ 0x18 ] 24
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0x10 ] 4097
                            System: SI Linear, Unit: Seconds
            Item(Global): Unit Exponent, data= [ 0x00 ] 0
                            Unit Exponent: 0
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Global): Usage Page, data= [ 0x84 ] 132
                            Power Device Page
            Item(Local ): Usage, data= [ 0x10 ] 16
                            Battery System
            Item(Main  ): Collection, data= [ 0x00 ] 0
                            Physical
            Item(Global): Report ID, data= [ 0x03 ] 3
            Item(Local ): Usage, data= [ 0x11 ] 17
                            Battery System ID
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x0f ] 15
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Feature, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x02 ] 2
                            Present Status
            Item(Main  ): Collection, data= [ 0x02 ] 2
                            Logical
            Item(Local ): Usage, data= [ 0x6d ] 109
                            Used
            Item(Local ): Usage, data= [ 0x61 ] 97
                            Good
            Item(Global): Report Size, data= [ 0x01 ] 1
            Item(Global): Report Count, data= [ 0x02 ] 2
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x01 ] 1
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x06 ] 6
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Feature, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Local ): Usage, data= [ 0x30 ] 48
                            Voltage
            Item(Global): Report Size, data= [ 0x18 ] 24
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x05 ] 5
                            Unit Exponent: 5
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x36 ] 54
                            Temperature
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0x00 0x01 0x00 ] 65537
                            System: SI Linear, Unit: Kelvin
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x58 ] 88
                            Test
            Item(Global): Report Size, data= [ 0x01 ] 1
            Item(Global): Report Count, data= [ 0x06 ] 6
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x01 ] 1
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x02 ] 2
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Input, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x58 ] 88
                            Test
            Item(Global): Report Size, data= [ 0x01 ] 1
            Item(Global): Report Count, data= [ 0x04 ] 4
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x01 ] 1
            Item(Main  ): Feature, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Feature, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Global): Usage Page, data= [ 0x84 ] 132
                            Power Device Page
            Item(Local ): Usage, data= [ 0x16 ] 22
                            Power Converter
            Item(Main  ): Collection, data= [ 0x00 ] 0
                            Physical
            Item(Global): Report ID, data= [ 0x04 ] 4
            Item(Local ): Usage, data= [ 0x17 ] 23
                            Power Converter ID
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x0f ] 15
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Input, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x1a ] 26
                            Input
            Item(Main  ): Collection, data= [ 0x00 ] 0
                            Physical
            Item(Local ): Usage, data= [ 0x1b ] 27
                            Input ID
            Item(Local ): Usage, data= [ 0x1f ] 31
                            Flow ID
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x02 ] 2
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x0f ] 15
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x02 ] 2
                            Present Status
            Item(Main  ): Collection, data= [ 0x02 ] 2
                            Logical
            Item(Local ): Usage, data= [ 0x61 ] 97
                            Good
            Item(Global): Report Size, data= [ 0x01 ] 1
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x01 ] 1
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x07 ] 7
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Input, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Local ): Usage, data= [ 0x30 ] 48
                            Voltage
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x05 ] 5
                            Unit Exponent: 5
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x32 ] 50
                            Frequency
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0xf0 ] 61441
                            System: SI Linear, Unit: Seconds^-1
            Item(Global): Unit Exponent, data= [ 0x05 ] 5
                            Unit Exponent: 5
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Local ): Usage, data= [ 0x1c ] 28
                            Output
            Item(Main  ): Collection, data= [ 0x00 ] 0
                            Physical
            Item(Global): Report ID, data= [ 0x05 ] 5
            Item(Local ): Usage, data= [ 0x1d ] 29
                            Output ID
            Item(Local ): Usage, data= [ 0x1f ] 31
                            Flow ID
            Item(Global): Report Size, data= [ 0x04 ] 4
            Item(Global): Report Count, data= [ 0x02 ] 2
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x0f ] 15
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x30 ] 48
                            Voltage
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x21 0xd1 0xf0 0x00 ] 15782177
                            System: SI Linear, Unit: Centimeter^2*Gram*Seconds^-3*Ampere^-1
            Item(Global): Unit Exponent, data= [ 0x05 ] 5
                            Unit Exponent: 5
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x32 ] 50
                            Frequency
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x01 0xf0 ] 61441
                            System: SI Linear, Unit: Seconds^-1
            Item(Global): Unit Exponent, data= [ 0x05 ] 5
                            Unit Exponent: 5
            Item(Global): Logical Maximum, data= [ 0xfe 0xff 0x00 0x00 ] 65534
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x35 ] 53
                            Percent Load
            Item(Global): Report Size, data= [ 0x10 ] 16
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Local ): Usage, data= [ 0x02 ] 2
                            Present Status
            Item(Main  ): Collection, data= [ 0x02 ] 2
                            Logical
            Item(Local ): Usage, data= [ 0x65 ] 101
                            Overload
            Item(Local ): Usage, data= [ 0x6e ] 110
                            Boost
            Item(Local ): Usage, data= [ 0x6f ] 111
                            Buck
            Item(Global): Report Size, data= [ 0x01 ] 1
            Item(Global): Report Count, data= [ 0x03 ] 3
            Item(Global): Logical Minimum, data= [ 0x00 ] 0
            Item(Global): Logical Maximum, data= [ 0x01 ] 1
            Item(Global): Unit, data= [ 0x00 ] 0
                            System: None, Unit: (None)
            Item(Main  ): Input, data= [ 0x02 ] 2
                            Data Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Global): Report Size, data= [ 0x05 ] 5
            Item(Global): Report Count, data= [ 0x01 ] 1
            Item(Main  ): Input, data= [ 0x03 ] 3
                            Constant Variable Absolute No_Wrap Linear
                            Preferred_State No_Null_Position Non_Volatile Bitfield
            Item(Main  ): End Collection, data=none
            Item(Main  ): End Collection, data=none
            Item(Main  ): End Collection, data=none
            Item(Main  ): End Collection, data=none
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
Device Status:     0x0000
  (Bus Powered)

$ sudo -u nut /usr/lib/nut/nutdrv_qx -a serioux -DDDD
Network UPS Tools - Generic Q* USB/Serial driver 0.32 (2.8.0)
USB communication driver (libusb 0.1) 0.43
   0.000000     [D1] debug level is '4'
   0.000259     [D1] upsdrv_initups...
   0.188265     [D3] usb_busses=0x55bff0680ae0
   0.188327     [D2] Checking device (1D6B/0003) (002/001)
   0.215299     [D1] libusb_open get iManufacturer failed, retrying...
   0.215334     [D1] libusb_open get iManufacturer failed, retrying...
   0.215341     [D1] libusb_open get iManufacturer failed, retrying...
   0.215350     [D1] libusb_open get iProduct failed, retrying...
   0.215360     [D1] libusb_open get iProduct failed, retrying...
   0.215372     [D1] libusb_open get iProduct failed, retrying...
   0.215386     [D1] libusb_open get iSerialNumber failed, retrying...
   0.215401     [D1] libusb_open get iSerialNumber failed, retrying...
   0.215412     [D1] libusb_open get iSerialNumber failed, retrying...
   0.215424     [D2] - VendorID: 1d6b
   0.215433     [D2] - ProductID: 0003
   0.215441     [D2] - Manufacturer: unknown
   0.215449     [D2] - Product: unknown
   0.215457     [D2] - Serial Number: unknown
   0.215464     [D2] - Bus: 002
   0.215472     [D2] - Device: 001
   0.215479     [D2] - Device release number: 0602
   0.215488     [D2] Trying to match device
   0.215494     [D3] match_function_regex: matching a device...
   0.215509     [D2] match_function_regex: failed match of VendorID: 1d6b
   0.215524     [D2] Device does not match - skipping
   0.215663     [D2] Checking device (0001/0000) (001/008)
   0.216845     [D2] - VendorID: 0001
   0.216857     [D2] - ProductID: 0000
   0.216862     [D2] - Manufacturer: unknown
   0.216869     [D2] - Product: MEC0003
   0.216875     [D2] - Serial Number: unknown
   0.216882     [D2] - Bus: 001
   0.216887     [D2] - Device: 008
   0.216898     [D2] - Device release number: 0100
   0.216908     [D2] Trying to match device
   0.216913     [D3] match_function_regex: matching a device...
   0.216982     [D2] Device matches
   0.217019     [D3] nut_usb_set_altinterface: skipped usb_set_altinterface(udev, 0)
   0.217051     [D2] Skipping protocol Voltronic 0.06
   0.217065     [D2] Skipping protocol Voltronic-QS 0.07
   0.217071     [D2] Skipping protocol Voltronic-QS-Hex 0.10
   0.217087     [D2] Skipping protocol Mustek 0.07
   0.217097     [D2] Skipping protocol Megatec/old 0.07
   0.217105     [D2] Skipping protocol BestUPS 0.06
   0.217130     [D2] Skipping protocol Mecer 0.07
   0.217157     [D3] send: Q1
   0.217176     [D4] command index: 0x03
   0.217190     [D3] asking for: 00
   0.232021     [D3] read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
   0.232073     Using protocol: Megatec 0.06
   0.232093     [D2] blazer_initups: skipping device.mfr
   0.232105     [D2] blazer_initups: skipping device.model
   0.232111     [D2] blazer_initups: skipping ups.firmware
   0.232126     [D1] upsdrv_initinfo...
   0.232138     [D3] send: Q1
   0.232153     [D4] command index: 0x03
   0.232162     [D3] asking for: 0D
   0.236530     [D3] read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
   0.236646     [D3] send: F
   0.236660     [D4] command index: 0x0d
   0.236667     [D3] asking for: 03
   0.241168     [D3] read: #000.0 0.0 00.00 00.0
   0.241336     No values for battery high/low voltages
   0.241367     Using 'guesstimation' (low: 0.000000, high: 0.000000)!
   0.241384     Battery runtime will not be calculated (runtimecal not set)
   0.241419     [D1] upsdrv_updateinfo...
   0.241446     [D1] Quick update...
   0.241470     [D3] send: Q1
   0.241507     [D4] command index: 0x03
   0.241533     [D3] asking for: 0C
   0.246701     [D3] read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
   0.246989     [D2] dstate_init: sock /run/nut/nutdrv_qx-serioux open on fd 5
   0.247031     [D1] upsdrv_updateinfo...
   0.247051     [D1] Quick update...
   0.247116     [D3] send: Q1
   0.247143     [D4] command index: 0x03
   0.247157     [D3] asking for: 0D
   0.251868     [D3] read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
   2.249221     [D1] upsdrv_updateinfo...
   2.249286     [D1] Quick update...
   2.249311     [D3] send: Q1
   2.249334     [D4] command index: 0x03
   2.252404     [D3] read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
   4.251099     [D1] upsdrv_updateinfo...
   4.251163     [D1] Quick update...
   4.251193     [D3] send: Q1
   4.251214     [D4] command index: 0x03
   4.251239     [D3] asking for: 0C
   4.256555     [D3] read: (000.0 000.0 000.0 000 00.0 0.00 00.0 00000000
^C

[starting upsmart, exiting]

$ sudo -u nut /usr/lib/nut/nutdrv_qx -a serioux -DDDD
Network UPS Tools - Generic Q* USB/Serial driver 0.32 (2.8.0)
USB communication driver (libusb 0.1) 0.43
   0.000000     [D1] debug level is '4'
   0.000252     [D1] upsdrv_initups...
   0.187904     [D3] usb_busses=0x55b81d3c9ae0
   0.187956     [D2] Checking device (1D6B/0003) (002/001)
   0.215047     [D1] libusb_open get iManufacturer failed, retrying...
   0.215104     [D1] libusb_open get iManufacturer failed, retrying...
   0.215121     [D1] libusb_open get iManufacturer failed, retrying...
   0.215143     [D1] libusb_open get iProduct failed, retrying...
   0.215197     [D1] libusb_open get iProduct failed, retrying...
   0.215219     [D1] libusb_open get iProduct failed, retrying...
   0.215252     [D1] libusb_open get iSerialNumber failed, retrying...
   0.215288     [D1] libusb_open get iSerialNumber failed, retrying...
   0.215322     [D1] libusb_open get iSerialNumber failed, retrying...
   0.215334     [D2] - VendorID: 1d6b
   0.215347     [D2] - ProductID: 0003
   0.215359     [D2] - Manufacturer: unknown
   0.215369     [D2] - Product: unknown
   0.215383     [D2] - Serial Number: unknown
   0.215394     [D2] - Bus: 002
   0.215403     [D2] - Device: 001
   0.215415     [D2] - Device release number: 0602
   0.215428     [D2] Trying to match device
   0.215438     [D3] match_function_regex: matching a device...
   0.215455     [D2] match_function_regex: failed match of VendorID: 1d6b
   0.215465     [D2] Device does not match - skipping
   0.215489     [D2] Checking device (0001/0000) (001/008)
   0.216915     [D2] - VendorID: 0001
   0.216969     [D2] - ProductID: 0000
   0.216987     [D2] - Manufacturer: unknown
   0.217003     [D2] - Product: MEC0003
   0.217028     [D2] - Serial Number: unknown
   0.217045     [D2] - Bus: 001
   0.217070     [D2] - Device: 008
   0.217094     [D2] - Device release number: 0100
   0.217110     [D2] Trying to match device
   0.217130     [D3] match_function_regex: matching a device...
   0.217280     [D2] Device matches
   0.217352     [D3] nut_usb_set_altinterface: skipped usb_set_altinterface(udev, 0)
   0.217412     [D2] Skipping protocol Voltronic 0.06
   0.217454     [D2] Skipping protocol Voltronic-QS 0.07
   0.217502     [D2] Skipping protocol Voltronic-QS-Hex 0.10
   0.217522     [D2] Skipping protocol Mustek 0.07
   0.217539     [D2] Skipping protocol Megatec/old 0.07
   0.217570     [D2] Skipping protocol BestUPS 0.06
   0.217609     [D2] Skipping protocol Mecer 0.07
   0.217633     [D3] send: Q1
   0.217654     [D4] command index: 0x03
   0.217677     [D3] asking for: 00
   0.232592     [D3] read: (235.0 000.0 236.0 000 50.1 13.7 29.0 00001000
   0.232680     Using protocol: Megatec 0.06
   0.232712     [D2] blazer_initups: skipping device.mfr
   0.232732     [D2] blazer_initups: skipping device.model
   0.232758     [D2] blazer_initups: skipping ups.firmware
   0.232791     [D1] upsdrv_initinfo...
   0.232820     [D3] send: Q1
   0.232841     [D4] command index: 0x03
   0.232859     [D3] asking for: 0D
   0.237399     [D3] read: (235.0 000.0 236.0 000 50.1 13.7 29.0 00001000
   0.237623     [D3] send: F
   0.237647     [D4] command index: 0x0d
   0.237665     [D3] asking for: 03
   0.242177     [D3] read: #   .   .  12.00   .
   0.242371     No values for battery high/low voltages
   0.242406     Using 'guesstimation' (low: 10.400000, high: 13.000000)!
   0.242440     Battery runtime will not be calculated (runtimecal not set)
   0.242475     [D1] upsdrv_updateinfo...
   0.242492     [D1] Quick update...
   0.242512     [D3] send: Q1
   0.242534     [D4] command index: 0x03
   0.242572     [D3] asking for: 0C
   0.247754     [D3] read: (235.0 000.0 236.0 000 50.1 13.7 29.0 00001000
   0.248022     [D2] dstate_init: sock /run/nut/nutdrv_qx-serioux open on fd 5
   0.248102     [D1] upsdrv_updateinfo...
   0.248122     [D1] Quick update...
   0.248147     [D3] send: Q1
   0.248174     [D4] command index: 0x03
   0.248193     [D3] asking for: 0D
   0.252589     [D3] read: (235.0 000.0 236.0 000 50.1 13.7 29.0 00001000
   2.250333     [D1] upsdrv_updateinfo...
   2.250393     [D1] Quick update...
   2.250424     [D3] send: Q1
   2.250460     [D4] command index: 0x03
   2.253433     [D3] read: (235.0 000.0 236.0 000 50.1 13.7 29.0 00001000
^C

@mailinglists35
Copy link
Author

mec0003-pcaps.zip

@mailinglists35
Copy link
Author

also, upscmd beeper.toggle doesn't work. but on upsmart I can toggle the beeper

pcaps attached during beeper command

@mailinglists35
Copy link
Author

beeper-pcaps.zip

@mailinglists35
Copy link
Author

upsmart also produces a debug log:

$ cat DebugLog20231129_USB.txt 
Date/Time,State,Command
2023.11.29 22:03:55,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:55,Receive,(232.0 000.0 232.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:03:54,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:03:54,Receive,#   .   .  12.00   . 
2023.11.29 22:03:53,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:53,Receive,(232.0 000.0 232.0 000 49.7 13.6 29.0 00001000
2023.11.29 22:03:52,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:52,Receive,(232.0 000.0 232.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:03:51,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:51,Receive,(232.0 000.0 234.0 000 49.8 13.6 29.0 00001000
2023.11.29 22:03:50,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:03:50,Receive,#                           V3.8      
2023.11.29 22:03:49,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:49,Receive,(232.0 000.0 232.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:03:48,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:03:48,Receive,#   .   .  12.00   . 
2023.11.29 22:03:47,Send,80 06 07 03 09 04 00 66 
2023.11.29 22:03:47,Receive,UPS No Ack
2023.11.29 22:03:46,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:46,Receive,(231.0 000.0 232.0 000 49.7 13.6 29.0 00001000
2023.11.29 22:03:45,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:45,Receive,(232.0 000.0 234.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:03:44,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:44,Receive,(231.0 000.0 233.0 000 49.8 13.6 29.0 00001000
2023.11.29 22:03:43,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:03:43,Receive,#                           V3.8      
2023.11.29 22:03:42,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:42,Receive,(231.0 000.0 232.0 000 49.6 13.6 29.0 00001000
2023.11.29 22:03:41,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:03:41,Receive,#   .   .  12.00   . 
2023.11.29 22:03:40,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:03:40,Receive,(235.0 000.0 236.0 000 50.1 13.7 29.0 00001000

@mailinglists35
Copy link
Author

maybe you manage to find which one is the beeper (they call it buzzer)

$ cat DebugLog20231129_USB.txt 
Date/Time,State,Command
2023.11.29 22:06:49,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:49,Receive,(232.0 000.0 234.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:06:48,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:06:48,Receive,#   .   .  12.00   . 
2023.11.29 22:06:47,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:47,Receive,(234.0 000.0 234.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:46,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:46,Receive,(233.0 000.0 235.0 000 49.8 13.6 29.0 00001000
2023.11.29 22:06:45,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:45,Receive,(232.0 000.0 234.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:44,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:06:44,Receive,#                           V3.8      
2023.11.29 22:06:43,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:43,Receive,(231.0 000.0 233.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:06:42,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:06:42,Receive,#   .   .  12.00   . 
2023.11.29 22:06:41,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:41,Receive,(232.0 000.0 233.0 000 49.8 13.6 29.0 00001000
2023.11.29 22:06:40,Send,80 06 07 03 09 04 00 66 
2023.11.29 22:06:40,Receive,UPS No Ack
2023.11.29 22:06:39,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:39,Receive,(232.0 000.0 233.0 000 49.8 13.6 29.0 00001000
2023.11.29 22:06:38,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:38,Receive,(232.0 000.0 234.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:37,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:06:37,Receive,#                           V3.8      
2023.11.29 22:06:36,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:36,Receive,(232.0 000.0 234.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:35,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:06:35,Receive,#   .   .  12.00   . 
2023.11.29 22:06:34,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:34,Receive,(232.0 000.0 233.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:06:33,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:33,Receive,(232.0 000.0 235.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:32,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:32,Receive,(231.0 000.0 232.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:31,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:06:31,Receive,#                           V3.8      
2023.11.29 22:06:30,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:30,Receive,(231.0 000.0 232.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:06:29,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:06:29,Receive,#   .   .  12.00   . 
2023.11.29 22:06:28,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:28,Receive,(231.0 000.0 231.0 000 49.7 13.6 29.0 00001000
2023.11.29 22:06:27,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:27,Receive,(231.0 000.0 232.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:06:26,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:26,Receive,(231.0 000.0 231.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:25,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:06:25,Receive,#                           V3.8      
2023.11.29 22:06:24,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:24,Receive,(230.0 000.0 231.0 000 49.8 13.6 29.0 00001000
2023.11.29 22:06:23,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:06:23,Receive,#   .   .  12.00   . 
2023.11.29 22:06:22,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:22,Receive,(230.0 000.0 231.0 000 49.9 13.6 29.0 00001000
2023.11.29 22:06:21,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:21,Receive,(231.0 000.0 232.0 000 49.7 13.6 29.0 00001000
2023.11.29 22:06:20,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:20,Receive,*231.0 000.0 232.0 000 50.0 13.6 29.0 00001000
2023.11.29 22:06:19,Send,80 06 0c 03 09 04 00 66 
2023.11.29 22:06:19,Receive,#                           V3.8      
2023.11.29 22:06:18,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:18,Receive,(231.0 000.0 232.0 000 49.7 13.6 29.0 00001000
2023.11.29 22:06:17,Send,80 06 0d 03 09 04 00 66 
2023.11.29 22:06:17,Receive,#   .   .  12.00   . 
2023.11.29 22:06:16,Send,80 06 03 03 09 04 00 66 
2023.11.29 22:06:16,Receive,(231.0 000.0 232.0 000 49.7 13.6 29.0 00001000

@jimklimov
Copy link
Member

Thank you very much for the detailed report. There were a couple of mentions over the years that some devices needed an initialization by vendor SW to become visible to NUT (though I had the impression that once per lifetime was enough in those cases), but I don't remember any report on it as detailed as yours!

I've posted on the nut-upsdev mailing list to bring some more attention to this ticket, hopefully someone with Qx drivers' programming experience would chime in and be more relevant here than myself.

@jimklimov jimklimov added bug Qx protocol driver Driver based on Megatec Q<number> such as new nutdrv_qx, or obsoleted blazer and some others USB VID=0001 PID=0000 (Fry's Electronics/MEC0003) Seems to be a generic USB chip interfacing many devices and protocols (Qx, USB HID, ATCL...) UPSmart Some UPS are shipped with UPSmart software which may imply common (Qx?) protocol impacts-release-2.8.0 Issues reported against NUT release 2.8.0 (maybe vanilla or with minor packaging tweaks) labels Nov 29, 2023
@mailinglists35
Copy link
Author

mailinglists35 commented Nov 30, 2023

additional info: it seems all readings done by nut after starting/stopping vendor sw are the same values, as if I'm reading from a cache. so the command that the UPSmart issues it must be done at each reading, or else we will read not fresh data.

@mailinglists35
Copy link
Author

mailinglists35 commented Nov 30, 2023

This is another debug log from the vendor. I notice it cycles the same commands, I think on the third field it differs to 03, 0c, 0d

DebugLog20231130_USB.txt

@mailinglists35
Copy link
Author

Hi,
Did anyone respond to your mailing list message?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug impacts-release-2.8.0 Issues reported against NUT release 2.8.0 (maybe vanilla or with minor packaging tweaks) Qx protocol driver Driver based on Megatec Q<number> such as new nutdrv_qx, or obsoleted blazer and some others UPSmart Some UPS are shipped with UPSmart software which may imply common (Qx?) protocol USB VID=0001 PID=0000 (Fry's Electronics/MEC0003) Seems to be a generic USB chip interfacing many devices and protocols (Qx, USB HID, ATCL...)
Projects
None yet
Development

No branches or pull requests

2 participants