I recently added a UPS to my server rack to keep my internet and home network running during a power outage. After unpacking it, I investigated its USB port and discovered it wasn’t for powering other devices. Instead, it connects to a host computer to provide information like battery charge status, remaining runtime, and current load.

I wanted to access this data without relying on third-party software, so I decided to see if I could reverse-engineer the protocol using Linux.

  • curbstickle@anarchist.nexus
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    edit-2
    3 hours ago

    I’m a bit surprised they didnt know what that USB port was for, its pretty standard. Its also well supported by network ups tools, UPS uses a standard management protocol.

      • curbstickle@anarchist.nexus
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 hours ago

        They didnt think to look anything up.

        Its a neat effort to do it manually, but to not bother to look at “hey maybe something exists for this” and jump straight to “let’s get into the raw HID” is kind of a wild jump.

        • frongt@lemmy.zip
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          1 hour ago

          Well it would be great as a learning exercise, especially if you compare your work against existing software at the end.

          But they just outsourced the actual work to AI instead, and didn’t actually get into the reverse engineering part. I am significantly underwhelmed.

          • curbstickle@anarchist.nexus
            link
            fedilink
            English
            arrow-up
            2
            ·
            1 hour ago

            Oh it’d be a great learning exercise for sure, though for that I’d rather see someone read spec and put it into practice. Though that’d be more of a UPS than a USB exercise I guess.

      • curbstickle@anarchist.nexus
        link
        fedilink
        English
        arrow-up
        4
        ·
        3 hours ago

        I still have a 9 pin serial UPS! Its hooked in a portable rack (dont ask) at my office. Mostly because nitwits kept hitting the buttons on what amounts to an expensive IP controllable surge strip, and turning off devices on me. So now it detects and sends me a message so I can turn outlets back on.

        But hey, it still sees use!