Not All UPSes are Made Equal

- 5 mins read

As someone who works in IT, I tend to rescue a lot of unused or unloved hardware. To most people this would be hoarding.

To me, I quote a little phrase from a song - Manifesto Destiny,

See it’s not all thieves, and it’s not all theft,
Not all data gets converted, but we save what’s left.
We’re the data jackers, the phreaks and the hackers,
It’s not to be lauded, but we’re what you need.

This being said, at home I currently have my old PC shoved in a rack along with some gear, listed below:

  • A Dell Mini PC (named Squire, runs some containers and this blog!)
  • A Unifi Cloud Gateway Ultra
  • A Unifi 2.5G Flex.
  • An EMC disk shelf.

This stack primarily runs a collection of uh, Linux ISOs, and some other services (Jellyfin, so I can stare at the pretty static from the ISOS, Kasm, this blog, etc) in a 2-node Proxmox cluster.

Now, I also live in the Southern United States. This means during 3/4ths of the year, I am probably at a decent risk of dealing with poor weather. And if you didn’t know, outside of cities?

They don’t bury power lines! So. It rains. The wind blows a bit. A tree limb falls on a power line. Usually it’s just a blip; my UPS units complain and I get some notifications on my phone via ntfy and NUT.

The world is happy.

The situation changes when it is not a blip, and turns into a prolonged outage. Now, I have my network and my main server+ disk shelf running on seperate UPS units. These units are, respectively,

  • An APC Back-UPS BX1500M 1500VA. (200$ at time of purchase.)
  • An Tripplite SMART1500LCDXL 1500VA with expanded battery module. (750$ at time of purchase.)

The APC unit runs my server until it auto shuts down around the battery hitting 80%, and I also have a script that kicks off and turns off a smart outlet to shut down the disk shelf once the server isn’t online anymore.

The Tripplite Unit exists to keep my internet and home network up for as long as possible during a power outage. I had looked long and hard for a unit like it, because while I may not have power, I do have a handful of external batteries to keep my desktop up…

And my phone. And my laptop(s). I’m really at no risk of running out of ways to continue using the internet whenever something goes awry, and since I have fiber, it usually stays up during a cut as well.

Except when the first real outage happened while I was at work; excitedly, I checked my statistics in Home Assistant and saw the Tripplite UPS, hereby referred to as the ’network UPS’ was somehow drawing WAY more power than usual.

And it ran out of battery before the other UPS did. ‘That’s odd,’ I thought to myself. Over a few months, I did a little work on why this was happening and came to an annoying conclusion:

My 750$ UPS sucks absolute ass.

When it comes to battery backups that provide 120v AC power, there is something important. Without getting into the nitty gritty of things, the grid in basically all of the world runs on a sinusoidal wave - that’s AC power.

A smooth transition, 60 times a second, providing clean and stable energy to anything you shove into a wall outlet. (not taking things like power factor into account; outside the scope of this rant!)

But usually, this is provided through a generator; a huge hunk of spinning metal that is very expensive, very loud, and very difficult to maintain. For something like a UPS or an inverter, you usually don’t need this much complexity (the line begins to blur with datacenters…)

Virtually all UPSes will do their best to approximate this 60hz AC waveform. There are two strategies, ‘Pure Sine Wave’, and ‘Modified Sine Wave’.

Pure Sine Wave is a best-effort attempt to provide something at least approaching what the grid will give you. It’s generally not perfect and breaks down under high load, but for most cases - is good enough! Electronics are happy and complain very little.

Modified Sine Wave (PWN Sinewave) throws this out the fucking window and says ‘you’ll get what you fucking get and be happy’. It is a very, very loose square-wave stepping that, if you are particularly astigmatic, looks almost like a sinewave you’d expect from the grid.

Some electronics don’t care about this. Some care about this a lot and will either not work entirely, or work so horrendously inefficently that their norminal power draw will effectively double.

Guess what happens in my case?

I’m lucky enough that my stuff will tolerate a PWM Sinewave. It will, however, go from consuming a nominal 50-70 watts depending on network traffic, to using 150 watts.

I paid 750$ for this, by the way!

I’m long past the return window now. Tripplite Customer Support has told me to go fuck myself in not so subtle terms.

Lessons learned, here. You don’t always get what you pay for.

I am currently looking at options to build my own UPS; there’s some amazing gear out there, and if you know how to wrangle pixies you can do some funny stuff with it.

But that’s for next time.