<HTML dir=ltr><HEAD><TITLE>PowerCOM HID PDC non-compliance</TITLE>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.6000.16981" name=GENERATOR></HEAD>
<BODY>
<DIV id=idOWAReplyText18890 dir=ltr>
<DIV dir=ltr><FONT face="Arial Cyr" color=#000000 size=2>Dear Arjen,</FONT></DIV>
<DIV dir=ltr><FONT face="Arial CYR" size=2>Thank you for your comments. I've forwarded it to software engineers to take into account in future development.</FONT></DIV>
<DIV dir=ltr><FONT face="Arial CYR" size=2></FONT>&nbsp;</DIV>
<DIV dir=ltr><SPAN lang=EN-US style="FONT-SIZE: 12pt"><FONT face=Arial color=navy size=2><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Sincerely yours<BR></SPAN></FONT><FONT face=Arial color=navy size=2><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">--<BR></SPAN></FONT><FONT face=Arial color=navy size=2><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Alexey Morozov<BR></SPAN></FONT><FONT face=Arial color=navy size=2><SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">distribution manager</SPAN></FONT>&nbsp;</SPAN></DIV></DIV>
<DIV dir=ltr><BR>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>От:</B> Arjen de Korte [mailto:nut+devel@de-korte.org]<BR><B>Отправлено:</B> Ср, 20.01.2010 11:50<BR><B>Кому:</B> Morozov Alexey<BR><B>Копия:</B> nut-upsdev<BR><B>Тема:</B> PowerCOM HID PDC non-compliance<BR></FONT><BR></DIV>
<DIV>
<P><FONT size=2>Alexey,<BR><BR>I posted this before, but never got a reply. So I'm reposting this again.<BR><BR>In the present HID PDC implementation by PowerCOM, expect problems&nbsp;<BR>with the non-compliant implementation of the DelayBeforeShutdown and&nbsp;<BR>DelayBeforeStartup pages.<BR><BR>Third party applications will expect that these follow the HID PDC&nbsp;<BR>specifications if you name them like this (and break terribly in the&nbsp;<BR>process). In NUT we can (for now) easily implement the PowerCOM&nbsp;<BR>specific formatting rules, but not all applications may be able to do&nbsp;<BR>so. The same goes for UPS.PowerSummary.Voltage,&nbsp;<BR>UPS.PowerSummary.ConfigVoltage, UPS.Battery.Voltage and&nbsp;<BR>UPS.Battery.ConfigVoltage. These should deal with the battery voltage,&nbsp;<BR>not the output voltage like implemented in the PowerCOM HID now.<BR><BR>If in the future (?) PowerCOM has newer UPS designs that unlike the&nbsp;<BR>present one are native HID PDC from the start (instead of a serial&nbsp;<BR>protocol encapsulated in HID PDC), this will be a problem. It would&nbsp;<BR>require different ways to deal with these, based on the model of the&nbsp;<BR>UPS (compliant or non-compliant versions). Generally it is *very* poor&nbsp;<BR>design practice to *not* follow a specification. Please consider to&nbsp;<BR>*not* use the standard Power Device Pages (x84) in cases like these,&nbsp;<BR>but to create vendor specific ones instead (pages 0xFF00 to 0xFFFF are&nbsp;<BR>reserved for that). It is almost always better to *not* have a HID PDC&nbsp;<BR>path than to have an *incorrect* implemented one.<BR><BR>So instead of using 0x00840056 (DelayBeforeStartup) and 0x00840057&nbsp;<BR>(DelayBeforeShutdown), use 0xFFFF0056 (PCMDelayBeforeStartup) and&nbsp;<BR>0xFFFF0057 (PCMDelayBeforeShutdown) instead. This would allow&nbsp;<BR>applications that know about the PowerCOM specific implementation to&nbsp;<BR>use these values and not break ones that don't.<BR><BR>Best regards, Arjen<BR>--<BR>Please keep list traffic on the list<BR><BR></FONT></P></DIV></BODY></HTML>