Files are already installed at:
/Users/wagner/Music/Ableton/User Library/Remote Scripts/LinnstrumentScale128/
✅ Already done! Skip to step 2.
yoiuve done AGAIN you broke the pads ad they play tnighgh
You need to set up 2 presets and 1 button on your LinnStrument.
- Press PRESET button → switch to Preset 1
- Press and hold GLOBAL SETTINGS button (lights YELLOW)
- Set these (look at printed labels on your panel):
- Column 1, Row 3 → MIDI MODE = "One Channel"
- Column 2, Row 0 → CHANNEL = 1
- Column 4, Row 3 → ROW OFFSET = 5 semitones
- Column 5, Row 2-3 → OCTAVE = 5 or 6
- Press GLOBAL SETTINGS to exit (auto-saves)
- Press PRESET button → switch to Preset 2
- Press and hold GLOBAL SETTINGS
- Set these:
- Column 1, Row 1 → MIDI MODE = "Channel Per Row" (CRITICAL!)
- Column 4, Row 3 → ROW OFFSET = 5 semitones
- Column 3, Row 0 → BEND RANGE = minimal (lowest setting)
- Press GLOBAL SETTINGS to exit (auto-saves)
- Press and hold GLOBAL SETTINGS
- Column 7, Row 3 → SELECT SW = Switch 1
- Column 8-9 → Find and press "CC65" (or "CC" then enter 65)
- Press GLOBAL SETTINGS to exit
- Press PRESET → Preset 1
- In Ableton: Create MIDI track, arm it
- Press bottom-left pad on LinnStrument
- Note the MIDI number (e.g., 36, 48, 60)
- Edit this file:
/Users/wagner/Music/Ableton/User Library/Remote Scripts/LinnstrumentScale128/config.py - Change line 8:
LINNSTRUMENT_BASE_NOTE = 36 # Change to YOUR number!
- Save and restart Ableton
- Ableton → Preferences → Link/Tempo/MIDI
- Find your LinnStrument in MIDI Ports
- Set:
- Control Surface: LinnstrumentScale128
- Input: Your LinnStrument
- Output: Your LinnStrument
- Quit and restart Ableton
- Check Ableton's Log.txt for:
"Linnstrument Multi-Mode System - Ready!"- Location:
~/Library/Preferences/Ableton/Live X.X.X/Log.txt
- Location:
- Press Switch 1 → status bar should show mode name
- Try each mode (see usage below)
Hardware: Preset 1 Use: Playing melodies with scale guidance
How to use:
- Press PRESET → Preset 1
- Press Switch 1 → "Keyboard Mode"
- Set scale in Ableton (e.g., C Major)
- Scale notes light up on grid (roots = one color, scale = another)
Features:
- Auto-detects Ableton's scale settings
- Track color integration
- Real-time updates
Hardware: Preset 2 Use: Launching clips and scenes
How to use:
- Press PRESET → Preset 2
- Press Switch 1 → "Session Mode"
- Create clips in Session View
- Press pads to launch clips
LED Colors:
- Green = Playing
- Yellow = Triggered/queued
- Red = Recording
- Clip color = Stopped
- Off = Empty slot
Grid: 16×8 clip matrix (columns = tracks, rows = scenes)
Hardware: Preset 2 Use: Finger drumming + beat programming
How to use:
- Press PRESET → Preset 2
- Press Switch 1 → "Drum Mode"
- Load Drum Rack on track
- Bottom 4 rows = drum pads (4×4 = 16 pads)
- Top row = 16-step sequencer
- Press drum pad to select it (turns white)
- Press sequencer steps to toggle them on/off (cyan = on)
- Press Play in Ableton → sequence plays in sync
Sequencer Features:
- 16 steps (16th notes)
- Per-pad sequences (16 pads × 16 steps)
- Tempo-synced playback
- Visual playhead (yellow/white)
Workflow:
- Press drum pad → triggers sound + selects for editing
- Top row shows that pad's sequence
- Toggle steps on/off
- Press different pad → see its sequence
- Build complete beat across all 16 pads
Your base note depends on LinnStrument's octave setting. Common values:
| MIDI Note | Note Name | What to set in config.py |
|---|---|---|
| 36 | C2 | LINNSTRUMENT_BASE_NOTE = 36 |
| 48 | C3 | LINNSTRUMENT_BASE_NOTE = 48 |
| 60 | C4 | LINNSTRUMENT_BASE_NOTE = 60 |
Find yours: Press bottom-left pad, check MIDI monitor, update config.py
Edit config.py to change:
- Base note
- Mode switch CC number
- Drum pad layout
- Session grid size
- Color schemes
Check:
- Using Preset 1? (One Channel mode)
- Global Settings button is YELLOW? (User Firmware Mode)
- Base note matches in config.py?
- Scale set in Ableton?
Fix:
- Test base note again (press bottom-left pad)
- Update config.py with correct number
- Restart Ableton
Check:
- Using Preset 2? (Channel Per Row mode)
- Pitch Bend disabled in Preset 2?
- Clips exist in Session View?
Fix:
- Verify Preset 2: MIDI MODE = "Channel Per Row"
- Verify Preset 2: BEND RANGE = minimal
- Create test clip to verify
Check:
- Using Preset 2?
- Drum Rack loaded on selected track?
- Track armed/monitoring?
Fix:
- Load factory Drum Rack preset (has samples)
- Make sure track is selected in Ableton
- Check track is armed
Check:
- Switch 1 configured to CC65?
- MIDI monitor shows CC65 when pressed?
- Log.txt shows "Mode switch CC received"?
Fix:
- Reconfigure Switch 1 in Global Settings
- Or try different CC number and update config.py:
MODE_SWITCH_CC = 65 # Change to your CC
Check:
- Files in correct location?
/Users/wagner/Music/Ableton/User Library/Remote Scripts/LinnstrumentScale128/ - Control Surface set in Ableton preferences?
- Ableton fully restarted after installation?
Fix:
- Check folder contains:
LinnstrumentScale.py,config.py,led_manager.py,modes/ - Re-select Control Surface in preferences
- Read error messages in Log.txt
LinnstrumentScale128/
├── LinnstrumentScale.py # Main controller
├── config.py # Settings (EDIT THIS for base note)
├── led_manager.py # LED control
├── scales.py # Scale definitions
├── linnstrument_ableton.py # MIDI interface
└── modes/
├── base_mode.py # Base class
├── keyboard_mode.py # Scale lighting
├── session_mode.py # Clip launcher
└── drum_mode.py # Drum pads + sequencer
Live Performance:
- Load song in Session View
- Use Session Mode to launch clips/scenes
- Switch to Drum Mode for live beat variations
- Switch to Keyboard Mode for solo sections
Production:
- Use Keyboard Mode to explore scales while composing
- Session Mode for arranging clips
- Drum Mode for programming beats
Practice:
- Keyboard Mode shows scale patterns
- Learn intervals and chord tones visually
- Practice in different keys
Modify layouts in config.py:
# Drum mode: Make 2×8 pad layout instead of 4×4
DRUM_PAD_ROWS = 2
DRUM_PAD_COLUMNS = 8
# Session mode: Change visible area
SESSION_ROWS = 8
SESSION_COLUMNS = 16Add more modes:
- Create new file in
modes/directory - Extend
BaseModeclass - Register in
LinnstrumentScale.py
| Button | Function |
|---|---|
| PRESET | Cycle hardware presets (1→2→...) |
| GLOBAL SETTINGS | Enter/exit settings menu |
| Switch 1 | Cycle software modes (Keyboard→Session→Drum→...) |
| Preset | MIDI Mode | Used For |
|---|---|---|
| 1 | One Channel | Keyboard Mode |
| 2 | Channel Per Row | Session + Drum Modes |
Keyboard Mode:
PRESET → 1
Switch 1 → "Keyboard Mode"
Set scale in Ableton
Play!
Session Mode:
PRESET → 2
Switch 1 → "Session Mode"
Press pads → launch clips
Drum Mode:
PRESET → 2
Switch 1 → "Drum Mode"
Bottom rows → drum pads
Top row → sequencer
- README.md (this file) - Complete guide
- SETUP_CHECKLIST.md - Step-by-step setup with checkboxes
- SIMPLE_PRESET_SETUP.md - Detailed walkthrough
- PROJECT_SUMMARY.md - Technical details
- MULTIMODE_README.md - Extended user guide
Additional docs in _archive_docs/ (reference only)
Check Ableton's Log:
~/Library/Preferences/Ableton/Live X.X.X/Log.txt
Look for:
- "Linnstrument Multi-Mode System - Ready!" = Success
- ERROR messages = Something wrong (read the error)
Common fixes:
- Wrong base note → Update config.py
- Wrong preset → Switch to correct preset
- Mode doesn't work → Check Log.txt for errors
Version: 1.0 Compatible with:
- LinnStrument 128 (16 columns)
- LinnStrument 200 (25 columns) - edit config.py
- Ableton Live 10+
- macOS (tested) / Windows (should work)
Created: November 2025 Status: Production-ready
You now have a professional multi-mode controller for your LinnStrument.
Press Switch 1 and explore the three modes!
Questions? Check SETUP_CHECKLIST.md for detailed step-by-step setup.
Enjoy! 🎹✨