Skip to content

New device: GoldenMate 1000VA/800W LiFePO4 UPS (06DA:FFFF, Phoenixtec/BMS) #3501

Description

@bshor

Device

Brand/Model: GoldenMate 1000VA/800W Lithium UPS Battery Backup (GOLDENMATE 1000VA/800W Sinewave UPS System with LiFePO4 Battery, 230Wh, Upgraded Pro Ver. with Communication Port)
USB ID: 06DA:FFFF (Phoenixtec Power Co., Ltd)
bcdDevice: 0001
Manufacturer string: -BMS-
Product string: Smart-Battery
Serial: J7152BCA698BE5C6805M251
NUT version: 2.8.1 (Debian trixie, aarch64 / Raspberry Pi 4)
Driver matched: Phoenixtec/Liebert HID 0.41 (generic fallback)

Current behavior

The device is detected and partially functional via usbhid-ups using the Phoenixtec/Liebert HID subdriver. Basic status (OL, CHRG), battery charge percentage, and voltage are reported correctly.

Known issues:

  • battery.runtime (RunTimeToEmpty) reports 599940 seconds (~7 days) — clearly bogus, likely a unit/scaling issue with the LiFePO4 chemistry not being handled correctly
  • ups.load and input.voltage are not exposed — the device's HID descriptor doesn't include output/input power paths
  • HID descriptor has LogMax < LogMin errors in ReportID 0x01 and 0x02 (firmware issue, worked around by NUT)
  • file_report_buffer: expected 9 bytes, but got 512 on every poll — report size mismatch
  • nut-scanner marks device as ###NOTMATCHED-YET### (bcdDevice 0001 not in USB ID table)
  • Device reports chemistry as Lion (HID index 4) but is actually LiFePO4

upsc output

battery.charge: 76
battery.runtime: 599940
battery.type: Lion
battery.voltage: 13.20
device.mfr: -BMS-
device.model: Smart-Battery
device.serial: J7152BCA698BE5C6805M251
device.type: ups
driver.name: usbhid-ups
driver.version: 2.8.1
driver.version.data: Phoenixtec/Liebert HID 0.41
experimental.battery.capacity: 100
experimental.battery.capacity.nominal: 100
ups.delay.shutdown: 20
ups.delay.start: 30
ups.mfr: -BMS-
ups.model: Smart-Battery
ups.productid: ffff
ups.serial: J7152BCA698BE5C6805M251
ups.status: OL CHRG
ups.vendorid: 06da

HID objects (from -DD debug output)

28 HID objects found
Path: UPS.PowerSummary.PowerSummaryID,               Feature, ReportID: 0x01, Offset: 0,   Size: 4,  Value: 1
Path: UPS.PowerSummary.FlowID,                       Feature, ReportID: 0x01, Offset: 4,   Size: 4,  Value: 2
Path: UPS.PowerSummary.iManufacturer,                Feature, ReportID: 0x01, Offset: 8,   Size: 8,  Value: 1
Path: UPS.PowerSummary.iProduct,                     Feature, ReportID: 0x01, Offset: 16,  Size: 8,  Value: 2
Path: UPS.PowerSummary.iSerialNumber,                Feature, ReportID: 0x01, Offset: 24,  Size: 8,  Value: 3
Path: UPS.PowerSummary.iDeviceChemistry,             Feature, ReportID: 0x01, Offset: 32,  Size: 8,  Value: 4
Path: UPS.PowerSummary.BatteryPresent,               Feature, ReportID: 0x01, Offset: 40,  Size: 1,  Value: 1
Path: UPS.PowerSummary.Rechargeable,                 Feature, ReportID: 0x01, Offset: 41,  Size: 1,  Value: 1
Path: UPS.PowerSummary.CapacityMode,                 Feature, ReportID: 0x01, Offset: 48,  Size: 8,  Value: 2   (percentage)
Path: UPS.PowerSummary.DesignCapacity,               Feature, ReportID: 0x01, Offset: 56,  Size: 8,  Value: 100
Path: UPS.PowerSummary.FullChargeCapacity,           Feature, ReportID: 0x01, Offset: 64,  Size: 8,  Value: 100
Path: UPS.PowerSummary.WarningCapacityLimit,         Feature, ReportID: 0x01, Offset: 72,  Size: 8,  Value: 5
Path: UPS.PowerSummary.RemainingCapacity,            Feature, ReportID: 0x01, Offset: 80,  Size: 8,  Value: 76
Path: UPS.PowerSummary.RunTimeToEmpty,               Feature, ReportID: 0x01, Offset: 88,  Size: 32, Value: 599940
Path: UPS.PowerSummary.ConfigVoltage,                Feature, ReportID: 0x01, Offset: 120, Size: 16, Value: 3.7 (single cell nominal)
Path: UPS.PowerSummary.Voltage,                      Feature, ReportID: 0x01, Offset: 136, Size: 16, Value: 13.2
Path: UPS.PowerSummary.PresentStatus.ACPresent,      Feature, ReportID: 0x01, Offset: 152, Size: 1,  Value: 1
Path: UPS.PowerSummary.PresentStatus.Charging,       Feature, ReportID: 0x01, Offset: 153, Size: 1,  Value: 1
Path: UPS.PowerSummary.PresentStatus.Discharging,    Feature, ReportID: 0x01, Offset: 154, Size: 1,  Value: 0
Path: UPS.PowerSummary.PresentStatus.BelowRemainingCapacityLimit, Feature, ReportID: 0x01, Offset: 155, Size: 1, Value: 0
Path: UPS.PowerSummary.PresentStatus.AtRateTimeToEmpty,           Feature, ReportID: 0x01, Offset: 156, Size: 1, Value: 1
Path: UPS.PowerSummary.PresentStatus.BatteryPresent,              Feature, ReportID: 0x01, Offset: 157, Size: 1, Value: 1
Path: UPS.PowerSummary.PresentStatus.AverageTimeToEmpty,          Feature, ReportID: 0x01, Offset: 158, Size: 1, Value: 0
Path: UPS.PowerSummary.DelayBeforeShutdown,          Feature, ReportID: 0x09, Offset: 0,  Size: 32, Value: 1
Path: UPS.PowerSummary.DelayBeforeStartup,           Feature, ReportID: 0x0a, Offset: 0,  Size: 32, Value: 257
Path: UPS.PowerSummary.RemainingCapacity,            Input,   ReportID: 0x02, Offset: 8,  Size: 8,  Value: 76
Path: UPS.PowerSummary.RunTimeToEmpty,               Input,   ReportID: 0x02, Offset: 16, Size: 32, Value: 599940
Path: UPS.PowerSummary.Voltage,                      Input,   ReportID: 0x02, Offset: 48, Size: 16, Value: 13.2

lsusb -v output

Bus 001 Device 005: ID 06da:ffff Phoenixtec Power Co., Ltd Smart-Battery
Negotiated speed: Full Speed (12Mbps)
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x06da Phoenixtec Power Co., Ltd
  idProduct          0xffff Smart-Battery
  bcdDevice            0.01
  iManufacturer           1 -BMS-
  iProduct                2 Smart-Battery
  iSerial                 3 J7152BCA698BE5C6805M251
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0022
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               20mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode           33 Unknown
          bNumDescriptors         1
          bDescriptorType        34 (null)
          wDescriptorLength     291
          Report Descriptors:
            ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval              33

Notes

  • ConfigVoltage reports 3.7V (single LiFePO4 cell nominal), actual pack voltage is 13.2V (4S configuration), suggesting the BMS reports per-cell voltage in the config field
  • RunTimeToEmpty = 599940 appears to be a firmware placeholder or miscalculation; the actual battery is 230Wh LiFePO4
  • Workaround applied: override.battery.voltage.nominal = 12, override.ups.realpower.nominal = 800
  • Recommend adding 06DA:FFFF:0001 to the Phoenixtec/Liebert HID subdriver device table

Metadata

Metadata

Assignees

No one assigned

    Labels

    DDLHCLPhoenixtec (USB 0x06DA/0xFFFF)This USB chip VID/PID is used in many devices, some with different protocols - detection may be hardUSB

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Todo

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions