Hey Folks, I've made some good progress on writing this extension and now it's time to release it into the wild as Alpha 0.1.
Release: alpha 0.1, May 3, 2020
Supported OS: Windows X64
Supported Reaper Version: tested on v6.08, but probably works on most v5+ installations
Supported Hardware: This plugin drives the 160x43 pixel monochrome LCD display on some Logitech G series devices. It was tested/and developed with the G13 gamepad in mind, but should also work on the G510 and G15 series keyboards. It also includes actions to drive the LCD/LED key backlights.
Description: I developed this plugin mainly because I was tired of seeing a blank screen on my G13 gamepad while using Reaper. While the title of the plugin says CSurf, it does not currently have any control surface capabilities, and instead is purely a display device with a few bundled Reaper actions that you can assign to keyboard commands and then can re-map to the G keys using Logitech’s driver.
The zip package is available in the Stash here:
https://stash.reaper.fm/39054/ReaperG13extension.zip
A manual, and printable meter scale are included in the Zip archive.
The Display
The display is divided into three sections:
1. Main Page
2. Aux Page
3. Meter Bar
The Main page, and Aux page each display 3 lines of text, and the meter bar shows a stereo meter that roughly conforms to the IEC 6028-18 scale (
https://en.wikipedia.org/wiki/Peak_p...18_Digital_PPM)
The line dividing the Main and Aux page also denotes the -15 dBFS position on the meter.
Main Page(s): The currently displayed main page can be selected by pressing either of the two leftmost buttons under the Logitech LCD. These will navigate you through the available page options. Currently the following modes have been developed:
1. Master Track -> Displays the master track level meter
2. Last Touched Track -> Displays the track name, Volume, Pan, and Mute/Solo, Arm, Monitor status depending on what fits on the display. This follows the last touched track focus from the Reaper GUI.
3. Last Touched Track-Takes -> Similar to (2) above, but if there are multiple takes in the track it will display the active take, and total # of takes in the bottom line of the display, replacing the Mute/Solo/Arm/Mon status line. If there’s no takes (or no media) it will default to showing the same information as in (2).
These pages can also be directly accessed by Reaper actions. Personally, I find the last touched track takes view to be the most useful, and I have coded it as the default main page option on launch.
Aux Page(s): The smaller aux page on the right side of the display is currently set up to display transport and time information on two available pages:
1. BPM/Measures/Beats -> Shows the current BPM, Measures.Beats.Frames, and transport mode (Play, stop, rec, etc)
2. Markers -> The middle line shows the previous marker # and name (up to 7 characters). This is the marker that has most recently been passed. The bottom line shows the next marker # and name. These are handy for knowing where the Prev/Next marker actions will bring you to in your project.
The page mode can be toggled by the two rightmost buttons under the Logitech LCD, or by actions.
LED Colours:
When you switch tracks to a track that is Mutes/Solo’d/Armed you should notice the backlight of the LCD briefly flash a different colour. The preferences for what colours are flashed can be adjusted by Reaper actions as described below.
Actions:
Several custom actions are registered along with the plugin. All custom actions associated with this plugin are preceded by G13, so you can easily filter the list.
These actions directly control the Main page:
• G13-LCD Master Track Page
• G13-LCD Last Touched Track Page
• G13-LCD Takes Page
These actions directly control the Aux page:
• G13-LCD Beats BPM Page
• G13-LCD Markers Page
There is also an action to adjust the LED backlight colours that are flashed based on track status:
• G13-LED Track LED Preferences
This action will bring up a dialog box window allowing you to make changes to the colour scheme for Solo’d, Muted, and Armed tracks. To define a colour you need to specify its Red, Green, and Blue percentage value. Using an online colour picker is helpful here…but note that many online tools report the colour values in a (0-255) range instead of %. Just divide by 2.55 and you’re set.
Once you hit OK, your colour preferences are saved in a text file in your Reaper resources directory, and will be restored on the next launch of Reaper.
Finally, there are a couple of actions that allow you to use the LED backlighting as a form of visual metronome. Personally, I found this pretty distracting, but I didn’t really play around with the colour options. Perhaps with the right settings here, a subtle change in the backlighting might be useful. The available LED metronome actions are:
• G13-LED Metronome Toggle -> Turn the visual metronome on/off
• G13-LED Metronome LED Preferences -> Adjust the colour displayed for a new Measure (i.e. Beat 1), and a new Beat (i.e. all the other beats in a bar).
The colour options are adjusted in the same manner as the Track status LED’s described above. The metronome toggle action is saved in Reaper and your preference should be saved. It’s a global setting, though, and isn’t project specific.
I haven’t done any anticipative processing to account for the latency in the G13 LED, so the metronome will inevitably feel ‘late’.
Installation:
Extract the archive, and copy the reaper_g13cSurf_x64.dll to wherever you normally place Reaper specific plugins. Optionally, you can print the manual page with the meter scale and tape that under your LCD.
The zip package is available in the Stash here:
https://stash.reaper.fm/39054/ReaperG13extension.zip
Feedback:
Please report problems, suggestions back to this thread. I don't think this plugin requires any additional dll's to run...but I haven't yet tested it on a machine other than my development computer.
Hope you like it...thanks!