Subsystem Search

This page is read from MIDI Instrument Definitions, a Python library used in the author's other projects, in which every number is traced to a document its maker published. Its source is on GitHub.

Erica Synths PĒRKONS HD-01 MIDI implementation

The MIDI implementation of the Erica Synths PĒRKONS HD-01: what it answers to, and the 55 controls it offers, on firmware 1.2.

At a glance

Firmware
This page describes firmware 1.2.
MIDI channel
Not recorded.
Modes
SINGLE MIDI CHANNEL.
MULTI MIDI CHANNEL: the controls on the base MIDI channel do not answer in it.
Parts
Voice, 4 of them: each on a MIDI channel of its own, taking notes and controls, with 1 voice each, in MULTI MIDI CHANNEL only.
Voices
4.
Notes
Each note plays a drum of its own. Which note plays which is not recorded.
Note range
Not recorded.
Velocity
Received.
Aftertouch
Not recorded.
Pitch bend
Not recorded.
Program change
Not recorded.
MIDI clock
Sent and received.
Start and stop
Not recorded.
Control change
Assigned by the player, apart from the 55 controls below.
NRPN
None.
System exclusive
Not recorded.

Controls

In the order the definition gives them, by part and group. Under each control is the name a program calls it by, once pymidiinstrumentdefs.load("erica_synths/perkons_hd_01") has loaded them.

On the base MIDI channel

These answer in SINGLE MIDI CHANNEL, and not in MULTI MIDI CHANNEL.

Voice 1

Control CC Values
Voice 1 Tune
voice_1_tune
70 0-127
The factory's number, which the player can change
Voice 1 Decay
voice_1_decay
71 0-127
The factory's number, which the player can change
Voice 1 PARAM1
voice_1_param_1
72 0-127
The factory's number, which the player can change
Voice 1 PARAM2
voice_1_param_2
73 0-127
The factory's number, which the player can change
Voice 1 Cutoff
voice_1_cutoff
74 0-127
The factory's number, which the player can change
Voice 1 Drive
voice_1_drive
75 0-127
The factory's number, which the player can change
Voice 1 FX Send
voice_1_fx_send
76 0-127
The factory's number, which the player can change
Voice 1 Level
voice_1_level
77 0-127
The factory's number, which the player can change
Voice 1 Algo Switch
voice_1_algo_switch
78 0-127
The factory's number, which the player can change
Voice 1 Mode Switch
voice_1_mode_switch
79 0-127
The factory's number, which the player can change
Voice 1 Filter Switch
voice_1_filter_switch
80 0-127
The factory's number, which the player can change

Voice 2

Control CC Values
Voice 2 Tune
voice_2_tune
81 0-127
The factory's number, which the player can change
Voice 2 Decay
voice_2_decay
82 0-127
The factory's number, which the player can change
Voice 2 PARAM1
voice_2_param_1
83 0-127
The factory's number, which the player can change
Voice 2 PARAM2
voice_2_param_2
84 0-127
The factory's number, which the player can change
Voice 2 Cutoff
voice_2_cutoff
85 0-127
The factory's number, which the player can change
Voice 2 Drive
voice_2_drive
86 0-127
The factory's number, which the player can change
Voice 2 FX Send
voice_2_fx_send
87 0-127
The factory's number, which the player can change
Voice 2 Level
voice_2_level
88 0-127
The factory's number, which the player can change
Voice 2 Algo Switch
voice_2_algo_switch
89 0-127
The factory's number, which the player can change
Voice 2 Mode Switch
voice_2_mode_switch
90 0-127
The factory's number, which the player can change
Voice 2 Filter Switch
voice_2_filter_switch
91 0-127
The factory's number, which the player can change

Voice 3

Control CC Values
Voice 3 Tune
voice_3_tune
92 0-127
The factory's number, which the player can change
Voice 3 Decay
voice_3_decay
93 0-127
The factory's number, which the player can change
Voice 3 PARAM1
voice_3_param_1
94 0-127
The factory's number, which the player can change
Voice 3 PARAM2
voice_3_param_2
95 0-127
The factory's number, which the player can change
Voice 3 Cutoff
voice_3_cutoff
96 0-127
The factory's number, which the player can change
Voice 3 Drive
voice_3_drive
97 0-127
The factory's number, which the player can change
Voice 3 FX Send
voice_3_fx_send
98 0-127
The factory's number, which the player can change
Voice 3 Level
voice_3_level
99 0-127
The factory's number, which the player can change
Voice 3 Algo Switch
voice_3_algo_switch
100 0-127
The factory's number, which the player can change
Voice 3 Mode Switch
voice_3_mode_switch
101 0-127
The factory's number, which the player can change
Voice 3 Filter Switch
voice_3_filter_switch
102 0-127
The factory's number, which the player can change

Voice 4

Control CC Values
Voice 4 Tune
voice_4_tune
103 0-127
The factory's number, which the player can change
Voice 4 Decay
voice_4_decay
104 0-127
The factory's number, which the player can change
Voice 4 PARAM1
voice_4_param_1
105 0-127
The factory's number, which the player can change
Voice 4 PARAM2
voice_4_param_2
106 0-127
The factory's number, which the player can change
Voice 4 Cutoff
voice_4_cutoff
107 0-127
The factory's number, which the player can change
Voice 4 Drive
voice_4_drive
108 0-127
The factory's number, which the player can change
Voice 4 FX Send
voice_4_fx_send
109 0-127
The factory's number, which the player can change
Voice 4 Level
voice_4_level
110 0-127
The factory's number, which the player can change
Voice 4 Algo Switch
voice_4_algo_switch
111 0-127
The factory's number, which the player can change
Voice 4 Mode Switch
voice_4_mode_switch
112 0-127
The factory's number, which the player can change
Voice 4 Filter Switch
voice_4_filter_switch
113 0-127
The factory's number, which the player can change

Voice

In MULTI MIDI CHANNEL only.

Voice

Control CC Values
Tune
multi_voice_tune
70 0-127
The factory's number, which the player can change
Decay
multi_voice_decay
71 0-127
The factory's number, which the player can change
PARAM1
multi_voice_param_1
72 0-127
The factory's number, which the player can change
PARAM2
multi_voice_param_2
73 0-127
The factory's number, which the player can change
Cutoff
multi_voice_cutoff
74 0-127
The factory's number, which the player can change
Drive
multi_voice_drive
75 0-127
The factory's number, which the player can change
FX Send
multi_voice_fx_send
76 0-127
The factory's number, which the player can change
Level
multi_voice_level
77 0-127
The factory's number, which the player can change
Algo Switch
multi_voice_algo_switch
78 0-127
The factory's number, which the player can change
Mode Switch
multi_voice_mode_switch
79 0-127
The factory's number, which the player can change
Filter Switch
multi_voice_filter_switch
80 0-127
The factory's number, which the player can change

Where these facts come from

Source documents

How they were read

PĒRKONS HD-01 User Manual, 37 pages, December 2024, for firmware 1.2. Every controller number below comes from pp. 35 and 36, the two pages headed MIDI IMPLEMENTATION, and there is no implementation chart, no separate MIDI document and nothing on midi.guide. Around them: the connectors at p. 6, the voice controls at p. 7, the sound engines at pp. 8-11, the configuration page at pp. 31-33, where the two MIDI modes and their channels are set, and the firmware 1.1 changelog at p. 34, which is all the manual has on notes in the second mode.

THE MANUAL IS REACHED THROUGH A NEWS ITEM AND THERE IS NO OTHER ROUTE TO IT. The maker's product and support pages assemble their download lists in the browser, so an HTTP client that fetches either gets no link to anything. The manual is the second of two links in the announcement of firmware 1.2, worded "DOWNLOAD UPDATED MANUAL HERE" (firmware_1_2). That announcement is cited here as a document in its own right, with the two before it, because between them they are the only changelogs this instrument has.

FORTY-FOUR CONTROLLER NUMBERS, 70 TO 113, WITH NOTHING UNUSED IN BETWEEN. Eleven controls for each of four voices: "All 8 potentiometers and 3 switches of each voice on the PĒRKONS can be controlled via MIDI CC messages" (p. 35). Voice 1 has 70 to 80, voice 2 81 to 91, voice 3 92 to 102 and voice 4 103 to 113, in the order the page lists the controls down its left-hand side. That is SINGLE MIDI CHANNEL mode's map. MULTI MIDI CHANNEL mode's is voice 1's eleven again, for each voice on a channel of its own, and is carried below on a part.

THE PICTURED FILE DOES NOT AGREE WITH THE TABLE, and nothing in print settles it. Page 36 carries two pictures that the page's text does not hold. One is the card's SYSTEM folder, with three files in it: device.json, multi-midi-cc.json and single-midi-cc.json. The other is the single file open in an editor, and its numbers are: voice1 tune 70, decay 74, param1 71, param2 75, cutoff 72, drive 76, fx-send 73, level 77, algo 78, mode 79, filter 80; voice2 tune 81, decay 85, param1 82, param2 86, cutoff 83, drive 87, fx-send 84, level 88, algo 89, mode 90, filter 91; and voice3 tune 92, where the picture ends. Against the table that is the same number for tune, level and the three switches, and a different one for decay, PARAM1, PARAM2, cutoff, drive and FX send: twelve of the twenty-three numbers pictured. The pictured numbers run in the panel's order, down the left column of knobs and then the right (p. 7), where the table's run across its rows. The table is carried as the stated implementation - "In SINGLE MIDI CHANNEL mode, the MIDI implementation is as shown in the table below" (p. 35) - and not as the likelier of the two. The page shows the picture as the file to open, "Then open the single-midi-cc.json file in a text editor" (p. 36), and never calls it an altered one, and the two can both be true of one instrument only if somebody had altered it. A player whose decay answers on 74 and not on 71 has met the pictured file.

THE TABLE IS A DRAWING AND NOT A TABLE. This manual was set in Adobe Illustrator and its two kinds of table are grids of free-standing words with no ruling and no cells, so which number belongs under which heading is in the coordinates and nowhere else. Reading by the order the words come out of the file is wrong in the way that looks right: done that way, the fourth voice's three algorithms come back as NOISE HAT, NOISE/TONE, ACOUSTIC HATS, which reads as algorithms 1, 2 and 3 - and the maker says elsewhere that algorithm 3 is the one with the samples in it, "VOICE 4, ALGORITHM 3 contains three hi-hat samples that can be selected via the MODE switch" (p. 33), which is ACOUSTIC HATS. The columns settle it; the text's order does not. Both kinds of page also carry a drawing of the voice panel at the right-hand edge, whose words would otherwise land in the table.

WHAT IS ABSENT, SEARCHED FOR ACROSS ALL THIRTY-SEVEN PAGES. The words NRPN, RPN and Registered appear nowhere, which is what nrpn: none records. Neither do System Exclusive, SysEx, Program Change, Pitch Bend or Aftertouch - but those are left unrecorded rather than written as checked absences, because this is a manual and not an implementation chart, and one that does not mention a thing has not been asked about it. The distinction matters most for program change: the instrument holds 64 banks of 64 kits and 64 patterns (p. 28) and the manual describes no way to reach any of them over MIDI, so no preset count is recorded here at all.

NO MIDI CHANNEL NUMBER OR RANGE IS PRINTED. The channel is chosen on the instrument - "In the SINGLE CHANNEL MIDI CONFIG menu, you can select a MIDI channel for controlling the PĒRKONS" (p. 32) - and the manual never says how many there are to choose from. The sub-menu is a row of sixteen step buttons and MIDI has sixteen channels, which is a good guess and is not a fact the maker printed, so channels is left unrecorded. The one channel number in print is for MULTI MIDI CHANNEL mode, "Voice 1 = MIDI CH1, Voice 2 = MIDI CH2 etc." (p. 34), stated flatly and read here as where the voices start, since p. 32 lets the player assign them.

WHAT THE CONTROLS TRAVEL. Both ways. The connector caption has MIDI IN taking them - "Full-size DIN5 MIDI In receives trigger note messages, MIDI clock as well as CC messages for all voice parameters" (p. 6) - and the configuration page has them going out, "Step button 7 turns on the transmission of parameter MIDI CC messages via the MIDI OUT port" (p. 32). The same caption at p. 6 says only that "The MIDI OUT port outputs trigger and MIDI clock messages" (p. 6), which is the shorter of the two accounts rather than a contradiction of it. No page prints the numbers or channels they go out on, in either mode; that they are the ones they come in on is read.

THE ONE FIRMWARE NOTE THAT TOUCHES THESE NUMBERS is "Fixed VCF mode CC bug" (firmware_1_2), which is the maker saying that a voice's FILTER SWITCH did not answer right before December 2024. The 1.1 note made a note a pitch, "This update adds chromatic tuning of the voices, adds one new algorithm and more!" (firmware_1_1), in the mode its changelog names: "Set MIDI mode to multi-channel and you can program notes into the sequencer either by playing them live and recording or by pressing the desired step button and then sending in the MIDI note" (p. 34). The 1.0 note mentions MIDI only for its clock.

NOT RECORDED, for MULTI MIDI CHANNEL mode: what a note does when it is simply played and not recorded, the range of notes a voice takes, and which note sounds a voice at its TUNE knob's pitch. The changelog's sentence is about programming the sequencer, and p. 35's about the controllers the voices answer to.

THE MANUAL REPEATS A PARAGRAPH AND LOSES ONE, which is worth knowing before trusting any of its prose. "Step button 9 of the second track" (p. 32) and "Step button 12 of the second track" (p. 33) are both described as inverse odds, word for word the same paragraph twice over, while the manual's own diagram has TRACK ROTATE at step 12 (p. 31). The announcement of firmware 1.2 is what the missing paragraph would have said. Nothing below rests on that page; it is recorded because a document that repeats itself may be missing something.

AND ITS OWN CROSS-REFERENCES ARE A PAGE OUT. One sends a reader to "page 30 of the manual" (p. 17) and the next to "page 30 of this manual" (p. 18), for settings that begin on p. 31. The printed page numbers themselves match the sheets exactly, and every locator here was taken from the page rather than from a reference to it.