Advanced Features
This guide covers advanced features and power-user options in Gamepad MIDI.
Always on Top
Keep the Gamepad MIDI window visible above all other applications.
Enabling Always on Top
- Open the mapping editor (right panel)
- Find the "Always on Top" checkbox in the menu bar area
- Click to enable
When Enabled:
- Gamepad MIDI window stays above all other windows
- Useful when working with a DAW in the background
- Make adjustments without switching windows
- Monitor MIDI values in real-time
When Disabled:
- Normal window behavior
- Can be covered by other windows
- Standard window stacking
Use Cases
Live Performance:
- Keep controls visible during a set
- Quick adjustments while performing
- Monitor gamepad status
Studio Work:
- View mappings while DAW is in focus
- Check MIDI values without switching windows
- Reference while tweaking parameters
Tip: The setting persists between sessions.
Motion Sensor Control
Advanced control using gyroscope and accelerometer sensors.
Gyroscope
The gyroscope detects rotational movement (tilt).
Enabling the Gyroscope
- Navigate to the Gyroscope tab in the mapping editor
- Find the "Enable Gyroscope" toggle at the top
- Click to enable
Note: Your gamepad must support gyroscope sensors (PlayStation DualShock 4/DualSense, Nintendo Switch Pro Controller).
Understanding Gyroscope Axes
X Axis: Tilt left/right
- Tilt controller left = negative values
- Tilt controller right = positive values
- Range: -1.0 to +1.0
Y Axis: Tilt forward/back
- Tilt controller forward = negative values
- Tilt controller back = positive values
- Range: -1.0 to +1.0
Gyroscope Smoothing
Gyroscope data can be noisy. Use high smoothing values (0.92-0.98) to reduce jitter.
Adjust in: System tab → Gyroscope Smoothing slider
Creative Uses
- Filter sweeps - Tilt to change cutoff frequency
- Vibrato - Subtle tilting for pitch modulation
- Panning - Tilt left/right to pan audio
- Effect mix - Tilt to blend dry/wet signals
- Expression - Natural movement for dynamics
Accelerometer
The accelerometer detects linear acceleration (shake/movement).
Enabling the Accelerometer
- Navigate to the Accelerometer tab in the mapping editor
- Find the "Enable Accelerometer" toggle at the top
- Click to enable
Note: Your gamepad must support accelerometer sensors (PlayStation DualShock 4/DualSense, Nintendo Switch Pro Controller).
Understanding Accelerometer Axes
X Axis: Shake left/right
- Shake left = negative values
- Shake right = positive values
- Range: -1.0 to +1.0
Y Axis: Shake forward/back
- Shake forward = negative values
- Shake back = positive values
- Range: -1.0 to +1.0
Accelerometer Smoothing
Like gyroscope, accelerometer needs smoothing. Use values of 0.92-0.98.
Adjust in: System tab → Accelerometer Smoothing slider
Creative Uses
- Rhythmic control - Shake in time with music
- Tremolo effects - Rapid shaking for modulation
- Dynamic control - Movement intensity affects parameters
- Percussion - Shake to trigger or modulate drums
- Chaos/randomness - Controlled randomness via movement
Battery Considerations
Motion sensors consume more battery power:
- Enable only when needed
- Disable when not using motion control
- Saves battery on wireless controllers
Multiple Mappings Per Control
Assign multiple MIDI messages to a single gamepad control for complex parameter control.
Why Use Multiple Mappings?
Control Multiple Parameters:
- One stick controls filter and resonance simultaneously
- Single trigger affects volume and reverb send
- Button triggers note and changes effect state
Layer Different Channels:
- Send to multiple MIDI channels
- Control multiple instruments with one control
- Create complex macro controls
Combine CC and Note Messages:
- Stick sends CC for filter while also triggering notes at extremes
- Button sends CC value and note simultaneously
Creating Multiple Mappings
- Create the first mapping normally
- Click "Add Mapping" again on the same control
- Configure the second mapping
- Repeat as needed
No Limit: You can add as many mappings as you want to a single control.
Example: Dual-Layer Synth Control
Goal: Left Stick X controls two synth parameters
Configuration:
- Mapping 1: CC 74 (Filter Cutoff), Channel 1
- Mapping 2: CC 71 (Resonance), Channel 1, Min: 0, Max: 64
Result: Moving the stick sweeps the filter while simultaneously increasing resonance to a maximum of 50%.
Example: Multi-Instrument Control
Goal: Right Trigger controls volume on three tracks
Configuration:
- Mapping 1: CC 7, Channel 1 (Track 1 Volume)
- Mapping 2: CC 7, Channel 2 (Track 2 Volume)
- Mapping 3: CC 7, Channel 3 (Track 3 Volume)
Result: Single trigger fades three tracks together.
Managing Multiple Mappings
Editing:
- Each mapping has its own Edit button
- Change independently
- No affect on other mappings
Deleting:
- Each mapping has its own Delete button
- Remove individual mappings without affecting others
Ordering:
- Mappings appear in the order created
- All fire simultaneously (order doesn't matter for MIDI output)
MIDI Channel Strategy
Advanced organization using MIDI channels.
Understanding MIDI Channels
MIDI supports 16 independent channels (1-16):
- Each channel can control different instruments
- Same CC number on different channels = independent control
- Organize complex setups
Channel Organization Patterns
Pattern 1: By Instrument Type
- Channel 1: Lead synthesizer
- Channel 2: Bass synthesizer
- Channel 3: Pad/ambient
- Channel 4: Drums/percussion
- Channels 5-16: Additional instruments
Pattern 2: By Control Function
- Channel 1: Note triggers (all instruments listen)
- Channel 2: Filter controls
- Channel 3: Effect sends
- Channel 4: Mixer automation
Pattern 3: By DAW Track
- Channel 1 = DAW Track 1
- Channel 2 = DAW Track 2
- Channel 3 = DAW Track 3
- Direct mapping to DAW tracks
Multi-Channel Mappings
Technique: Map similar controls to the same CC on different channels
Example:
- Left Stick Y → CC 7 (Volume), Channel 1
- Right Stick Y → CC 7 (Volume), Channel 2
- Left Trigger → CC 7 (Volume), Channel 3
- Right Trigger → CC 7 (Volume), Channel 4
Result: Independent volume control for 4 tracks using different gamepad controls.
Update Management
Gamepad MIDI includes automatic update checking.
Update Notifications
When Available:
- A banner appears at the top of the window
- Shows version number and brief description
- Non-intrusive notification
Actions:
- Download Update - Opens browser to download page
- Dismiss - Closes the notification
Update Policy
- Checks for updates on launch
- Never updates automatically without permission
- You control when to update
- Can continue using current version indefinitely
Installing Updates
Windows:
- Download new installer
- Run installer (closes current version)
- Follow installation wizard
- Restart application
macOS:
- Download new DMG
- Drag to Applications (replace old version)
- Launch new version
Linux:
- Download new package/AppImage
- Install using your package manager or replace AppImage
- Launch new version
Note: Your presets and mappings are preserved during updates.
Licensing System
Gamepad MIDI includes a licensing system for commercial use.
Viewing License Status
- Click the Pounding Systems logo at the bottom of the window
- The About window opens
- License status is displayed
Status Types:
- Licensed - Full license active
- Trial - Time-limited trial active
- Offline Licensed - License activated offline
- No License Found - No license present
Managing Your License
To Activate or Manage:
- Open the About window (click logo)
- Click "Manage License"
- Follow the activation process
License Information:
- Shows licensed user name/email
- Expiration date (if trial)
- Offline/online status
Trial Mode
If in trial mode:
- Full functionality available
- Time-limited period
- Expiration date shown in About window
- Convert to full license before expiration
Note: Licensing may not be present in all distributions. Check the About window for license status.
Performance Optimization
Tips for optimal performance with Gamepad MIDI.
Reducing MIDI Traffic
Use Appropriate Smoothing:
- Higher smoothing = fewer MIDI messages
- Reduces MIDI bandwidth
- Prevents MIDI buffer overflow
Limit Active Mappings:
- Only map controls you're using
- Unused mappings don't send data
- Keep presets focused
Motion Sensors:
- Disable when not needed
- Constant movement generates continuous MIDI
- Enable only for active use
System Performance
Multiple Applications:
- Gamepad MIDI has minimal CPU usage
- Safe to run alongside DAWs
- No performance degradation
MIDI Latency:
- Typical latency: 5-10ms
- Additional latency from smoothing: 5-20ms
- Total latency: 10-30ms (imperceptible for most uses)
Gamepad Battery Life
Wired Connection:
- Longest battery life (or USB powered)
- Most reliable connection
- No wireless interference
Wireless Connection:
- Enable motion sensors only when needed
- Disable when not using motion control
- Standard gamepad battery life otherwise
File Locations
Understanding where Gamepad MIDI stores data.
Configuration Files
Windows:
C:\Users\[YourUsername]\AppData\Roaming\PoundingSystems\Gamepad\
macOS:
~/Library/Application Support/PoundingSystems/Gamepad/
Linux:
~/.config/PoundingSystems/Gamepad/
Files Stored
midi_mappings.json- Current mappings and settingsPresets/- Directory containing preset files- Application preferences and state
Backing Up Configuration
Manual Backup:
- Close Gamepad MIDI
- Copy the entire configuration directory
- Store in a safe location
Cloud Backup:
- Use cloud sync for the Presets folder
- Automatic backup across computers
- Easy restoration if needed
Restoring Configuration
From Backup:
- Close Gamepad MIDI
- Replace configuration directory with backup
- Launch Gamepad MIDI
Fresh Start:
- Close Gamepad MIDI
- Delete or rename configuration directory
- Launch Gamepad MIDI (creates new configuration)
Command Line Usage
Gamepad MIDI can be launched from the command line.
Basic Launch
Windows:
"C:\Program Files\Gamepad MIDI\Gamepad MIDI.exe"
macOS:
open "/Applications/Gamepad MIDI.app"
Linux:
gamepad-midi # If installed via package
./Gamepad-MIDI-x86_64.AppImage # If using AppImage
Advanced Usage
Launch with Specific Preset:
- Currently not supported via command line
- Last used preset loads automatically
Logging:
- Application logs to standard output
- Useful for debugging
- Shows MIDI messages, gamepad events, etc.
Keyboard Accessibility
While Gamepad MIDI is primarily mouse-driven, some accessibility features exist.
Navigation
- Tab through UI elements
- Enter/Space to activate buttons
- Arrow keys in some controls
Focus Indicators
- Clear visual focus on interactive elements
- High contrast for visibility
Integration with DAWs
Advanced integration techniques.
MIDI Learn Workflow
Efficient Mapping:
- Create mappings in Gamepad MIDI
- Open DAW in MIDI learn mode
- Move gamepad controls to assign
- DAW automatically maps to parameters
Tip: Use descriptive CC numbers for easy identification.
Template Projects
Create DAW Templates:
- Set up MIDI routing in your DAW
- Configure instruments to receive specific channels
- Save as template
- Create matching Gamepad MIDI preset
Benefits:
- Instant setup for new projects
- Consistent workflow
- Save time on configuration
OSC Integration
Currently not supported, but MIDI can be converted to OSC using third-party tools:
- MIDI to OSC bridges
- Bidirectional conversion
- Control OSC-based applications
Security & Privacy
Data Collection
Gamepad MIDI does not collect or transmit:
- Personal information
- Usage statistics
- MIDI data
- Configuration data
Network Access
- No internet connection required for operation
- Update check requires internet (optional)
- License activation requires internet (one-time, if applicable)
File Permissions
Gamepad MIDI requires access to:
- Configuration directory (read/write)
- USB/Bluetooth devices (gamepad access)
- MIDI system (send MIDI)
Next Steps
- Use Cases & Examples - See advanced features in action
- Troubleshooting - Solve common issues
- FAQ - Quick answers to common questions