dualsense-ts 6.13.0 → 6.15.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.
Files changed (67) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +156 -9
  3. package/dist/dualsense.d.ts +2 -0
  4. package/dist/dualsense.d.ts.map +1 -1
  5. package/dist/dualsense.js +1 -1
  6. package/dist/dualsense.js.map +1 -1
  7. package/dist/dualsense_access.d.ts +155 -0
  8. package/dist/dualsense_access.d.ts.map +1 -0
  9. package/dist/dualsense_access.js +292 -0
  10. package/dist/dualsense_access.js.map +1 -0
  11. package/dist/elements/access_player_indicator.d.ts +14 -0
  12. package/dist/elements/access_player_indicator.d.ts.map +1 -0
  13. package/dist/elements/access_player_indicator.js +28 -0
  14. package/dist/elements/access_player_indicator.js.map +1 -0
  15. package/dist/elements/access_profile_leds.d.ts +12 -0
  16. package/dist/elements/access_profile_leds.d.ts.map +1 -0
  17. package/dist/elements/access_profile_leds.js +24 -0
  18. package/dist/elements/access_profile_leds.js.map +1 -0
  19. package/dist/elements/access_status_led.d.ts +11 -0
  20. package/dist/elements/access_status_led.d.ts.map +1 -0
  21. package/dist/elements/access_status_led.js +23 -0
  22. package/dist/elements/access_status_led.js.map +1 -0
  23. package/dist/elements/index.d.ts +3 -0
  24. package/dist/elements/index.d.ts.map +1 -1
  25. package/dist/elements/index.js +3 -0
  26. package/dist/elements/index.js.map +1 -1
  27. package/dist/hid/access/access_hid.d.ts +73 -0
  28. package/dist/hid/access/access_hid.d.ts.map +1 -0
  29. package/dist/hid/access/access_hid.js +324 -0
  30. package/dist/hid/access/access_hid.js.map +1 -0
  31. package/dist/hid/access/access_hid_provider.d.ts +75 -0
  32. package/dist/hid/access/access_hid_provider.d.ts.map +1 -0
  33. package/dist/hid/access/access_hid_provider.js +147 -0
  34. package/dist/hid/access/access_hid_provider.js.map +1 -0
  35. package/dist/hid/access/access_hid_state.d.ts +111 -0
  36. package/dist/hid/access/access_hid_state.d.ts.map +1 -0
  37. package/dist/hid/access/access_hid_state.js +119 -0
  38. package/dist/hid/access/access_hid_state.js.map +1 -0
  39. package/dist/hid/access/access_node_hid_provider.d.ts +38 -0
  40. package/dist/hid/access/access_node_hid_provider.d.ts.map +1 -0
  41. package/dist/hid/access/access_node_hid_provider.js +167 -0
  42. package/dist/hid/access/access_node_hid_provider.js.map +1 -0
  43. package/dist/hid/access/access_null_hid_provider.d.ts +18 -0
  44. package/dist/hid/access/access_null_hid_provider.d.ts.map +1 -0
  45. package/dist/hid/access/access_null_hid_provider.js +31 -0
  46. package/dist/hid/access/access_null_hid_provider.js.map +1 -0
  47. package/dist/hid/access/access_platform_hid_provider.d.ts +4 -0
  48. package/dist/hid/access/access_platform_hid_provider.d.ts.map +1 -0
  49. package/dist/hid/access/access_platform_hid_provider.js +9 -0
  50. package/dist/hid/access/access_platform_hid_provider.js.map +1 -0
  51. package/dist/hid/access/access_web_hid_provider.d.ts +49 -0
  52. package/dist/hid/access/access_web_hid_provider.d.ts.map +1 -0
  53. package/dist/hid/access/access_web_hid_provider.js +226 -0
  54. package/dist/hid/access/access_web_hid_provider.js.map +1 -0
  55. package/dist/hid/access_hid.d.ts +191 -0
  56. package/dist/hid/access_hid.d.ts.map +1 -0
  57. package/dist/hid/access_hid.js +200 -0
  58. package/dist/hid/access_hid.js.map +1 -0
  59. package/dist/hid/index.d.ts +8 -0
  60. package/dist/hid/index.d.ts.map +1 -1
  61. package/dist/hid/index.js +8 -0
  62. package/dist/hid/index.js.map +1 -1
  63. package/dist/index.d.ts +1 -0
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +1 -0
  66. package/dist/index.js.map +1 -1
  67. package/package.json +7 -4
package/CHANGELOG.md CHANGED
@@ -2,6 +2,35 @@
2
2
 
3
3
  All notable changes to `dualsense-ts` are documented here. This project uses [Semantic Versioning](https://semver.org/).
4
4
 
5
+ ## [6.15.0] - 2026-04-15
6
+
7
+ ### Added
8
+
9
+ - **DualSense Access profile-mapped inputs**: `DualsenseAccess` now exposes a full DualSense-compatible input layer driven by the controller's active profile
10
+ - Mapped sticks (`left.analog`, `right.analog`), triggers (`left.trigger`, `right.trigger`), bumpers (`left.bumper`, `right.bumper`), face buttons (`cross`, `circle`, `square`, `triangle`), D-pad, touchpad button, `options`, `create`, and `mute`
11
+ - Same property names and types as `Dualsense` - code written for one works on both
12
+ - Bluetooth limited mode (Report 0x01) now parses the mapped header, providing mapped inputs before Feature Report 0x05 triggers full mode
13
+ - **Documentation app**: expanded Access section with 7 pages - Overview (with DualSense comparison table), Access Playground (interactive demo with all inputs and LED controls), Hardware Inputs, Profile Inputs, LED Control, Profile Management (WIP), and Expansion Slots (WIP)
14
+ - Updated README with profile-mapped input examples and revised comparison table
15
+
16
+ ## [6.14.0] - 2026-04-14
17
+
18
+ ### Added
19
+
20
+ - **DualSense Access controller support**: new `DualsenseAccess` class with full input reading and LED control over USB and Bluetooth
21
+ - **Inputs**: 8 hardware buttons (B1–B8), center button, PS button, profile cycle button, analog stick (X/Y/click), battery level and charge status, active profile ID (1–3)
22
+ - **LED output**: RGB lightbar, 3-segment profile LEDs (off/on/fade/sweep), 6-segment player indicator (patterns 1–4), white status LED — all controllable over both USB and BT
23
+ - **Bluetooth**: full Report 0x31 support with automatic firmware animation dismiss on connect, CRC32 output reports, and Feature Report 0x05 mode switch
24
+ - **Transports**: `AccessNodeHIDProvider` (node-hid) with multi-device enumeration and serial number targeting, `AccessWebHIDProvider` (WebHID) with permission dialog and device replacement, `AccessNullHIDProvider` (headless/testing)
25
+ - **Identity**: firmware version, factory info (serial number, body color, board revision), and MAC address loaded automatically on connect with retry/backoff
26
+ - **Documentation app**: new Access controller page with connect button, button state grid, stick visualization, and interactive LED controls
27
+ - Hardware verification script (`scripts/verify_access.ts`) for walking through all input/output stages with a physical controller
28
+ - Diagnostic scripts for BT LED protocol research (`scripts/access_led_demo.ts`, `scripts/access_bt_led_sweep.ts`, `scripts/access_bt_init_find.ts`)
29
+
30
+ ### Fixed
31
+
32
+ - `Dualsense` constructor used `params.square` instead of `params.connection` when configuring the connection input (copy-paste bug, no practical effect since `InputParams` only controls icon/name/threshold)
33
+
5
34
  ## [6.13.0] - 2026-04-13
6
35
 
7
36
  ### Added
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # dualsense-ts
2
2
 
3
- `dualsense-ts` is the natural interface for your DualSense controller. Simple to use, fully-typed, fully-featured, and supports wired and wireless connections in both node.js and the browser.
3
+ `dualsense-ts` is the natural interface for your DualSense and DualSense Access controllers. Simple to use, fully-typed, fully-featured, and supports wired and wireless connections in both node.js and the browser.
4
4
 
5
5
  Check out the **[interactive docs](https://nsfm.github.io/dualsense-ts/)**! Connect a controller (or a few!) and try every feature with live demos. Or, explore the [playground](https://nsfm.github.io/dualsense-ts/playground) to check all of your controller functionality in one place.
6
6
 
@@ -19,6 +19,7 @@ Check out the **[interactive docs](https://nsfm.github.io/dualsense-ts/)**! Conn
19
19
  - **Peripheral status** for connected headphones and microphone
20
20
  - **[Power save](https://nsfm.github.io/dualsense-ts/outputs/power-save)** flags for per-subsystem muting (haptic mute confirmed; subsystem disable flags advisory)
21
21
  - **[Firmware info](https://nsfm.github.io/dualsense-ts/status)** checks providing controller color, hardware/software versions, and more
22
+ - **[DualSense Access controller](https://nsfm.github.io/dualsense-ts/access)** support with hardware inputs, profile-mapped DualSense-compatible controls, and 4 LED systems
22
23
 
23
24
  ## [Getting started](https://nsfm.github.io/dualsense-ts/getting-started)
24
25
 
@@ -647,6 +648,130 @@ manager.dispose();
647
648
 
648
649
  Using `new Dualsense()` directly continues to work exactly as before, allowing you to manage a single controller. `DualsenseManager` is entirely opt-in - you only need it when managing multiple controllers. Do not use standalone `Dualsense` instances and a `DualsenseManager` at the same time.
649
650
 
651
+ ## Other DualSense Variants
652
+
653
+ The **DualSense Access** controller is fully supported - see the [DualSense Access](#dualsense-access) section below.
654
+
655
+ The DualSense FlexStrike and DualSense Edge controllers are not yet supported. This functionality is on the roadmap.
656
+
657
+ The PS4 DualShock controller is not supported.
658
+
659
+ ## [DualSense Access](https://nsfm.github.io/dualsense-ts/access)
660
+
661
+ The DualSense Access controller is supported via a separate `DualsenseAccess` class. It exposes two layers of input: [raw hardware inputs](https://nsfm.github.io/dualsense-ts/access/hardware-inputs) (profile-independent) and [profile-mapped inputs](https://nsfm.github.io/dualsense-ts/access/profile-inputs) that mirror the standard DualSense layout. Both layers update simultaneously on every report.
662
+
663
+ ### Quick start
664
+
665
+ ```typescript
666
+ import { DualsenseAccess } from "dualsense-ts";
667
+
668
+ const access = new DualsenseAccess();
669
+
670
+ // Raw hardware inputs (always the same regardless of profile)
671
+ access.b1.on("press", () => console.log("B1 pressed"));
672
+ access.stick.on("change", () => {
673
+ console.log(
674
+ `Stick: ${access.stick.x.state.toFixed(2)}, ${access.stick.y.state.toFixed(2)}`,
675
+ );
676
+ });
677
+
678
+ // Profile-mapped inputs (same API as Dualsense)
679
+ access.cross.on("press", () => console.log("Cross"));
680
+ access.left.analog.on("change", (s) => {
681
+ console.log(`Left stick: ${s.x.state.toFixed(2)}, ${s.y.state.toFixed(2)}`);
682
+ });
683
+ access.dpad.up.on("press", () => console.log("D-pad up"));
684
+
685
+ // Battery and profile
686
+ access.battery.level.on("change", ({ state }) => {
687
+ console.log(`Battery: ${Math.round(state * 100)}%`);
688
+ });
689
+ access.profileId.on("change", ({ state }) => {
690
+ console.log(`Active profile: ${state}`); // 1, 2, or 3
691
+ });
692
+ ```
693
+
694
+ ### Profile-mapped inputs
695
+
696
+ The controller's firmware maps hardware buttons to a virtual DualSense layout using the active profile. These mapped inputs use the same property names as `Dualsense`, so code written for one works on both:
697
+
698
+ ```typescript
699
+ // Works identically on Dualsense and DualsenseAccess
700
+ controller.cross.on("press", () => jump());
701
+ controller.left.analog.on("change", (s) => move(s.x.state, s.y.state));
702
+ controller.dpad.up.on("press", () => selectPrevious());
703
+ ```
704
+
705
+ Available mapped inputs: `left` / `right` ([Unisense](https://nsfm.github.io/dualsense-ts/api/unisense) — stick, trigger, bumper), `dpad`, `cross`, `circle`, `square`, `triangle`, `touchpad` (button only), `options`, `create`, `mute`.
706
+
707
+ ### [LED control](https://nsfm.github.io/dualsense-ts/access/led-control)
708
+
709
+ The Access controller has 4 independent LED systems:
710
+
711
+ ```typescript
712
+ import { AccessProfileLedMode, AccessPlayerIndicator } from "dualsense-ts";
713
+
714
+ // RGB lightbar (same API as DualSense)
715
+ access.lightbar.set({ r: 255, g: 0, b: 128 });
716
+
717
+ // Profile LEDs — 3-segment arc
718
+ access.profileLeds.set(AccessProfileLedMode.Sweep);
719
+ access.profileLeds.set(AccessProfileLedMode.Fade);
720
+ access.profileLeds.set(AccessProfileLedMode.Off);
721
+
722
+ // Player indicator — 6-segment ring
723
+ access.playerIndicator.set(AccessPlayerIndicator.Player1);
724
+ access.playerIndicator.set(AccessPlayerIndicator.Off);
725
+
726
+ // White status LED
727
+ access.statusLed.set(true); // on
728
+ access.statusLed.set(false); // off
729
+ ```
730
+
731
+ ### Identity
732
+
733
+ Firmware version, factory info (serial number, board revision, body color), and MAC address are loaded automatically after connection:
734
+
735
+ ```typescript
736
+ const fw = access.firmwareInfo;
737
+ console.log(
738
+ `FW: ${fw.mainFirmwareVersion.major}.${fw.mainFirmwareVersion.minor}.${fw.mainFirmwareVersion.patch}`,
739
+ );
740
+ console.log(`Serial: ${access.factoryInfo.serialNumber}`);
741
+ console.log(`Board: ${access.factoryInfo.boardRevision}`);
742
+ ```
743
+
744
+ ### Browser usage
745
+
746
+ In Node.js, `new DualsenseAccess()` auto-connects — no extra setup needed. In the browser, WebHID requires a one-time user gesture to grant device permission:
747
+
748
+ ```typescript
749
+ import { DualsenseAccess } from "dualsense-ts";
750
+
751
+ const access = new DualsenseAccess();
752
+
753
+ // Trigger WebHID permission dialog from a user gesture
754
+ connectButton.onclick = () => access.hid.provider.getRequest?.();
755
+ ```
756
+
757
+ Once permission is granted, the controller connects automatically and reconnects on disconnect - same as the standard DualSense.
758
+
759
+ ### Important differences from DualSense
760
+
761
+ | | DualSense | DualSense Access |
762
+ | --------------- | ------------------------------------------- | ---------------------------------------------------- |
763
+ | Class | `Dualsense` | `DualsenseAccess` |
764
+ | Hardware inputs | Face buttons, D-pad, bumpers, triggers, etc | B1–B8, center, analog stick, PS, profile |
765
+ | Mapped inputs | N/A (inputs are fixed) | Profile-mapped DualSense-compatible layout |
766
+ | Analog sticks | 2 sticks | 1 raw + 2 profile-mapped |
767
+ | Triggers | L2 / R2 with analog pressure | Analog via expansion port accessories only |
768
+ | Motion | Gyroscope + accelerometer | None |
769
+ | Touchpad | Multi-touch surface | Button only (no touch surface) |
770
+ | Audio | Speaker, mic, headphone jack | None |
771
+ | Haptics | Rumble + adaptive triggers | None |
772
+ | LEDs | Lightbar, player LEDs, mute LED | Lightbar, profile LEDs, player indicator, status LED |
773
+ | Profiles | N/A | 3 hardware profiles (read-only) |
774
+
650
775
  ## Known Issues
651
776
 
652
777
  ### Audio streaming requires USB
@@ -670,11 +795,31 @@ pactl set-sink-volume alsa_output.usb-Sony_Interactive_Entertainment_Wireless_Co
670
795
 
671
796
  Identical Bluetooth devices are not given separate HID interfaces under some circumstances. You may still use multiple USB-connected controllers plus one Bluetooth controller.
672
797
 
673
- ## Other Dualsense Variants
798
+ ### Linux - DualSense Access Bluetooth requires BlueZ configuration
674
799
 
675
- The DualSense FlexStrike, DualSense Edge, and DualSense Access controllers are not yet supported. This functionality is on the roadmap.
800
+ The Access controller pairs over Bluetooth but does not bond in the way BlueZ expects by default. BlueZ's input plugin rejects the HID connection with `hidp_add_connection() Rejected connection from !bonded device`. To fix this:
676
801
 
677
- The PS4 DualShock controller is not supported.
802
+ 1. Edit `/etc/bluetooth/input.conf` and set `ClassicBondedOnly=false` under `[General]`:
803
+
804
+ ```ini
805
+ [General]
806
+ ClassicBondedOnly=false
807
+ UserspaceHID=false
808
+ ```
809
+
810
+ 2. Load the `hidp` kernel module if it isn't already loaded:
811
+
812
+ ```bash
813
+ sudo modprobe hidp
814
+ ```
815
+
816
+ 3. Restart the Bluetooth service:
817
+
818
+ ```bash
819
+ sudo systemctl restart bluetooth
820
+ ```
821
+
822
+ This is a BlueZ-specific issue — Windows and macOS handle pairing seamlessly. The standard DualSense is not affected.
678
823
 
679
824
  ## Migration Guide
680
825
 
@@ -682,9 +827,11 @@ The PS4 DualShock controller is not supported.
682
827
 
683
828
  ## Credits
684
829
 
685
- - [CamTosh](https://github.com/CamTosh)'s [node-dualsense](https://github.com/CamTosh/node-dualsense) - HID report reference
686
- - [flok](https://github.com/flok)'s [pydualsense](https://github.com/flok/pydualsense) - HID report reference
687
- - [nondebug](https://github.com/nondebug)'s [dualsense reference](https://github.com/nondebug/dualsense) - WebHID reference
688
- - [daidr](https://github.com/daidr)'s [dualsense-tester](https://github.com/daidr/dualsense-tester) - firmware/factory info reference
689
- - [nowrep](https://github.com/nowrep)'s [dualsensectl](https://github.com/nowrep/dualsensectl) - firmware info reference
830
+ - [CamTosh](https://github.com/CamTosh)'s [node-dualsense](https://github.com/CamTosh/node-dualsense) - DualSense HID protocol reference
831
+ - [flok](https://github.com/flok)'s [pydualsense](https://github.com/flok/pydualsense) - DualSense HID protocol reference
832
+ - [nondebug](https://github.com/nondebug)'s [dualsense reference](https://github.com/nondebug/dualsense) - DualSense WebHID reference
833
+ - [daidr](https://github.com/daidr)'s [dualsense-tester](https://github.com/daidr/dualsense-tester) - DualSense firmware/factory info reference
834
+ - [nowrep](https://github.com/nowrep)'s [dualsensectl](https://github.com/nowrep/dualsensectl) - DualSense firmware info reference
835
+ - [chronovore](https://sr.ht/~chronovore)'s [titania](https://sr.ht/~chronovore/titania/) - DualSense Access HID protocol reference
836
+ - [jfedor](https://github.com/jfedor2)'s [PS Access Profiles](https://www.jfedor.org/ps-access/) - DualSense Access profile format reference
690
837
  - [Contributors to `dualsense-ts` on Github](https://github.com/nsfm/dualsense-ts/graphs/contributors)
@@ -37,6 +37,8 @@ export interface DualsenseParams extends InputParams {
37
37
  accelerometer?: AccelerometerParams;
38
38
  /** Settings for the battery */
39
39
  battery?: BatteryParams;
40
+ /** Settings for the connection indicator */
41
+ connection?: InputParams;
40
42
  /** Settings for the orientation tracker (Madgwick AHRS) */
41
43
  orientation?: OrientationParams;
42
44
  /** Settings for the shake detector */
@@ -1 +1 @@
1
- {"version":3,"file":"dualsense.d.ts","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,SAAS,EACT,eAAe,EACf,aAAa,EACb,mBAAmB,EACnB,OAAO,EACP,aAAa,EACb,QAAQ,EACR,UAAU,EACV,KAAK,EACL,gBAAgB,EACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAY,WAAW,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAEL,YAAY,EAMZ,YAAY,EACZ,WAAW,EACX,cAAc,EAGd,mBAAmB,EACpB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EACL,WAAW,EACX,KAAK,iBAAiB,EACtB,aAAa,EACb,KAAK,mBAAmB,EACzB,MAAM,UAAU,CAAC;AAElB,oEAAoE;AACpE,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,oEAAoE;IACpE,GAAG,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC1B,0CAA0C;IAC1C,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,mCAAmC;IACnC,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,sCAAsC;IACtC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,qCAAqC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,qCAAqC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,oCAAoC;IACpC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,qCAAqC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,oCAAoC;IACpC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,8DAA8D;IAC9D,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,iCAAiC;IACjC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,qCAAqC;IACrC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,+BAA+B;IAC/B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,sCAAsC;IACtC,KAAK,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED,wCAAwC;AACxC,qBAAa,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC;IAC7C,SAAgB,KAAK,EAAE,SAAS,CAAQ;IAExC,6BAA6B;IAC7B,SAAgB,EAAE,EAAE,SAAS,CAAC;IAC9B,uCAAuC;IACvC,SAAgB,IAAI,EAAE,IAAI,CAAC;IAC3B,yBAAyB;IACzB,SAAgB,OAAO,EAAE,SAAS,CAAC;IACnC,wBAAwB;IACxB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,0BAA0B;IAC1B,SAAgB,QAAQ,EAAE,SAAS,CAAC;IACpC,wBAAwB;IACxB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,6BAA6B;IAC7B,SAAgB,KAAK,EAAE,SAAS,CAAC;IACjC,wBAAwB;IACxB,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,0CAA0C;IAC1C,SAAgB,IAAI,EAAE,IAAI,CAAC;IAC3B,gDAAgD;IAChD,SAAgB,IAAI,EAAE,QAAQ,CAAC;IAC/B,iDAAiD;IACjD,SAAgB,KAAK,EAAE,QAAQ,CAAC;IAChC,uDAAuD;IACvD,SAAgB,QAAQ,EAAE,QAAQ,CAAC;IACnC,+CAA+C;IAC/C,SAAgB,SAAS,EAAE,SAAS,CAAC;IACrC,kDAAkD;IAClD,SAAgB,aAAa,EAAE,aAAa,CAAC;IAC7C,wCAAwC;IACxC,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,sEAAsE;IACtE,SAAgB,UAAU,EAAE,SAAS,CAAC;IACtC,sEAAsE;IACtE,SAAgB,SAAS,EAAE,SAAS,CAAC;IACrC,qDAAqD;IACrD,SAAgB,QAAQ,WAAkB;IAC1C,wCAAwC;IACxC,SAAgB,UAAU,aAAoB;IAC9C,qDAAqD;IACrD,SAAgB,KAAK,QAAe;IACpC,gFAAgF;IAChF,SAAgB,SAAS,mBAA0B;IAEnD;;;;OAIG;IACH,SAAgB,WAAW,EAAE,WAAW,CAAC;IAEzC;;;;OAIG;IACH,SAAgB,KAAK,EAAE,aAAa,CAAC;IAErC;;mFAE+E;IACxE,eAAe,EAAE,MAAM,CAAK;IAEnC,iEAAiE;IACjE,OAAO,CAAC,mBAAmB,CAAK;IAEhC,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwC;IAE/D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAG7B;IAEF,mEAAmE;IACnE,SAAgB,GAAG,EAAE,YAAY,CAAC;IAElC;;;OAGG;IACH,IAAW,YAAY,IAAI,YAAY,CAEtC;IAED;;;OAGG;IACH,IAAW,WAAW,IAAI,WAAW,CAEpC;IAED;;;;OAIG;IACH,IAAW,WAAW,IAAI,mBAAmB,CAE5C;IAED,6EAA6E;IAC7E,SAAgB,UAAU,EAAE,SAAS,CAAC;IAEtC,qDAAqD;IACrD,IAAW,MAAM,IAAI,OAAO,CAI3B;IAED,kEAAkE;IAClE,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,mCAAmC;IACnC,IAAW,KAAK,IAAI,cAAc,CAIjC;IAED,sDAAsD;IACtD,IAAW,YAAY,IAAI,MAAM,CAEhC;gBAEW,MAAM,GAAE,eAAoB;IAiQxC,sDAAsD;IAC/C,OAAO,IAAI,IAAI;IAMtB,oEAAoE;IACpE,OAAO,KAAK,eAAe,GAE1B;IAED,+EAA+E;IACxE,oBAAoB,IAAI,IAAI;IAKnC;;;;;OAKG;IACU,aAAa,CACxB,MAAM,GAAE,SAAS,GAAG,WAAuB,EAC3C,IAAI,GAAE,MAAM,GAAG,OAAO,GAAG,MAAe,GACvC,OAAO,CAAC,IAAI,CAAC;IAIhB,6BAA6B;IAChB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,kFAAkF;IAC3E,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM;IAM5C,sEAAsE;IACtE,OAAO,CAAC,UAAU;CAmFnB"}
1
+ {"version":3,"file":"dualsense.d.ts","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"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"}
package/dist/dualsense.js CHANGED
@@ -140,7 +140,7 @@ class Dualsense extends input_1.Input {
140
140
  this.connection = new elements_1.Momentary({
141
141
  icon: "🔗",
142
142
  name: "Connected",
143
- ...(params.square ?? {}),
143
+ ...(params.connection ?? {}),
144
144
  });
145
145
  this.gyroscope = new elements_1.Gyroscope({
146
146
  icon: "∞",
@@ -1 +1 @@
1
- {"version":3,"file":"dualsense.js","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dualsense.js","sourceRoot":"","sources":["../src/dualsense.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,155 @@
1
+ import { Momentary, Analog, AnalogParams, Battery, BatteryParams, Lightbar, Mute, Unisense, UnisenseParams, Dpad, DpadParams, Touchpad } from "./elements";
2
+ import { AccessProfileLeds } from "./elements/access_profile_leds";
3
+ import { AccessStatusLed } from "./elements/access_status_led";
4
+ import { AccessPlayerIndicatorLed } from "./elements/access_player_indicator";
5
+ import { Input, InputParams } from "./input";
6
+ import { AccessHID } from "./hid/access/access_hid";
7
+ import type { FirmwareInfo } from "./hid/firmware_info";
8
+ import type { FactoryInfo } from "./hid/factory_info";
9
+ /** Settings for your DualSense Access controller */
10
+ export interface DualsenseAccessParams extends InputParams {
11
+ /** Sets the source for HID events. Default: decide automatically */
12
+ hid?: AccessHID | null;
13
+ /** Settings for the B1 button */
14
+ b1?: InputParams;
15
+ /** Settings for the B2 button */
16
+ b2?: InputParams;
17
+ /** Settings for the B3 button */
18
+ b3?: InputParams;
19
+ /** Settings for the B4 button */
20
+ b4?: InputParams;
21
+ /** Settings for the B5 button */
22
+ b5?: InputParams;
23
+ /** Settings for the B6 button */
24
+ b6?: InputParams;
25
+ /** Settings for the B7 button */
26
+ b7?: InputParams;
27
+ /** Settings for the B8 button */
28
+ b8?: InputParams;
29
+ /** Settings for the center button */
30
+ center?: InputParams;
31
+ /** Settings for the PS button */
32
+ ps?: InputParams;
33
+ /** Settings for the profile cycle button */
34
+ profile?: InputParams;
35
+ /** Settings for the analog stick */
36
+ stick?: AnalogParams;
37
+ /** Settings for the left stick/trigger/bumper group */
38
+ left?: UnisenseParams;
39
+ /** Settings for the right stick/trigger/bumper group */
40
+ right?: UnisenseParams;
41
+ /** Settings for the D-pad */
42
+ dpad?: DpadParams;
43
+ /** Settings for the Cross button */
44
+ cross?: InputParams;
45
+ /** Settings for the Circle button */
46
+ circle?: InputParams;
47
+ /** Settings for the Square button */
48
+ square?: InputParams;
49
+ /** Settings for the Triangle button */
50
+ triangle?: InputParams;
51
+ /** Settings for the touchpad */
52
+ touchpad?: InputParams;
53
+ /** Settings for the Options button */
54
+ options?: InputParams;
55
+ /** Settings for the Create button */
56
+ create?: InputParams;
57
+ /** Settings for the Mute button */
58
+ mute?: InputParams;
59
+ /** Settings for the battery */
60
+ battery?: BatteryParams;
61
+ /** Settings for the connection indicator */
62
+ connection?: InputParams;
63
+ }
64
+ /** Tracks the active profile ID (1–3) */
65
+ declare class ProfileId extends Input<number> {
66
+ state: number;
67
+ get active(): boolean;
68
+ }
69
+ /** Represents a DualSense Access controller */
70
+ export declare class DualsenseAccess extends Input<DualsenseAccess> {
71
+ readonly state: DualsenseAccess;
72
+ /** Hardware button 1 */
73
+ readonly b1: Momentary;
74
+ /** Hardware button 2 */
75
+ readonly b2: Momentary;
76
+ /** Hardware button 3 */
77
+ readonly b3: Momentary;
78
+ /** Hardware button 4 */
79
+ readonly b4: Momentary;
80
+ /** Hardware button 5 */
81
+ readonly b5: Momentary;
82
+ /** Hardware button 6 */
83
+ readonly b6: Momentary;
84
+ /** Hardware button 7 */
85
+ readonly b7: Momentary;
86
+ /** Hardware button 8 */
87
+ readonly b8: Momentary;
88
+ /** Center button */
89
+ readonly center: Momentary;
90
+ /** PlayStation button */
91
+ readonly ps: Momentary;
92
+ /** Profile cycle button */
93
+ readonly profile: Momentary;
94
+ /** Analog stick (x, y, button = stick click) */
95
+ readonly stick: Analog;
96
+ /** Left stick, trigger (L2), and bumper (L1) — profile-mapped */
97
+ readonly left: Unisense;
98
+ /** Right stick, trigger (R2), and bumper (R1) — profile-mapped */
99
+ readonly right: Unisense;
100
+ /** D-pad — profile-mapped */
101
+ readonly dpad: Dpad;
102
+ /** Cross button — profile-mapped */
103
+ readonly cross: Momentary;
104
+ /** Circle button — profile-mapped */
105
+ readonly circle: Momentary;
106
+ /** Square button — profile-mapped */
107
+ readonly square: Momentary;
108
+ /** Triangle button — profile-mapped */
109
+ readonly triangle: Momentary;
110
+ /** Touchpad (button only, contacts stay at neutral) — profile-mapped */
111
+ readonly touchpad: Touchpad;
112
+ /** Options button — profile-mapped */
113
+ readonly options: Momentary;
114
+ /** Create button — profile-mapped */
115
+ readonly create: Momentary;
116
+ /** Mute button — profile-mapped */
117
+ readonly mute: Mute;
118
+ /** Battery level and charging status */
119
+ readonly battery: Battery;
120
+ /** Active profile ID (1–3) */
121
+ readonly profileId: ProfileId;
122
+ /** Whether a controller is connected */
123
+ readonly connection: Momentary;
124
+ /** RGB light bar */
125
+ readonly lightbar: Lightbar;
126
+ /** Profile indicator LEDs (3 LEDs, animation modes) */
127
+ readonly profileLeds: AccessProfileLeds;
128
+ /** Player indicator LED pattern (6-segment cross) */
129
+ readonly playerIndicator: AccessPlayerIndicatorLed;
130
+ /** White status LED */
131
+ readonly statusLed: AccessStatusLed;
132
+ /** Active interval timers, cleared on dispose */
133
+ private readonly timers;
134
+ /** Buffered battery reading */
135
+ private readonly pendingBattery;
136
+ /** The underlying HID coordinator */
137
+ readonly hid: AccessHID;
138
+ /** Firmware and hardware information */
139
+ get firmwareInfo(): FirmwareInfo;
140
+ /** Factory information (serial number, body color, board revision) */
141
+ get factoryInfo(): FactoryInfo;
142
+ /** True if any input is active */
143
+ get active(): boolean;
144
+ /** Returns true if connected via Bluetooth */
145
+ get wireless(): boolean;
146
+ /** Factory-stamped serial number */
147
+ get serialNumber(): string;
148
+ constructor(params?: DualsenseAccessParams);
149
+ /** Stop all internal timers and release resources */
150
+ dispose(): void;
151
+ /** Distributes HID state to inputs */
152
+ private processHID;
153
+ }
154
+ export {};
155
+ //# sourceMappingURL=dualsense_access.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dualsense_access.d.ts","sourceRoot":"","sources":["../src/dualsense_access.ts"],"names":[],"mappings":"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"}