update README.EN.md. Thanks @winkywong1998

This commit is contained in:
awalol
2026-04-29 00:05:21 +08:00
parent 93c884be7e
commit d5daf2ee9f
+85 -24
View File
@@ -1,33 +1,94 @@
# Pico2W DualSense 5 Bridge # Pico2W DualSense 5 Bridge
[中文](./README.md) [中文](./README.md)
> Turn the Pico2W into a wireless adapter for the DS5 controller
# Features > Turn a Raspberry Pi Pico2W into a wireless adapter for the DualSense (DS5) controller.
- Supports HD Haptics
# Usage ## Overview
1. Hold down the BOOTSEL button on the Pico to enter flashing mode
2. Drag the `.uf2` file onto it
3. Put the DS5 controller into Bluetooth pairing mode
4. Enjoy it
- Adjusting the microphone volume changes the haptic gain multiplier, range: [1, 2] This project enables the Raspberry Pi Pico2W to function as a Bluetooth bridge for the DualSense controller, allowing wireless connectivity with enhanced haptics support.
- Enabling speaker mute disables the LED connection indicator (takes effect after the controller reconnects)
- Enabling microphone mute disables silent disconnection
- The device will only appear in the system after the controller is connected to the Pico
# Current Issues ## Features
- Audio may have slight stuttering
- Due to encoding requirements, the Pico needs to be overclocked. The current settings are 1.2V and 270MHz. In my own testing, the maximum stable frequency was 270MHz, with good results.
- If your Pico cannot boot with these overclocking settings, increase the voltage or lower the frequency yourself
# Future Plans - 🎮 Full DualSense connectivity via Pico2W
- 🔊 Supports HD haptics (advanced vibration feedback)
- 📡 Wireless Bluetooth bridging
- ⚙️ Adjustable haptic gain via microphone volume
- 🔕 Configurable LED and disconnection behaviors
# Build ## Getting Started
You need to upgrade the TinyUSB version in the Pico SDK to the latest version
# Citation ### Flashing Firmware
- [rafaelvaloto/Pico_W-Dualsense](https://github.com/rafaelvaloto/Pico_W-Dualsense) - Inspiration for this project
- [egormanga/SAxense](https://github.com/egormanga/SAxense) - Haptics reports 1. Hold the BOOTSEL button on the Pico2W
- [https://controllers.fandom.com/wiki/Sony_DualSense](https://controllers.fandom.com/wiki/Sony_DualSense) - Data report structure 2. Connect the Pico2W to your computer via USB
- [Paliverse/DualSenseX](https://github.com/Paliverse/DualSenseX) - Speaker packet reports 3. The device will mount as a USB storage device
4. Drag and drop the .uf2 firmware file onto the device
### Pairing the Controller
1. Put the DualSense controller into Bluetooth pairing mode
2. Wait for the Pico2W to detect and connect
3. Once connected, the device will appear on the host system
## Configuration
The following controller settings are repurposed:
### Microphone volume
Controls haptic gain multiplier
Range: [1.0 2.0]
### Speaker mute
Disables LED connection indicator
Takes effect after controller reconnects
### Microphone mute
Disables silent disconnection behavior
## Notes
The Pico device will only be visible to the system after the controller is connected
Some behaviors depend on reconnection cycles to take effect
## Known Issues
- ⚠️ Audio may experience slight stuttering
- ⚠️ Overclocking is required for proper performance
## Performance / Overclocking
Due to encoding requirements, the Pico2W must be overclocked:
Current settings:
- Voltage: 1.2V
- Frequency: 320 MHz
If your device fails to boot:
- Increase voltage slightly or Reduce CPU frequency
## Build Instructions
To build the project from source:
1. Update TinyUSB in the Pico SDK to the latest version
2. Compile using standard Pico SDK toolchain
## Roadmap
- Improve audio stability
## References
- [rafaelvaloto/Pico_W-Dualsense](https://github.com/rafaelvaloto/Pico_W-Dualsense) — Project inspiration
- [egormanga/SAxense](https://github.com/egormanga/SAxense) — Bluetooth Haptics POC
- [https://controllers.fandom.com/wiki/Sony_DualSense](https://controllers.fandom.com/wiki/Sony_DualSense) - DualSense data report structure documentation
- [Paliverse/DualSenseX](https://github.com/Paliverse/DualSenseX) — Speaker report packet