Control voltage for ORCΛ
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-17 18:44:28 +10:00
cmd/orcv merge origin/main: keep thin orcv, delegate to cv-engine 2026-07-23 22:28:38 +01:00
.gitignore orcv 2026-06-01 20:10:21 +10:00
doc.go orcv 2026-06-01 20:10:21 +10:00
go.mod fix: move base 36 limit to orcv 2026-09-15 12:44:57 +10:00
go.sum fix: move base 36 limit to orcv 2026-09-15 12:44:57 +10:00
orcv.jpg orcv 2026-06-01 20:10:21 +10:00
osc.go wip 2026-06-03 19:57:30 +10:00
parse.go fix: move base 36 limit to orcv 2026-09-15 12:44:57 +10:00
parse_test.go fix: move base 36 limit to orcv 2026-09-15 12:44:57 +10:00
README.md Update README.md 2026-09-17 18:44:28 +10:00
router.go fix: move base 36 limit to orcv 2026-09-15 12:44:57 +10:00

ORCV

CV for ORCA.

Base36 in. CV out. Holds pitch. Fires gate. Is microtonal? Yes.

CV-Engine underneath.

AGPL-3.0.

orcv


Run

go run ./cmd/orcv

Listens on 127.0.0.1:49162.

Mappings in cmd/orcv/main.go.


Instruments

cmd instrument channel
=g gate channel arg
=p pitch channel arg
=k kick 8
=t tom 9
=m tom 2 10
=s snare 11
=c clap 12
=x closed 13
=o open 14

Channels zero-based. 8 is the first expander output.


Pitch + gate

Addressed by output channel:

=p args

arg meaning
0 pitch output channel
1 note, base36; C = 12
2 octave, 0-9
3 slide, 10 ms steps
4 nudge, 2 ms steps, positive = later

=g args

arg meaning
0 gate output channel
1 value; 0 = off, non-zero = on
2 duration; 0/omitted/Z = hold, 1-Y = 10 ms steps
3 nudge, 2 ms steps, positive = later

Nudges are relative to message arrival. They do not know about your grid. They are just late on purpose.


EDO

=e: Global for pitch.

C = 12 divisions. 0 resets to 12. 1-Z = 1-35.


Detune

=d: Out-of-tune guitar emulator. Notes assigned to virtual strings. Each string detuned by fixed cents. /d controls scale.

0 = perfect. Z = maximum.

note cents
0-4 -16
5-8 +9
9-13 -5
14-18 +18
19-22 -11
23+ +6

Drums

=k: Each drum fires a 5 ms pulse on its fixed channel.