@openmouse/protocol 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONTRIBUTING.md +167 -0
- package/README.md +89 -0
- package/dist/asus/index.d.ts +52 -0
- package/dist/asus/index.d.ts.map +1 -0
- package/dist/asus/index.js +248 -0
- package/dist/asus/index.js.map +1 -0
- package/dist/atk/index.d.ts +200 -0
- package/dist/atk/index.d.ts.map +1 -0
- package/dist/atk/index.js +480 -0
- package/dist/atk/index.js.map +1 -0
- package/dist/bitmouse/index.d.ts +284 -0
- package/dist/bitmouse/index.d.ts.map +1 -0
- package/dist/bitmouse/index.js +396 -0
- package/dist/bitmouse/index.js.map +1 -0
- package/dist/compx/codec.d.ts +31 -0
- package/dist/compx/codec.d.ts.map +1 -0
- package/dist/compx/codec.js +50 -0
- package/dist/compx/codec.js.map +1 -0
- package/dist/corsair/index.d.ts +147 -0
- package/dist/corsair/index.d.ts.map +1 -0
- package/dist/corsair/index.js +223 -0
- package/dist/corsair/index.js.map +1 -0
- package/dist/dareu/index.d.ts +136 -0
- package/dist/dareu/index.d.ts.map +1 -0
- package/dist/dareu/index.js +344 -0
- package/dist/dareu/index.js.map +1 -0
- package/dist/drivers/asus/hid.d.ts +29 -0
- package/dist/drivers/asus/hid.d.ts.map +1 -0
- package/dist/drivers/asus/hid.js +419 -0
- package/dist/drivers/asus/hid.js.map +1 -0
- package/dist/drivers/atk/bitmouse-hid.d.ts +80 -0
- package/dist/drivers/atk/bitmouse-hid.d.ts.map +1 -0
- package/dist/drivers/atk/bitmouse-hid.js +501 -0
- package/dist/drivers/atk/bitmouse-hid.js.map +1 -0
- package/dist/drivers/atk/hid.d.ts +163 -0
- package/dist/drivers/atk/hid.d.ts.map +1 -0
- package/dist/drivers/atk/hid.js +1368 -0
- package/dist/drivers/atk/hid.js.map +1 -0
- package/dist/drivers/atk/products.d.ts +13 -0
- package/dist/drivers/atk/products.d.ts.map +1 -0
- package/dist/drivers/atk/products.js +13 -0
- package/dist/drivers/atk/products.js.map +1 -0
- package/dist/drivers/attackshark/dpi.d.ts +41 -0
- package/dist/drivers/attackshark/dpi.d.ts.map +1 -0
- package/dist/drivers/attackshark/dpi.js +215 -0
- package/dist/drivers/attackshark/dpi.js.map +1 -0
- package/dist/drivers/attackshark/hid.d.ts +124 -0
- package/dist/drivers/attackshark/hid.d.ts.map +1 -0
- package/dist/drivers/attackshark/hid.js +728 -0
- package/dist/drivers/attackshark/hid.js.map +1 -0
- package/dist/drivers/corsair/hid.d.ts +70 -0
- package/dist/drivers/corsair/hid.d.ts.map +1 -0
- package/dist/drivers/corsair/hid.js +414 -0
- package/dist/drivers/corsair/hid.js.map +1 -0
- package/dist/drivers/dareu/hid.d.ts +59 -0
- package/dist/drivers/dareu/hid.d.ts.map +1 -0
- package/dist/drivers/dareu/hid.js +478 -0
- package/dist/drivers/dareu/hid.js.map +1 -0
- package/dist/drivers/endgame/egg-op1-hid.d.ts +107 -0
- package/dist/drivers/endgame/egg-op1-hid.d.ts.map +1 -0
- package/dist/drivers/endgame/egg-op1-hid.js +605 -0
- package/dist/drivers/endgame/egg-op1-hid.js.map +1 -0
- package/dist/drivers/endgame/egg-we-control.d.ts +42 -0
- package/dist/drivers/endgame/egg-we-control.d.ts.map +1 -0
- package/dist/drivers/endgame/egg-we-control.js +87 -0
- package/dist/drivers/endgame/egg-we-control.js.map +1 -0
- package/dist/drivers/endgame/egg-we-hid.d.ts +58 -0
- package/dist/drivers/endgame/egg-we-hid.d.ts.map +1 -0
- package/dist/drivers/endgame/egg-we-hid.js +514 -0
- package/dist/drivers/endgame/egg-we-hid.js.map +1 -0
- package/dist/drivers/fantech/hid.d.ts +106 -0
- package/dist/drivers/fantech/hid.d.ts.map +1 -0
- package/dist/drivers/fantech/hid.js +295 -0
- package/dist/drivers/fantech/hid.js.map +1 -0
- package/dist/drivers/finalmouse/hid.d.ts +31 -0
- package/dist/drivers/finalmouse/hid.d.ts.map +1 -0
- package/dist/drivers/finalmouse/hid.js +181 -0
- package/dist/drivers/finalmouse/hid.js.map +1 -0
- package/dist/drivers/gearhub/hid.d.ts +191 -0
- package/dist/drivers/gearhub/hid.d.ts.map +1 -0
- package/dist/drivers/gearhub/hid.js +542 -0
- package/dist/drivers/gearhub/hid.js.map +1 -0
- package/dist/drivers/glorious/classic-hid.d.ts +62 -0
- package/dist/drivers/glorious/classic-hid.d.ts.map +1 -0
- package/dist/drivers/glorious/classic-hid.js +326 -0
- package/dist/drivers/glorious/classic-hid.js.map +1 -0
- package/dist/drivers/glorious/hid.d.ts +39 -0
- package/dist/drivers/glorious/hid.d.ts.map +1 -0
- package/dist/drivers/glorious/hid.js +203 -0
- package/dist/drivers/glorious/hid.js.map +1 -0
- package/dist/drivers/gwolves/hid.d.ts +27 -0
- package/dist/drivers/gwolves/hid.d.ts.map +1 -0
- package/dist/drivers/gwolves/hid.js +225 -0
- package/dist/drivers/gwolves/hid.js.map +1 -0
- package/dist/drivers/gwolves/products.d.ts +17 -0
- package/dist/drivers/gwolves/products.d.ts.map +1 -0
- package/dist/drivers/gwolves/products.js +58 -0
- package/dist/drivers/gwolves/products.js.map +1 -0
- package/dist/drivers/hyperx/hid.d.ts +59 -0
- package/dist/drivers/hyperx/hid.d.ts.map +1 -0
- package/dist/drivers/hyperx/hid.js +229 -0
- package/dist/drivers/hyperx/hid.js.map +1 -0
- package/dist/drivers/incott/hid.d.ts +513 -0
- package/dist/drivers/incott/hid.d.ts.map +1 -0
- package/dist/drivers/incott/hid.js +1173 -0
- package/dist/drivers/incott/hid.js.map +1 -0
- package/dist/drivers/index.d.ts +5 -0
- package/dist/drivers/index.d.ts.map +1 -0
- package/dist/drivers/index.js +5 -0
- package/dist/drivers/index.js.map +1 -0
- package/dist/drivers/keychron/m6-hid.d.ts +81 -0
- package/dist/drivers/keychron/m6-hid.d.ts.map +1 -0
- package/dist/drivers/keychron/m6-hid.js +486 -0
- package/dist/drivers/keychron/m6-hid.js.map +1 -0
- package/dist/drivers/keychron/nape-hid.d.ts +60 -0
- package/dist/drivers/keychron/nape-hid.d.ts.map +1 -0
- package/dist/drivers/keychron/nape-hid.js +432 -0
- package/dist/drivers/keychron/nape-hid.js.map +1 -0
- package/dist/drivers/ksnake/hid.d.ts +74 -0
- package/dist/drivers/ksnake/hid.d.ts.map +1 -0
- package/dist/drivers/ksnake/hid.js +368 -0
- package/dist/drivers/ksnake/hid.js.map +1 -0
- package/dist/drivers/lamzu/hid.d.ts +58 -0
- package/dist/drivers/lamzu/hid.d.ts.map +1 -0
- package/dist/drivers/lamzu/hid.js +414 -0
- package/dist/drivers/lamzu/hid.js.map +1 -0
- package/dist/drivers/lamzu-atlantis/hid.d.ts +148 -0
- package/dist/drivers/lamzu-atlantis/hid.d.ts.map +1 -0
- package/dist/drivers/lamzu-atlantis/hid.js +587 -0
- package/dist/drivers/lamzu-atlantis/hid.js.map +1 -0
- package/dist/drivers/logitech/bolt.d.ts +41 -0
- package/dist/drivers/logitech/bolt.d.ts.map +1 -0
- package/dist/drivers/logitech/bolt.js +105 -0
- package/dist/drivers/logitech/bolt.js.map +1 -0
- package/dist/drivers/logitech/hidpp.d.ts +525 -0
- package/dist/drivers/logitech/hidpp.d.ts.map +1 -0
- package/dist/drivers/logitech/hidpp.js +2774 -0
- package/dist/drivers/logitech/hidpp.js.map +1 -0
- package/dist/drivers/logitech/mode-status.d.ts +53 -0
- package/dist/drivers/logitech/mode-status.d.ts.map +1 -0
- package/dist/drivers/logitech/mode-status.js +52 -0
- package/dist/drivers/logitech/mode-status.js.map +1 -0
- package/dist/drivers/logitech/onboard-profiles.d.ts +298 -0
- package/dist/drivers/logitech/onboard-profiles.d.ts.map +1 -0
- package/dist/drivers/logitech/onboard-profiles.js +965 -0
- package/dist/drivers/logitech/onboard-profiles.js.map +1 -0
- package/dist/drivers/logitech/rgb-effects.d.ts +20 -0
- package/dist/drivers/logitech/rgb-effects.d.ts.map +1 -0
- package/dist/drivers/logitech/rgb-effects.js +93 -0
- package/dist/drivers/logitech/rgb-effects.js.map +1 -0
- package/dist/drivers/mchose/a5-gen1-hid.d.ts +36 -0
- package/dist/drivers/mchose/a5-gen1-hid.d.ts.map +1 -0
- package/dist/drivers/mchose/a5-gen1-hid.js +219 -0
- package/dist/drivers/mchose/a5-gen1-hid.js.map +1 -0
- package/dist/drivers/mchose/dock-hid.d.ts +26 -0
- package/dist/drivers/mchose/dock-hid.d.ts.map +1 -0
- package/dist/drivers/mchose/dock-hid.js +176 -0
- package/dist/drivers/mchose/dock-hid.js.map +1 -0
- package/dist/drivers/mchose/hid.d.ts +118 -0
- package/dist/drivers/mchose/hid.d.ts.map +1 -0
- package/dist/drivers/mchose/hid.js +550 -0
- package/dist/drivers/mchose/hid.js.map +1 -0
- package/dist/drivers/mchose/v3-hid.d.ts +109 -0
- package/dist/drivers/mchose/v3-hid.d.ts.map +1 -0
- package/dist/drivers/mchose/v3-hid.js +572 -0
- package/dist/drivers/mchose/v3-hid.js.map +1 -0
- package/dist/drivers/microsoft/hid.d.ts +25 -0
- package/dist/drivers/microsoft/hid.d.ts.map +1 -0
- package/dist/drivers/microsoft/hid.js +247 -0
- package/dist/drivers/microsoft/hid.js.map +1 -0
- package/dist/drivers/moddo/hid.d.ts +31 -0
- package/dist/drivers/moddo/hid.d.ts.map +1 -0
- package/dist/drivers/moddo/hid.js +154 -0
- package/dist/drivers/moddo/hid.js.map +1 -0
- package/dist/drivers/mouse-types.d.ts +388 -0
- package/dist/drivers/mouse-types.d.ts.map +1 -0
- package/dist/drivers/mouse-types.js +2 -0
- package/dist/drivers/mouse-types.js.map +1 -0
- package/dist/drivers/ninjutso/hid.d.ts +62 -0
- package/dist/drivers/ninjutso/hid.d.ts.map +1 -0
- package/dist/drivers/ninjutso/hid.js +680 -0
- package/dist/drivers/ninjutso/hid.js.map +1 -0
- package/dist/drivers/orbital/hid.d.ts +24 -0
- package/dist/drivers/orbital/hid.d.ts.map +1 -0
- package/dist/drivers/orbital/hid.js +85 -0
- package/dist/drivers/orbital/hid.js.map +1 -0
- package/dist/drivers/orbital/host-protocol.d.ts +59 -0
- package/dist/drivers/orbital/host-protocol.d.ts.map +1 -0
- package/dist/drivers/orbital/host-protocol.js +884 -0
- package/dist/drivers/orbital/host-protocol.js.map +1 -0
- package/dist/drivers/pulsar/pulsar-hid.d.ts +63 -0
- package/dist/drivers/pulsar/pulsar-hid.d.ts.map +1 -0
- package/dist/drivers/pulsar/pulsar-hid.js +381 -0
- package/dist/drivers/pulsar/pulsar-hid.js.map +1 -0
- package/dist/drivers/pulsar/pulsar-pro-hid.d.ts +46 -0
- package/dist/drivers/pulsar/pulsar-pro-hid.d.ts.map +1 -0
- package/dist/drivers/pulsar/pulsar-pro-hid.js +343 -0
- package/dist/drivers/pulsar/pulsar-pro-hid.js.map +1 -0
- package/dist/drivers/pulsar/pulsar-xs1-hid.d.ts +40 -0
- package/dist/drivers/pulsar/pulsar-xs1-hid.d.ts.map +1 -0
- package/dist/drivers/pulsar/pulsar-xs1-hid.js +251 -0
- package/dist/drivers/pulsar/pulsar-xs1-hid.js.map +1 -0
- package/dist/drivers/rawm/hid.d.ts +29 -0
- package/dist/drivers/rawm/hid.d.ts.map +1 -0
- package/dist/drivers/rawm/hid.js +210 -0
- package/dist/drivers/rawm/hid.js.map +1 -0
- package/dist/drivers/razer/cobra-hid.d.ts +63 -0
- package/dist/drivers/razer/cobra-hid.d.ts.map +1 -0
- package/dist/drivers/razer/cobra-hid.js +282 -0
- package/dist/drivers/razer/cobra-hid.js.map +1 -0
- package/dist/drivers/razer/hid-open.d.ts +13 -0
- package/dist/drivers/razer/hid-open.d.ts.map +1 -0
- package/dist/drivers/razer/hid-open.js +29 -0
- package/dist/drivers/razer/hid-open.js.map +1 -0
- package/dist/drivers/razer/hid.d.ts +231 -0
- package/dist/drivers/razer/hid.d.ts.map +1 -0
- package/dist/drivers/razer/hid.js +772 -0
- package/dist/drivers/razer/hid.js.map +1 -0
- package/dist/drivers/razer/viper-hid.d.ts +33 -0
- package/dist/drivers/razer/viper-hid.d.ts.map +1 -0
- package/dist/drivers/razer/viper-hid.js +177 -0
- package/dist/drivers/razer/viper-hid.js.map +1 -0
- package/dist/drivers/razer/viper-mini-hid.d.ts +58 -0
- package/dist/drivers/razer/viper-mini-hid.d.ts.map +1 -0
- package/dist/drivers/razer/viper-mini-hid.js +273 -0
- package/dist/drivers/razer/viper-mini-hid.js.map +1 -0
- package/dist/drivers/razer/viper-v4-pro-hid.d.ts +26 -0
- package/dist/drivers/razer/viper-v4-pro-hid.d.ts.map +1 -0
- package/dist/drivers/razer/viper-v4-pro-hid.js +154 -0
- package/dist/drivers/razer/viper-v4-pro-hid.js.map +1 -0
- package/dist/drivers/registry.d.ts +70 -0
- package/dist/drivers/registry.d.ts.map +1 -0
- package/dist/drivers/registry.js +146 -0
- package/dist/drivers/registry.js.map +1 -0
- package/dist/drivers/steelseries/aerox3-hid.d.ts +53 -0
- package/dist/drivers/steelseries/aerox3-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/aerox3-hid.js +172 -0
- package/dist/drivers/steelseries/aerox3-hid.js.map +1 -0
- package/dist/drivers/steelseries/aerox5-hid.d.ts +54 -0
- package/dist/drivers/steelseries/aerox5-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/aerox5-hid.js +173 -0
- package/dist/drivers/steelseries/aerox5-hid.js.map +1 -0
- package/dist/drivers/steelseries/aerox5-wireless-hid.d.ts +69 -0
- package/dist/drivers/steelseries/aerox5-wireless-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/aerox5-wireless-hid.js +234 -0
- package/dist/drivers/steelseries/aerox5-wireless-hid.js.map +1 -0
- package/dist/drivers/steelseries/aerox9-wireless-hid.d.ts +70 -0
- package/dist/drivers/steelseries/aerox9-wireless-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/aerox9-wireless-hid.js +227 -0
- package/dist/drivers/steelseries/aerox9-wireless-hid.js.map +1 -0
- package/dist/drivers/steelseries/hid.d.ts +48 -0
- package/dist/drivers/steelseries/hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/hid.js +157 -0
- package/dist/drivers/steelseries/hid.js.map +1 -0
- package/dist/drivers/steelseries/prime-mini-wireless-hid.d.ts +62 -0
- package/dist/drivers/steelseries/prime-mini-wireless-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/prime-mini-wireless-hid.js +215 -0
- package/dist/drivers/steelseries/prime-mini-wireless-hid.js.map +1 -0
- package/dist/drivers/steelseries/prime-plus-hid.d.ts +51 -0
- package/dist/drivers/steelseries/prime-plus-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/prime-plus-hid.js +150 -0
- package/dist/drivers/steelseries/prime-plus-hid.js.map +1 -0
- package/dist/drivers/steelseries/rival3-wireless-hid.d.ts +61 -0
- package/dist/drivers/steelseries/rival3-wireless-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/rival3-wireless-hid.js +185 -0
- package/dist/drivers/steelseries/rival3-wireless-hid.js.map +1 -0
- package/dist/drivers/steelseries/rival310-hid.d.ts +59 -0
- package/dist/drivers/steelseries/rival310-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/rival310-hid.js +182 -0
- package/dist/drivers/steelseries/rival310-hid.js.map +1 -0
- package/dist/drivers/steelseries/rival650-hid.d.ts +68 -0
- package/dist/drivers/steelseries/rival650-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/rival650-hid.js +209 -0
- package/dist/drivers/steelseries/rival650-hid.js.map +1 -0
- package/dist/drivers/steelseries/sensei-ten-hid.d.ts +62 -0
- package/dist/drivers/steelseries/sensei-ten-hid.d.ts.map +1 -0
- package/dist/drivers/steelseries/sensei-ten-hid.js +186 -0
- package/dist/drivers/steelseries/sensei-ten-hid.js.map +1 -0
- package/dist/drivers/teevolution/hid.d.ts +82 -0
- package/dist/drivers/teevolution/hid.d.ts.map +1 -0
- package/dist/drivers/teevolution/hid.js +607 -0
- package/dist/drivers/teevolution/hid.js.map +1 -0
- package/dist/drivers/vendors.d.ts +254 -0
- package/dist/drivers/vendors.d.ts.map +1 -0
- package/dist/drivers/vendors.js +587 -0
- package/dist/drivers/vendors.js.map +1 -0
- package/dist/drivers/vgn/hid.d.ts +33 -0
- package/dist/drivers/vgn/hid.d.ts.map +1 -0
- package/dist/drivers/vgn/hid.js +213 -0
- package/dist/drivers/vgn/hid.js.map +1 -0
- package/dist/drivers/wallhack/keyboard-hid.d.ts +28 -0
- package/dist/drivers/wallhack/keyboard-hid.d.ts.map +1 -0
- package/dist/drivers/wallhack/keyboard-hid.js +80 -0
- package/dist/drivers/wallhack/keyboard-hid.js.map +1 -0
- package/dist/drivers/wallhack/mouse-hid.d.ts +45 -0
- package/dist/drivers/wallhack/mouse-hid.d.ts.map +1 -0
- package/dist/drivers/wallhack/mouse-hid.js +288 -0
- package/dist/drivers/wallhack/mouse-hid.js.map +1 -0
- package/dist/drivers/webhid.d.ts +59 -0
- package/dist/drivers/webhid.d.ts.map +1 -0
- package/dist/drivers/webhid.js +2 -0
- package/dist/drivers/webhid.js.map +1 -0
- package/dist/drivers/wlmouse/hid.d.ts +81 -0
- package/dist/drivers/wlmouse/hid.d.ts.map +1 -0
- package/dist/drivers/wlmouse/hid.js +576 -0
- package/dist/drivers/wlmouse/hid.js.map +1 -0
- package/dist/drivers/wooting/hid.d.ts +86 -0
- package/dist/drivers/wooting/hid.d.ts.map +1 -0
- package/dist/drivers/wooting/hid.js +320 -0
- package/dist/drivers/wooting/hid.js.map +1 -0
- package/dist/drivers/zaunkoenig/hid.d.ts +31 -0
- package/dist/drivers/zaunkoenig/hid.d.ts.map +1 -0
- package/dist/drivers/zaunkoenig/hid.js +162 -0
- package/dist/drivers/zaunkoenig/hid.js.map +1 -0
- package/dist/endgame-gear/op1.d.ts +165 -0
- package/dist/endgame-gear/op1.d.ts.map +1 -0
- package/dist/endgame-gear/op1.js +384 -0
- package/dist/endgame-gear/op1.js.map +1 -0
- package/dist/endgame-gear/wireless.d.ts +93 -0
- package/dist/endgame-gear/wireless.d.ts.map +1 -0
- package/dist/endgame-gear/wireless.js +242 -0
- package/dist/endgame-gear/wireless.js.map +1 -0
- package/dist/fantech/index.d.ts +9 -0
- package/dist/fantech/index.d.ts.map +1 -0
- package/dist/fantech/index.js +11 -0
- package/dist/fantech/index.js.map +1 -0
- package/dist/finalmouse/index.d.ts +41 -0
- package/dist/finalmouse/index.d.ts.map +1 -0
- package/dist/finalmouse/index.js +106 -0
- package/dist/finalmouse/index.js.map +1 -0
- package/dist/gearhub/index.d.ts +210 -0
- package/dist/gearhub/index.d.ts.map +1 -0
- package/dist/gearhub/index.js +282 -0
- package/dist/gearhub/index.js.map +1 -0
- package/dist/glorious/index.d.ts +89 -0
- package/dist/glorious/index.d.ts.map +1 -0
- package/dist/glorious/index.js +236 -0
- package/dist/glorious/index.js.map +1 -0
- package/dist/glorious-classic/index.d.ts +103 -0
- package/dist/glorious-classic/index.d.ts.map +1 -0
- package/dist/glorious-classic/index.js +304 -0
- package/dist/glorious-classic/index.js.map +1 -0
- package/dist/gwolves/index.d.ts +82 -0
- package/dist/gwolves/index.d.ts.map +1 -0
- package/dist/gwolves/index.js +197 -0
- package/dist/gwolves/index.js.map +1 -0
- package/dist/hyperx/index.d.ts +181 -0
- package/dist/hyperx/index.d.ts.map +1 -0
- package/dist/hyperx/index.js +303 -0
- package/dist/hyperx/index.js.map +1 -0
- package/dist/incott/index.d.ts +1067 -0
- package/dist/incott/index.d.ts.map +1 -0
- package/dist/incott/index.js +1482 -0
- package/dist/incott/index.js.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +30 -0
- package/dist/index.js.map +1 -0
- package/dist/keychron/index.d.ts +194 -0
- package/dist/keychron/index.d.ts.map +1 -0
- package/dist/keychron/index.js +341 -0
- package/dist/keychron/index.js.map +1 -0
- package/dist/ksnake/index.d.ts +157 -0
- package/dist/ksnake/index.d.ts.map +1 -0
- package/dist/ksnake/index.js +314 -0
- package/dist/ksnake/index.js.map +1 -0
- package/dist/lamzu/atlantis.d.ts +237 -0
- package/dist/lamzu/atlantis.d.ts.map +1 -0
- package/dist/lamzu/atlantis.js +263 -0
- package/dist/lamzu/atlantis.js.map +1 -0
- package/dist/lamzu/index.d.ts +60 -0
- package/dist/lamzu/index.d.ts.map +1 -0
- package/dist/lamzu/index.js +86 -0
- package/dist/lamzu/index.js.map +1 -0
- package/dist/logitech/controls.d.ts +138 -0
- package/dist/logitech/controls.d.ts.map +1 -0
- package/dist/logitech/controls.js +184 -0
- package/dist/logitech/controls.js.map +1 -0
- package/dist/logitech/friendly-name.d.ts +50 -0
- package/dist/logitech/friendly-name.d.ts.map +1 -0
- package/dist/logitech/friendly-name.js +74 -0
- package/dist/logitech/friendly-name.js.map +1 -0
- package/dist/logitech/haptics.d.ts +97 -0
- package/dist/logitech/haptics.d.ts.map +1 -0
- package/dist/logitech/haptics.js +116 -0
- package/dist/logitech/haptics.js.map +1 -0
- package/dist/logitech/hosts.d.ts +55 -0
- package/dist/logitech/hosts.d.ts.map +1 -0
- package/dist/logitech/hosts.js +80 -0
- package/dist/logitech/hosts.js.map +1 -0
- package/dist/logitech/index.d.ts +127 -0
- package/dist/logitech/index.d.ts.map +1 -0
- package/dist/logitech/index.js +233 -0
- package/dist/logitech/index.js.map +1 -0
- package/dist/logitech/wheel.d.ts +117 -0
- package/dist/logitech/wheel.d.ts.map +1 -0
- package/dist/logitech/wheel.js +133 -0
- package/dist/logitech/wheel.js.map +1 -0
- package/dist/mchose/a5-gen1.d.ts +38 -0
- package/dist/mchose/a5-gen1.d.ts.map +1 -0
- package/dist/mchose/a5-gen1.js +60 -0
- package/dist/mchose/a5-gen1.js.map +1 -0
- package/dist/mchose/buttons.d.ts +66 -0
- package/dist/mchose/buttons.d.ts.map +1 -0
- package/dist/mchose/buttons.js +184 -0
- package/dist/mchose/buttons.js.map +1 -0
- package/dist/mchose/dock.d.ts +77 -0
- package/dist/mchose/dock.d.ts.map +1 -0
- package/dist/mchose/dock.js +133 -0
- package/dist/mchose/dock.js.map +1 -0
- package/dist/mchose/index.d.ts +299 -0
- package/dist/mchose/index.d.ts.map +1 -0
- package/dist/mchose/index.js +429 -0
- package/dist/mchose/index.js.map +1 -0
- package/dist/mchose/v3-buttons.d.ts +64 -0
- package/dist/mchose/v3-buttons.d.ts.map +1 -0
- package/dist/mchose/v3-buttons.js +258 -0
- package/dist/mchose/v3-buttons.js.map +1 -0
- package/dist/mchose/v3.d.ts +380 -0
- package/dist/mchose/v3.d.ts.map +1 -0
- package/dist/mchose/v3.js +608 -0
- package/dist/mchose/v3.js.map +1 -0
- package/dist/microsoft/index.d.ts +19 -0
- package/dist/microsoft/index.d.ts.map +1 -0
- package/dist/microsoft/index.js +22 -0
- package/dist/microsoft/index.js.map +1 -0
- package/dist/moddo/index.d.ts +72 -0
- package/dist/moddo/index.d.ts.map +1 -0
- package/dist/moddo/index.js +147 -0
- package/dist/moddo/index.js.map +1 -0
- package/dist/ninjutso/index.d.ts +74 -0
- package/dist/ninjutso/index.d.ts.map +1 -0
- package/dist/ninjutso/index.js +133 -0
- package/dist/ninjutso/index.js.map +1 -0
- package/dist/orbital/index.d.ts +14 -0
- package/dist/orbital/index.d.ts.map +1 -0
- package/dist/orbital/index.js +19 -0
- package/dist/orbital/index.js.map +1 -0
- package/dist/pulsar/index.d.ts +81 -0
- package/dist/pulsar/index.d.ts.map +1 -0
- package/dist/pulsar/index.js +185 -0
- package/dist/pulsar/index.js.map +1 -0
- package/dist/rawm/index.d.ts +55 -0
- package/dist/rawm/index.d.ts.map +1 -0
- package/dist/rawm/index.js +229 -0
- package/dist/rawm/index.js.map +1 -0
- package/dist/razer/codec.d.ts +504 -0
- package/dist/razer/codec.d.ts.map +1 -0
- package/dist/razer/codec.js +648 -0
- package/dist/razer/codec.js.map +1 -0
- package/dist/razer/devices.d.ts +156 -0
- package/dist/razer/devices.d.ts.map +1 -0
- package/dist/razer/devices.js +540 -0
- package/dist/razer/devices.js.map +1 -0
- package/dist/razer/index.d.ts +2 -0
- package/dist/razer/index.d.ts.map +1 -0
- package/dist/razer/index.js +2 -0
- package/dist/razer/index.js.map +1 -0
- package/dist/razer/v4.d.ts +19 -0
- package/dist/razer/v4.d.ts.map +1 -0
- package/dist/razer/v4.js +51 -0
- package/dist/razer/v4.js.map +1 -0
- package/dist/steelseries/aerox3.d.ts +236 -0
- package/dist/steelseries/aerox3.d.ts.map +1 -0
- package/dist/steelseries/aerox3.js +311 -0
- package/dist/steelseries/aerox3.js.map +1 -0
- package/dist/steelseries/aerox5-wireless.d.ts +300 -0
- package/dist/steelseries/aerox5-wireless.d.ts.map +1 -0
- package/dist/steelseries/aerox5-wireless.js +389 -0
- package/dist/steelseries/aerox5-wireless.js.map +1 -0
- package/dist/steelseries/aerox5.d.ts +228 -0
- package/dist/steelseries/aerox5.d.ts.map +1 -0
- package/dist/steelseries/aerox5.js +294 -0
- package/dist/steelseries/aerox5.js.map +1 -0
- package/dist/steelseries/aerox9-wireless.d.ts +213 -0
- package/dist/steelseries/aerox9-wireless.d.ts.map +1 -0
- package/dist/steelseries/aerox9-wireless.js +305 -0
- package/dist/steelseries/aerox9-wireless.js.map +1 -0
- package/dist/steelseries/devices.d.ts +82 -0
- package/dist/steelseries/devices.d.ts.map +1 -0
- package/dist/steelseries/devices.js +310 -0
- package/dist/steelseries/devices.js.map +1 -0
- package/dist/steelseries/index.d.ts +13 -0
- package/dist/steelseries/index.d.ts.map +1 -0
- package/dist/steelseries/index.js +13 -0
- package/dist/steelseries/index.js.map +1 -0
- package/dist/steelseries/prime-mini-wireless.d.ts +253 -0
- package/dist/steelseries/prime-mini-wireless.d.ts.map +1 -0
- package/dist/steelseries/prime-mini-wireless.js +351 -0
- package/dist/steelseries/prime-mini-wireless.js.map +1 -0
- package/dist/steelseries/prime-plus.d.ts +179 -0
- package/dist/steelseries/prime-plus.d.ts.map +1 -0
- package/dist/steelseries/prime-plus.js +275 -0
- package/dist/steelseries/prime-plus.js.map +1 -0
- package/dist/steelseries/rival3-wireless.d.ts +222 -0
- package/dist/steelseries/rival3-wireless.d.ts.map +1 -0
- package/dist/steelseries/rival3-wireless.js +308 -0
- package/dist/steelseries/rival3-wireless.js.map +1 -0
- package/dist/steelseries/rival3.d.ts +99 -0
- package/dist/steelseries/rival3.d.ts.map +1 -0
- package/dist/steelseries/rival3.js +147 -0
- package/dist/steelseries/rival3.js.map +1 -0
- package/dist/steelseries/rival310.d.ts +230 -0
- package/dist/steelseries/rival310.d.ts.map +1 -0
- package/dist/steelseries/rival310.js +322 -0
- package/dist/steelseries/rival310.js.map +1 -0
- package/dist/steelseries/rival650.d.ts +215 -0
- package/dist/steelseries/rival650.d.ts.map +1 -0
- package/dist/steelseries/rival650.js +284 -0
- package/dist/steelseries/rival650.js.map +1 -0
- package/dist/steelseries/sensei-ten.d.ts +283 -0
- package/dist/steelseries/sensei-ten.d.ts.map +1 -0
- package/dist/steelseries/sensei-ten.js +389 -0
- package/dist/steelseries/sensei-ten.js.map +1 -0
- package/dist/teevolution/index.d.ts +211 -0
- package/dist/teevolution/index.d.ts.map +1 -0
- package/dist/teevolution/index.js +458 -0
- package/dist/teevolution/index.js.map +1 -0
- package/dist/valkyrie/index.d.ts +19 -0
- package/dist/valkyrie/index.d.ts.map +1 -0
- package/dist/valkyrie/index.js +43 -0
- package/dist/valkyrie/index.js.map +1 -0
- package/dist/valkyrie/settings.d.ts +28 -0
- package/dist/valkyrie/settings.d.ts.map +1 -0
- package/dist/valkyrie/settings.js +84 -0
- package/dist/valkyrie/settings.js.map +1 -0
- package/dist/vgn/index.d.ts +59 -0
- package/dist/vgn/index.d.ts.map +1 -0
- package/dist/vgn/index.js +165 -0
- package/dist/vgn/index.js.map +1 -0
- package/dist/wallhack/index.d.ts +165 -0
- package/dist/wallhack/index.d.ts.map +1 -0
- package/dist/wallhack/index.js +226 -0
- package/dist/wallhack/index.js.map +1 -0
- package/dist/wlmouse/index.d.ts +4 -0
- package/dist/wlmouse/index.d.ts.map +1 -0
- package/dist/wlmouse/index.js +7 -0
- package/dist/wlmouse/index.js.map +1 -0
- package/dist/wooting/index.d.ts +225 -0
- package/dist/wooting/index.d.ts.map +1 -0
- package/dist/wooting/index.js +296 -0
- package/dist/wooting/index.js.map +1 -0
- package/dist/zaunkoenig/index.d.ts +49 -0
- package/dist/zaunkoenig/index.d.ts.map +1 -0
- package/dist/zaunkoenig/index.js +127 -0
- package/dist/zaunkoenig/index.js.map +1 -0
- package/package.json +193 -0
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HyperX / Kingston NGenuity2 protocol codecs for the Pulsefire Haste family.
|
|
3
|
+
*
|
|
4
|
+
* Transport-independent: pure encode/decode helpers, constants, and types. The
|
|
5
|
+
* actual HID I/O lives in the driver (src/drivers/hyperx/hid.ts).
|
|
6
|
+
*
|
|
7
|
+
* Protocol overview (reverse-engineered by evan-razzaque/open-pulsefire-haste,
|
|
8
|
+
* adapted from santeri3700/hyperx_pulsefire_dart_reverse_engineering):
|
|
9
|
+
* - All packets are 64 bytes, zero-padded.
|
|
10
|
+
* - Byte 0 is the command opcode; remaining bytes are the payload.
|
|
11
|
+
* - Commands travel as vendor-defined *output* reports (interrupt OUT) and
|
|
12
|
+
* replies come back as *input* reports (interrupt IN) on a single 64-byte
|
|
13
|
+
* vendor collection (usage page 0xFF00, usage 0x01). There is no feature
|
|
14
|
+
* report — the interface's HID descriptor is only ~25 bytes and declares just
|
|
15
|
+
* one input and one output report.
|
|
16
|
+
* - Reads (0x46, 0x50, 0x51, 0x52, 0x53, 0x54) echo the request's opcode at
|
|
17
|
+
* byte 0. Writes (0xD0, 0xD2, 0xD3, 0xD4, 0xDE) are fire-and-forget: the
|
|
18
|
+
* mouse ACKs nothing, so a getter must be read back to confirm.
|
|
19
|
+
* - The mouse operates in "direct" mode: writes apply immediately to the live
|
|
20
|
+
* profile and revert on power cycle unless a SAVE packet is sent too.
|
|
21
|
+
*/
|
|
22
|
+
// ── Vendor constants ────────────────────────────────────────────────────────
|
|
23
|
+
export const HYPERX_VENDOR_ID_KINGSTON = 0x0951;
|
|
24
|
+
export const HYPERX_VENDOR_ID_HP = 0x03f0;
|
|
25
|
+
/** Vendor HID collection that carries the control channel. */
|
|
26
|
+
export const HYPERX_USAGE_PAGE = 0xff00;
|
|
27
|
+
export const HYPERX_USAGE = 0x01;
|
|
28
|
+
// ── Product IDs ─────────────────────────────────────────────────────────────
|
|
29
|
+
/**
|
|
30
|
+
* Known Pulsefire Haste product ids.
|
|
31
|
+
*
|
|
32
|
+
* The original wired model shipped under Kingston VID 0x0951 (PID 0x1727) and
|
|
33
|
+
* later under HP VID 0x03f0 (PIDs 0x0f8f wired, 0x048e wired-mode alt). The
|
|
34
|
+
* wireless dongle enumerates as 0x028e.
|
|
35
|
+
*/
|
|
36
|
+
export const HYPERX_PULSEFIRE_HASTE_KINGSTON_PIDS = new Set([
|
|
37
|
+
0x1727, // Pulsefire Haste wired (Kingston era)
|
|
38
|
+
]);
|
|
39
|
+
export const HYPERX_PULSEFIRE_HASTE_HP_PIDS = new Set([
|
|
40
|
+
0x0f8f, // Pulsefire Haste wired (HP era)
|
|
41
|
+
0x048e, // Pulsefire Haste wired-mode alt (HP era)
|
|
42
|
+
0x028e, // Pulsefire Haste wireless dongle (HP era)
|
|
43
|
+
]);
|
|
44
|
+
export const HYPERX_PULSEFIRE_HASTE_PIDS = new Set([
|
|
45
|
+
...HYPERX_PULSEFIRE_HASTE_KINGSTON_PIDS,
|
|
46
|
+
...HYPERX_PULSEFIRE_HASTE_HP_PIDS,
|
|
47
|
+
]);
|
|
48
|
+
export const HYPERX_PIDS = HYPERX_PULSEFIRE_HASTE_PIDS;
|
|
49
|
+
// ── Command opcodes ─────────────────────────────────────────────────────────
|
|
50
|
+
export const CMD = {
|
|
51
|
+
/** Read connection status. */
|
|
52
|
+
GET_CONNECTION: 0x46,
|
|
53
|
+
/** Read hardware info: product/vendor id, firmware, product string. */
|
|
54
|
+
GET_HARDWARE_INFO: 0x50,
|
|
55
|
+
/** Read heartbeat: battery percent and charging status (wireless only). */
|
|
56
|
+
GET_BATTERY: 0x51,
|
|
57
|
+
/** Read saved LED configuration (logo + scroll wheel). */
|
|
58
|
+
GET_LED: 0x52,
|
|
59
|
+
/** Read DPI settings: every profile's DPI, active profile, lift-off distance. */
|
|
60
|
+
GET_DPI: 0x53,
|
|
61
|
+
/** Read button assignments. */
|
|
62
|
+
GET_BUTTONS: 0x54,
|
|
63
|
+
/** Set polling rate. */
|
|
64
|
+
SET_POLLING_RATE: 0xd0,
|
|
65
|
+
/** Multi-purpose DPI command: select profile, set DPI, set LOD, etc. */
|
|
66
|
+
SET_DPI: 0xd3,
|
|
67
|
+
/** Set LED. */
|
|
68
|
+
SET_LED: 0xd2,
|
|
69
|
+
/** Set button assignment. */
|
|
70
|
+
SET_BUTTON: 0xd4,
|
|
71
|
+
/** Save settings to onboard memory. */
|
|
72
|
+
SAVE: 0xde,
|
|
73
|
+
};
|
|
74
|
+
// ── Polling rate encoding ───────────────────────────────────────────────────
|
|
75
|
+
export const POLLING_RATE_ENCODE = new Map([
|
|
76
|
+
[125, 0x00],
|
|
77
|
+
[250, 0x01],
|
|
78
|
+
[500, 0x02],
|
|
79
|
+
[1000, 0x03],
|
|
80
|
+
]);
|
|
81
|
+
export const POLLING_RATE_DECODE = new Map([...POLLING_RATE_ENCODE].map(([hz, code]) => [code, hz]));
|
|
82
|
+
export const SUPPORTED_POLLING_RATES = [...POLLING_RATE_ENCODE.keys()];
|
|
83
|
+
// ── DPI encoding ────────────────────────────────────────────────────────────
|
|
84
|
+
/**
|
|
85
|
+
* DPI is stored as `DPI / 100` in a 16-bit little-endian field. The Pulsefire
|
|
86
|
+
* Haste allows 200–16,000 DPI in 100-DPI steps and has one DPI value per
|
|
87
|
+
* profile (no separate X/Y axes).
|
|
88
|
+
*/
|
|
89
|
+
export const DPI_STEP = 100;
|
|
90
|
+
export const DPI_MIN = 200;
|
|
91
|
+
export const DPI_MAX = 16000;
|
|
92
|
+
export function encodeDpi(dpi) {
|
|
93
|
+
return Math.round(dpi / DPI_STEP);
|
|
94
|
+
}
|
|
95
|
+
export function decodeDpi(encoded) {
|
|
96
|
+
return encoded * DPI_STEP;
|
|
97
|
+
}
|
|
98
|
+
export function isValidDpi(dpi) {
|
|
99
|
+
return Number.isInteger(dpi) && dpi >= DPI_MIN && dpi <= DPI_MAX && dpi % DPI_STEP === 0;
|
|
100
|
+
}
|
|
101
|
+
/** Every valid DPI value the protocol can represent. */
|
|
102
|
+
export function dpiOptions() {
|
|
103
|
+
const options = [];
|
|
104
|
+
for (let dpi = DPI_MIN; dpi <= DPI_MAX; dpi += DPI_STEP) {
|
|
105
|
+
options.push(dpi);
|
|
106
|
+
}
|
|
107
|
+
return options;
|
|
108
|
+
}
|
|
109
|
+
export const LOD_ENCODE = new Map([
|
|
110
|
+
["Low", 1],
|
|
111
|
+
["High", 2],
|
|
112
|
+
]);
|
|
113
|
+
export const LOD_DECODE = new Map([...LOD_ENCODE].map(([name, mm]) => [mm, name]));
|
|
114
|
+
export function decodeLod(encoded) {
|
|
115
|
+
return LOD_DECODE.get(encoded) ?? null;
|
|
116
|
+
}
|
|
117
|
+
export function encodeLod(distance) {
|
|
118
|
+
return LOD_ENCODE.get(distance) ?? 1;
|
|
119
|
+
}
|
|
120
|
+
export const CONNECTION_TYPE_DECODE = new Map([
|
|
121
|
+
[0x01, "Wireless"],
|
|
122
|
+
[0x02, "Wired"],
|
|
123
|
+
]);
|
|
124
|
+
export function decodeConnection(raw) {
|
|
125
|
+
if (raw.length < 4 || raw[0] !== CMD.GET_CONNECTION)
|
|
126
|
+
return null;
|
|
127
|
+
return CONNECTION_TYPE_DECODE.get(raw[3]) ?? null;
|
|
128
|
+
}
|
|
129
|
+
/** Decode a two-digit BCD byte, e.g. 0x41 → 41. */
|
|
130
|
+
function bcdByte(byte) {
|
|
131
|
+
return ((byte >> 4) & 0x0f) * 10 + (byte & 0x0f);
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Decode a GET_HARDWARE_INFO (0x50) response.
|
|
135
|
+
*
|
|
136
|
+
* Layout (64 bytes):
|
|
137
|
+
* [0] = echo of command (0x50)
|
|
138
|
+
* [3] = payload length (0x3C)
|
|
139
|
+
* [4..5] = product ID (LE)
|
|
140
|
+
* [6..7] = vendor ID (LE)
|
|
141
|
+
* [8..11] = little-endian BCD release number; each byte is a two-digit
|
|
142
|
+
* number, stored build→major, e.g. 4.1.0.9 is 0x09 0x00 0x01 0x04
|
|
143
|
+
* [20..] = null-terminated product string
|
|
144
|
+
*/
|
|
145
|
+
export function decodeHardwareInfo(raw) {
|
|
146
|
+
if (raw.length < 32 || raw[0] !== CMD.GET_HARDWARE_INFO)
|
|
147
|
+
return null;
|
|
148
|
+
const productId = raw[4] | (raw[5] << 8);
|
|
149
|
+
const vendorId = raw[6] | (raw[7] << 8);
|
|
150
|
+
// [8..11] little-endian BCD digits: build, revision, minor, major.
|
|
151
|
+
const major = bcdByte(raw[11]);
|
|
152
|
+
const minor = bcdByte(raw[10]);
|
|
153
|
+
const revision = bcdByte(raw[9]);
|
|
154
|
+
const build = bcdByte(raw[8]);
|
|
155
|
+
const firmware = `${major}.${minor}.${revision}.${build}`;
|
|
156
|
+
let nameEnd = 20;
|
|
157
|
+
while (nameEnd < raw.length && raw[nameEnd] !== 0)
|
|
158
|
+
nameEnd++;
|
|
159
|
+
const product = new TextDecoder().decode(raw.slice(20, nameEnd));
|
|
160
|
+
return { vendorId, productId, firmware, product };
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Decode a heartbeat (0x51) response.
|
|
164
|
+
*
|
|
165
|
+
* Layout (64 bytes):
|
|
166
|
+
* [0] = echo of command (0x51)
|
|
167
|
+
* [4] = battery percentage (0–100)
|
|
168
|
+
* [5] = charging status: 0x00 wireless (discharging),
|
|
169
|
+
* 0x01 wired (charging),
|
|
170
|
+
* 0x02 wired, fully charged
|
|
171
|
+
*/
|
|
172
|
+
export function decodeBattery(raw) {
|
|
173
|
+
if (raw.length < 6 || raw[0] !== CMD.GET_BATTERY)
|
|
174
|
+
return null;
|
|
175
|
+
const percent = raw[4];
|
|
176
|
+
const status = raw[5];
|
|
177
|
+
// Wired models and some wireless firmwares report 0 or 0xFF for battery.
|
|
178
|
+
if (percent === 0 || percent > 100) {
|
|
179
|
+
return { percent: null, state: "Unknown" };
|
|
180
|
+
}
|
|
181
|
+
const state = status === 0x01 ? "Charging"
|
|
182
|
+
: status === 0x02 ? "Full"
|
|
183
|
+
: percent < 100 ? "Discharging"
|
|
184
|
+
: "Unknown";
|
|
185
|
+
return { percent: percent <= 100 ? percent : null, state };
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Decode a DPI settings (0x53) response.
|
|
189
|
+
*
|
|
190
|
+
* Layout (64 bytes):
|
|
191
|
+
* [0] = echo of command (0x53)
|
|
192
|
+
* [4] = active profile number
|
|
193
|
+
* [5] = enabled profile bitmask
|
|
194
|
+
* [8] = max DPI step value (0xA0 = 160 = 16,000 DPI)
|
|
195
|
+
* [12..21] = 5 × DPI step values (LE uint16), profile 0 first, DPI/100
|
|
196
|
+
* [22..36] = 5 × profile indicator RGB colours
|
|
197
|
+
* [37] = lift-off distance in millimetres (1 or 2)
|
|
198
|
+
*/
|
|
199
|
+
export function decodeDpiSettings(raw) {
|
|
200
|
+
if (raw.length < 38 || raw[0] !== CMD.GET_DPI)
|
|
201
|
+
return null;
|
|
202
|
+
const profiles = [];
|
|
203
|
+
for (let i = 0; i < 5; i += 1) {
|
|
204
|
+
const encoded = raw[12 + i * 2] | (raw[13 + i * 2] << 8);
|
|
205
|
+
profiles.push(decodeDpi(encoded));
|
|
206
|
+
}
|
|
207
|
+
const activeProfile = raw[4];
|
|
208
|
+
const liftOffDistance = decodeLod(raw[37]);
|
|
209
|
+
return {
|
|
210
|
+
activeProfile: activeProfile < 5 ? activeProfile : 0,
|
|
211
|
+
enabled: raw[5],
|
|
212
|
+
profiles,
|
|
213
|
+
liftOffDistance,
|
|
214
|
+
maxDpi: decodeDpi(raw[8]),
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
// ── Command encoding helpers ────────────────────────────────────────────────
|
|
218
|
+
/**
|
|
219
|
+
* Build a SET_POLLING_RATE (0xD0) command.
|
|
220
|
+
*
|
|
221
|
+
* Wire format: [0xD0, 0x00, 0x00, 0x01, RATE_CODE]
|
|
222
|
+
*/
|
|
223
|
+
export function encodeSetPollingRate(hz) {
|
|
224
|
+
const code = POLLING_RATE_ENCODE.get(hz);
|
|
225
|
+
if (code === undefined)
|
|
226
|
+
return null;
|
|
227
|
+
const buf = new Uint8Array(64);
|
|
228
|
+
buf[0] = CMD.SET_POLLING_RATE;
|
|
229
|
+
buf[3] = 0x01;
|
|
230
|
+
buf[4] = code;
|
|
231
|
+
return buf;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Build a SET_DPI (0xD3) command that writes the DPI value for a profile.
|
|
235
|
+
*
|
|
236
|
+
* Wire format: [0xD3, 0x02, PROFILE, 0x02, DPI_LOW, DPI_HIGH]
|
|
237
|
+
*/
|
|
238
|
+
export function encodeSetDpi(profile, dpi) {
|
|
239
|
+
if (!isValidDpi(dpi))
|
|
240
|
+
return null;
|
|
241
|
+
const encoded = encodeDpi(dpi);
|
|
242
|
+
const buf = new Uint8Array(64);
|
|
243
|
+
buf[0] = CMD.SET_DPI;
|
|
244
|
+
buf[1] = 0x02; // sub-command: set profile DPI value
|
|
245
|
+
buf[2] = profile & 0x1f;
|
|
246
|
+
buf[3] = 0x02; // payload length (2 bytes for LE uint16)
|
|
247
|
+
buf[4] = encoded & 0xff;
|
|
248
|
+
buf[5] = (encoded >> 8) & 0xff;
|
|
249
|
+
return buf;
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Build a SET_DPI (0xD3) command that selects the active profile.
|
|
253
|
+
*
|
|
254
|
+
* Wire format: [0xD3, 0x00, 0x00, 0x01, PROFILE_NUM]
|
|
255
|
+
*/
|
|
256
|
+
export function encodeSelectProfile(profile) {
|
|
257
|
+
const buf = new Uint8Array(64);
|
|
258
|
+
buf[0] = CMD.SET_DPI;
|
|
259
|
+
buf[1] = 0x00; // sub-command: set selected profile
|
|
260
|
+
buf[3] = 0x01;
|
|
261
|
+
buf[4] = profile & 0x1f;
|
|
262
|
+
return buf;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Build a SET_DPI (0xD3) command that writes the enabled-profile bitmask.
|
|
266
|
+
*
|
|
267
|
+
* Wire format: [0xD3, 0x01, 0x00, 0x01, BITMASK]
|
|
268
|
+
*/
|
|
269
|
+
export function encodeEnableProfiles(bitmask) {
|
|
270
|
+
const buf = new Uint8Array(64);
|
|
271
|
+
buf[0] = CMD.SET_DPI;
|
|
272
|
+
buf[1] = 0x01; // sub-command: set enabled profiles
|
|
273
|
+
buf[3] = 0x01;
|
|
274
|
+
buf[4] = bitmask & 0x1f;
|
|
275
|
+
return buf;
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Build a SET_DPI (0xD3) command that writes the lift-off distance.
|
|
279
|
+
*
|
|
280
|
+
* Wire format: [0xD3, 0x05, 0x00, 0x01, DISTANCE_MM, DISTANCE_MM]
|
|
281
|
+
*/
|
|
282
|
+
export function encodeSetLod(distance) {
|
|
283
|
+
const buf = new Uint8Array(64);
|
|
284
|
+
buf[0] = CMD.SET_DPI;
|
|
285
|
+
buf[1] = 0x05; // sub-command: set lift-off distance
|
|
286
|
+
buf[3] = 0x01;
|
|
287
|
+
const mm = encodeLod(distance);
|
|
288
|
+
buf[4] = mm;
|
|
289
|
+
buf[5] = mm;
|
|
290
|
+
return buf;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Build a SAVE (0xDE) command to persist inline settings to onboard memory.
|
|
294
|
+
*
|
|
295
|
+
* Wire format: [0xDE, 0xFF] saves everything, [0xDE, 0x03] saves DPI only.
|
|
296
|
+
*/
|
|
297
|
+
export function encodeSave(subcommand = 0xff) {
|
|
298
|
+
const buf = new Uint8Array(64);
|
|
299
|
+
buf[0] = CMD.SAVE;
|
|
300
|
+
buf[1] = subcommand;
|
|
301
|
+
return buf;
|
|
302
|
+
}
|
|
303
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hyperx/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,+EAA+E;AAE/E,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAChD,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAE1C,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACxC,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AAEjC,+EAA+E;AAE/E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oCAAoC,GAAwB,IAAI,GAAG,CAAC;IAC/E,MAAM,EAAE,uCAAuC;CAChD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,8BAA8B,GAAwB,IAAI,GAAG,CAAC;IACzE,MAAM,EAAE,iCAAiC;IACzC,MAAM,EAAE,0CAA0C;IAClD,MAAM,EAAE,2CAA2C;CACpD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAwB,IAAI,GAAG,CAAC;IACtE,GAAG,oCAAoC;IACvC,GAAG,8BAA8B;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAwB,2BAA2B,CAAC;AAE5E,+EAA+E;AAE/E,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,8BAA8B;IAC9B,cAAc,EAAE,IAAI;IACpB,uEAAuE;IACvE,iBAAiB,EAAE,IAAI;IACvB,2EAA2E;IAC3E,WAAW,EAAE,IAAI;IACjB,0DAA0D;IAC1D,OAAO,EAAE,IAAI;IACb,iFAAiF;IACjF,OAAO,EAAE,IAAI;IACb,+BAA+B;IAC/B,WAAW,EAAE,IAAI;IAEjB,wBAAwB;IACxB,gBAAgB,EAAE,IAAI;IACtB,wEAAwE;IACxE,OAAO,EAAE,IAAI;IACb,eAAe;IACf,OAAO,EAAE,IAAI;IACb,6BAA6B;IAC7B,UAAU,EAAE,IAAI;IAChB,uCAAuC;IACvC,IAAI,EAAE,IAAI;CACF,CAAC;AAEX,+EAA+E;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAAgC,IAAI,GAAG,CAAC;IACtE,CAAC,GAAG,EAAE,IAAI,CAAC;IACX,CAAC,GAAG,EAAE,IAAI,CAAC;IACX,CAAC,GAAG,EAAE,IAAI,CAAC;IACX,CAAC,IAAI,EAAE,IAAI,CAAC;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAgC,IAAI,GAAG,CACrE,CAAC,GAAG,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CACzD,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAsB,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;AAE1F,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,CAAC;AAC5B,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC;AAE7B,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO,OAAO,GAAG,QAAQ,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,OAAO,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,OAAO,IAAI,GAAG,IAAI,OAAO,IAAI,GAAG,GAAG,QAAQ,KAAK,CAAC,CAAC;AAC3F,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,UAAU;IACxB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,EAAE,GAAG,IAAI,QAAQ,EAAE,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAMD,MAAM,CAAC,MAAM,UAAU,GAAyC,IAAI,GAAG,CAAC;IACtE,CAAC,KAAK,EAAE,CAAC,CAAC;IACV,CAAC,MAAM,EAAE,CAAC,CAAC;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAyC,IAAI,GAAG,CACrE,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAChD,CAAC;AAEF,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,OAAO,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,QAAyB;IACjD,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAMD,MAAM,CAAC,MAAM,sBAAsB,GAAwC,IAAI,GAAG,CAAC;IACjF,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,OAAO,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,UAAU,gBAAgB,CAAC,GAAe;IAC9C,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACjE,OAAO,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACpD,CAAC;AAWD,mDAAmD;AACnD,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAe;IAChD,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IAErE,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAExC,mEAAmE;IACnE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;IAE1D,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,OAAO,OAAO,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC7D,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IAEjE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC;AASD;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,GAAe;IAC3C,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9D,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAEtB,yEAAyE;IACzE,IAAI,OAAO,KAAK,CAAC,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU;QACxC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM;YAC1B,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa;gBAC/B,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;AAC7D,CAAC;AAiBD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAe;IAC/C,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE3D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACzD,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,aAAa,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE3C,OAAO;QACL,aAAa,EAAE,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACf,QAAQ;QACR,eAAe;QACf,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC;IAC9B,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACd,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACd,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,GAAW;IACvD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAE/B,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACrB,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,qCAAqC;IACpD,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,yCAAyC;IACxD,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;IACxB,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IAC/B,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACrB,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,oCAAoC;IACnD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACd,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACrB,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,oCAAoC;IACnD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACd,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;IACxB,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,QAAyB;IACpD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACrB,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,qCAAqC;IACpD,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACd,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACZ,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACZ,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,aAA0B,IAAI;IACvD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;IAClB,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;IACpB,OAAO,GAAG,CAAC;AACb,CAAC"}
|