[Nut-upsdev] Driver for Cyberpower PR2200

Russ Romano russ at cb-1.com
Thu Apr 26 15:35:33 UTC 2007

I will recapture with portmon set to hex this evening.  I was a bit
concerned about capturing an overwhelming amount of data, so I tried to
break it up into pages of a particular behavior in the spreadsheet.  Is
this good, or would you rather I just start capturing from the time I
run the software, and run the UPS through it's paces?

As I noted before, I'll try to capture the log of status info from the
OEM software that matches the stream of data captured in portmon while
varying the load and cutting power off and back on.

Thanks for the mod to cyberpower.c.  I'll try that tonight as well.


> -----Original Message-----
> From: Arjen de Korte [mailto:nut+devel at de-korte.org] 
> Sent: Thursday, April 26, 2007 4:33 AM
> To: Russ Romano
> Cc: 'Doug Reynolds'; nut-upsdev at lists.alioth.debian.org
> Subject: RE: [Nut-upsdev] Driver for Cyberpower PR2200
> > I captured the information before reading this, so I'll 
> give you what 
> > I have for now, and if we need more data I'll capture some more.
> We do. I forgot to mention that you need to activate the 
> option 'Show hex' in PortMon. Since this UPS uses a binary 
> protocol, we can't see what's happening without this.
> One thing that we do know already, is that the current 
> settings of the cyberpower driver are wrong for your UPS. 
> Yours expects that DTR is set and RTS cleared, while the 
> cyberpower driver sets both. The latter is rather counter 
> intuitive, since  most of the time, you'll want one of either 
> polarity to provide cable power. Otherwise, you need to rely 
> on the TX pin to provide power.
> Since the combination RTS and DTR both set matches 'shutdown' 
> in dumb (dry
> contact) mode (genericups upstype=7 or upstype=22, which is 
> used by other cyberpower systems), I wouldn't be surprised at 
> all if this causes your UPS to shutdown after a while when 
> running on battery. It is certainly worthwhile to check if 
> changing line 543 in cyberpower.c
> from
>  	ioctl(upsfd, TIOCMBIS, &rts_bit);
> to
>  	ioctl(upsfd, TIOCMBIC, &rts_bit);
> solves the problem of unexpected shutdowns.
> Best regards, Arjen

More information about the Nut-upsdev mailing list