pd200x
Async Rust driver for the Maono PD200X USB microphone.
Controls microphone gain, mute, EQ, noise cancellation, compressor, limiter, and RGB lighting over USB HID — no official SDK required.
Installation
[]
= "0.1"
= { = "1", = ["rt-multi-thread", "macros"] }
Quick start
use PD200X;
async
Linux USB permissions
The kernel's HID driver holds the USB interface by default. Install the udev rule so the library can claim it without root:
# copy the rule from the repository
&&
Then unplug and replug the microphone. The rule grants access to the
logged-in user automatically via TAG+="uaccess".
API overview
// Microphone
mic.set_mute.await?;
mic.set_mic_gain.await?; // 0–100
mic.set_mic_monitor.await?; // routes mic to headphone output
// Headphone & noise
mic.set_headphone_volume.await?; // 0–100
mic.set_noise_cancellation.await?;
mic.set_nc_strength.await?; // 0–40
// Parametric EQ (7 bands: Band1–Band5, HPF, LPF)
use ;
mic.set_eq_band.await?;
mic.set_hpf.await?; // high-pass at 80 Hz
mic.set_lpf.await?;
// Dynamics
mic.set_compressor.await?;
mic.set_limiter.await?;
// RGB lighting
use RgbColor;
mic.set_rgb_enabled.await?;
mic.set_rgb_brightness.await?; // 0–100
mic.set_rgb_color.await?;
Supported features
| Feature | Set | Get |
|---|---|---|
| Mute | ✅ | ✅ |
| Mic gain | ✅ | ✅ |
| Mic monitor | ✅ | ✅ |
| Headphone volume | ✅ | ✅ |
| Noise gate | ✅ | ✅ |
| Noise cancellation | ✅ | ✅ |
| NC strength | ✅ | ✅ |
| EQ bands (×5) | ✅ | - |
| HPF / LPF | ✅ | - |
| Compressor | ✅ | - |
| Limiter | ✅ | - |
| RGB enable | ✅ | - |
| RGB brightness | ✅ | - |
| RGB color | ✅ | - |
| Lighting linkage | ✅ | - |
License
see LICENSE.