Reverse engineering UPS battery status USB HID protocol with Linux

I had some fun this week with the UPS I installed to keep my Internet running in case of a power outage. I wanted to somehow monitor its status, without getting into third party tools, software, etc.

In the end, I managed to extract the data of interest with an ancient Raspberry Pi 2B and latest mainline Linux. With a tiny bit of userspace coding on top, that's all I needed!

I hope in general that the whole experience above of reverse engineering the USB HID-based protocols is useful to you.

Leave a Reply