On Oct 9, 2015, at 8:19 AM, Louis G. <louis at frentzgzesh.info>
wrote:>
> Charles,
>
> That was the PR1500LCDRT2U on the FreeBSD. I have not tried the CP900VR on
the FreeBSD box yet. I can tell you that the CP900VR does work as expected on
the Nas4Free one though. I am thinking it is the way the driver parses the USB
hex identifier. There might be a filter that is not configured correctly or
existing at all. I have seen this with DD-WRT and Sierra Wireless Modems. Where
the config file for the driver has a list of special settings based on the USB
ID. Let me know what you think. Thank you.
>
> Joe Gzesh
> Sent from Zimbra Open Source Mail Server. Hosted at my House.
> Ask me how to set up your own Zimbra server.
>
> ----- On Oct 8, 2015, at 10:22 PM, Charles Lepple clepple at gmail.com
wrote:
>
>> On Oct 8, 2015, at 9:55 PM, Louis G. <louis at frentzgzesh.info>
wrote:
>>>
>>> I finally got the FreeBSD box up and running. I can do testing now
when you have
>>> time. I have ran through the tests that you asked me to do
previously and
>>> attached them here. Let me know what you find. Thank you.
>>
>> The CyberPower HID report descriptor looks fine, but I think I'm
losing track of
>> the various test cases.
>>
>> Please correct me if I'm wrong:
>>
>> 1) NAS4Free + NUT 2.7.3 + PR1500LCDRT2U = bad HID report descriptor
>> 2) NAS4Free + usbconfig + PR1500LCDRT2U = good HID report descriptor
>> 3) CentOS 6.7 + NUT 2.7.3 + PR1500LCDRT2U = works
>> 4) FreeBSD + NUT 2.7.3 + CP900VR = works
So the updated list looks like this:
1) NAS4Free + NUT 2.7.3 + PR1500LCDRT2U = bad HID report descriptor
2) NAS4Free + usbconfig + PR1500LCDRT2U = good HID report descriptor
3) CentOS 6.7 + NUT 2.7.3 + PR1500LCDRT2U = works
4) FreeBSD (10.2?) + NUT 2.7.3 + PR1500LCDRT2U = works (good HID report
descriptor)
When you say "I am thinking it is the way the driver parses the USB hex
identifier", I don't think it is the NUT driver - the problem is most
likely in the FreeBSD/NAS4Free USB libraries or in the kernel driver (ugen,
maybe). The NUT drivers initially use the USB product ID to filter out non-UPS
devices, but the logging of the HID report descriptor (shown below) happens
before any other decisions are made based on the product ID.
With the information that the same UPS works fine with NUT and FreeBSD, but
doesn't work on NAS4Free, I think you have enough information to file a bug
with NAS4Free. This is the bad information that NUT is receiving:
> For instance, these lines:
>
> 0.157417 Report Descriptor: (656 bytes) => 05 00 84 00 09 00 04 00 a1 00
01 00 09 00
> 0.157431 24 00 a1 00 00 00 85 00 01 00 09 00 fe 00 75 00 08 00 95 00 01 00
15 00 00
>
> would parse fairly normally if they read as follows:
>
> 0.157417 Report Descriptor: (656 bytes) => 05 84 09 04 a1 01 09
> 0.157431 24 a1 00 85 01 09 fe 75 08 95 01 15 00
It seems that the NAS4Free USB libraries are returning something different to
NUT and usbconfig (possibly due to different code paths, but I do not know what
settings would be involved here.)