Button Indices
Index Map
Section titled “Index Map”Button indexing follows a 10x10 grid pattern. Corner indices (dimmed) are virtual - no physical button exists.
90
91
92
93
94
95
96
97
98
99
80
81
82
83
84
85
86
87
88
89
70
71
72
73
74
75
76
77
78
79
60
61
62
63
64
65
66
67
68
69
50
51
52
53
54
55
56
57
58
59
40
41
42
43
44
45
46
47
48
49
30
31
32
33
34
35
36
37
38
39
20
21
22
23
24
25
26
27
28
29
10
11
12
13
14
15
16
17
18
19
0
1
2
3
4
5
6
7
8
9
Button Regions
Section titled “Button Regions”Main Pad Grid (8x8)
Section titled “Main Pad Grid (8x8)”Indices: 11-18, 21-28, 31-38, 41-48, 51-58, 61-68, 71-78, 81-88
// Row from indexint row = index / 10; // 1-8
// Column from indexint col = index % 10; // 1-8Top Control Row
Section titled “Top Control Row”Indices: 91-98
| Index | Button | PolyBoard Function |
|---|---|---|
| 91 | Arrow Up | Octave Up |
| 92 | Arrow Down | Octave Down |
| 93 | Arrow Left | Transpose Down |
| 94 | Arrow Right | Transpose Up |
| 95 | Session | Page 1 |
| 96 | Note | Page 2 |
| 97 | Device | Page 3 |
| 98 | User | Page 4 |
Bottom Control Row
Section titled “Bottom Control Row”Indices: 1-8
| Index | Button |
|---|---|
| 1 | Record Arm |
| 2 | Track Select |
| 3 | Mute |
| 4 | Solo |
| 5 | Volume |
| 6 | Pan |
| 7 | Sends |
| 8 | Stop Clip |
Left Control Column
Section titled “Left Control Column”Indices: 80, 70, 60, 50, 40, 30, 20, 10 (top to bottom)
| Index | Button | PolyBoard Function |
|---|---|---|
| 80 | Shift | Modifier key |
| 70 | Click | (unused) |
| 60 | Undo | (unused) |
| 50 | Delete | (unused) |
| 40 | Quantise | Scale Lock toggle (global) |
| 30 | Duplicate | (unused) |
| 20 | Double | Scale selection |
| 10 | Circle (Record) | Root selection |
Right Control Column
Section titled “Right Control Column”Indices: 89, 79, 69, 59, 49, 39, 29, 19 (top to bottom)
Scene launch buttons (arrow shape). Used as octave indicator in play mode:
| Index | Position | Octave Indication |
|---|---|---|
| 89 | Top | Turns off first when octave < 5 |
| 79 | ||
| 69 | ||
| 59 | ||
| 49 | ||
| 39 | ||
| 29 | ||
| 19 | Bottom | Turns off first when octave > 5 |
- All lit: Default octave (5)
- Off from bottom: Higher octave (+1 to +5)
- Off from top: Lower octave (-1 to -5)
Surface Type Detection
Section titled “Surface Type Detection”enum SurfaceKeyType index_to_surface_key_type(unsigned char index) { if (index >= 90) return SURFACE_CTRL; if (index <= 10) return SURFACE_CTRL; if (index % 10 == 9) return SURFACE_CTRL; if (index % 10 == 0) return SURFACE_CTRL; return SURFACE_PAD;}LED Colors
Section titled “LED Colors”Use hal_plot_led(type, index, r, g, b) where RGB values are 0-63.
| Type | Value | Usage |
|---|---|---|
TYPEPAD | 0 | Main grid and controls |
TYPESETUP | 1 | Setup button only |