This guide will introduce you to the fundamentals of ERUs workflow. If any component names are unclear skip ahead to the Viewports section.
Generic interactive elements in ERU generally belong to one of three categories, all can be easily identified by their white outline when the cursor hovers over them, but they are changed in slightly different ways:
From top to bottom, left to right, the viewports and their subcomponents are:
ERU operates in two different modes; edit and select - toggle between them with the Tab key.
In edit mode, (left-)clicking on empty spaces in the Note, Gate and Control editors creates new events, and clicking on existing events removes them. The exception being in the Control view, where clicking or dragging over existing events updates their values instead of deleting them.
In select mode the mouse is used to rectangle-select groups of events or sequences, that can then either be deleted, transposed, time shifted, resized, or moved between channels (see the key binding reference). In the Note editor, you can also hold down the Shift key while selecting to grab notes from all channels, not just the focused one, which can then be modified with all the same operations.
When one or several sequences are selected, a small floating overlay appears with the title Sequences (# selected). If you cannot see it, it is probably outside the visible frame, and you can use the menu action View → Reset overlays to bring it back.
This widget contains the properties of the sequence; including Name, Grid division, Start and End in the project, and the internal offsets that control what parts of the sequence are used and how it is looped: InSta (Internal start), InEnd (Internal end) and InLen (Internal length). When the Internal length exceeds the Internal end, it will continue from bar 0 for the number of bars that make the difference, so you effectively have two sections of the sequence that are being looped. This is mostly a technicality, and using Shift while (left-)clicking and dragging on a sequence is normally sufficient to control inner looping, but it can provide insight if a sequence is not looping as expected. Clicking on any of the fields opens up a text box where a new value can be set. If multiple sequences are selected, with differing values, the displayed values will be taken from the earliest one. An interesting aspect about changing multiple sequences with the Overlay compared to resizing them with the mouse is that it the change is absolute rather than relative, so any differences will be erased.
The sequence grid field controls the vertical grid-lines in all event editors. The default value is based on the global time signature; with the standard 4/4 time signature, sequences are created with a grid value of 4.4. This can be read as each bar being divided into four quarter notes, that in turn are subdivided by four into 16th notes of a darker grey. A grid value of 16 would generate the same number of divisions, but they would all be rendered in the same shade of grey, which would be difficult to use. In reverse, a value of 4.2.2 would also produce 16 divisions, but they would use three color depth levels for quarter notes, eights and sixteenths, which would be a bit overkill.
To get the most out of ERU, it is important to understand that the grid parameter only takes its default value from the global time signature, but it is not restricted by it in any way. Meaning; you can have a project at 4/4, with one sequence grid using 4.4 and another sequence on different channel at 5.4. Both have bars of the same length, but one divides them into four beats and the other into five; this is known as a polyrhythm.
Polyrhythms by combining two different instruments is one thing, but what if we wanted to play a polyrhythm with a single instrument? One way would be to multiply the two time signatures, in this case 4 * 5 = 20 divisions, but that generates a lot of extra division lines that we do not want, and worse; it provides no hints on which ones they are. Using the grid notation format, you can simply input 5:4, and the program does the rest; you now have a non-linear, polyrhythmic grid. Naturally, it can be further expanded using subdivisions (5.2:4.3 gives us 10 over 12, with accented lines on on the 5ths and 4ths). Playing around with the two lets you create immensely complex and fun rhythmic parts.
To integrate ERU with your modular system you need compatible hardware; that means some type of DC-coupled digital-to-analog converters, ideally something designed for the purpose. Assuming you have the necessary hardware, you also need to make sure that the volume on any channel going to the modular is set correctly, as failure to do so can lead to damage, or at the very least poor tracking. Basically; you want the channel volume set so that the min/max values translate to 10V peak-to-peak (-5V to +5V). In testing, using RME and Expert Sleepers interfaces, -6 dB has been optimal, but you may need to fine tune it to find the right level for your setup. If you do not have the gear to get an exact reading, you can do it by ear; sending a 1V/Oct sequence to an oscillator makes a good indicator, especially if you compare it to the same sequence played by one of the internal oscillators. If it sounds right, you have found the right level. Bear in mind that individual modules can also be built to accept different ranges, it is always best to check the specifications.
To make handling output levels easier, ERU lets you set a hard limiter on each physical output port under the Limiters tab in Options → Preferences. Not only will this limiter be applied as a final stage in mixing, ensuring that the signal does not get too hot, it also automatically applies the same offset to the Channel volume when you assign a Channel to the output, ensuring that the signal scales correctly. Since this is configuration, you only have to do it once and can forget about it after.
The Timeline does not differentiate between edit mode and select mode, as sequences are created automatically as needed.
(*) To show any of the other editors, simply click on a sequence or channel of the type in question.
These commands generally affect the selected events, or all events in the focused channel and loop if no events are selected.
XSRF: This website uses XSRF-Tokens to help prevent Cross-Site Forgery Attacks.