I've used Zero delays, GroovyGameGear's GPWiz Max, GPWiz Max 49way, and some others they no longer sell, as well as JPac, Ultrastik (has it's own encoder) Ipac from Ultimarc, off the shelf nintendo and psx-style USB controllers.
Pretty much any of the USB controllers I've used have worked fine out of the box. Not sure about HyperPie configuration options (I use RetroPie), but generally speaking linux has pretty good compatibility with controllers.
The only one I've had a problem with was GroovyGameGear's 49 way encoder.... Linux doesn't like the positive-only output from that stick and I've been unable by any means to get the 49way part of the encoder to work (but the rest of it works fine).
Personally though, I prefer keyboard encoders like the Ipac rather than gamepad encoders, but that's my personal preference. Some people complain about lag with Zero Delays and Xin-Mo... but I don't know. I don't really feel it.