Unityのコントローラーの扱いは知らないから一般的な話になるけど
簡単に調べるにはUSBのパケットキャプチャ入れてボタン押してどこが変わるか見ればいい
ボタン押したらなぜそこのビットが立つってのはUSBの仕様見ればいい
自分で試しながらやるならarduinoとそのソースコードが分かりやすい。自分で独自コントローラー作りながら試せる