I'm using the trial version (4.2.1) to verify that a new-to-me Rodgers 840 "Windsor" with optional MIDI will work with it's ancient implementation. I believe it uses Rodger's MIDI Phase II. I'm able to auto-learn all three manuals and expression pedals. The stop and piston implementation uses SYSEX. When I try to learn them, "Done" remains gray and un-selectable.

I'm having some difficulty implementing these manually. I understand I should select Rodgers pre-Infinity bitfield. I'm not going to use the Hauptwerk pistons. Here's a record of three stops as examples (all toggle):

First is Swell Bourdon Doux 16', second is Pedal Contra Principal 32', third is Choir/Positiv Erzaehler 8', and fourth is Great Principal 8'. I used MIDI-OX to capture this data. It can give me the results in decimal rather than hex if needed.

I've not found a clear walkthrough of how to use the Rodgers implementation. Pardon any of my ignorance. Your help is appreciated.

Thanks very much for the interest in Hauptwerk and welcome to the forum.

That isn't a MIDI implementation that we've previously heard of, or that currently Hauptwerk supports, I'm afraid. There's no way that you would be able to get Hauptwerk to respond directly to that implementation.

(Hauptwerk does have native support for all of the Rodgers' implementations that we were aware of, which I believe are probably all of those that Rodgers have used since MIDI became standard in their models, but presumably they did some different things in their early models before that time. For those digital organ MIDI implementations that Hauptwerk does support you would just need to make sure that the appropriate organ make is selected as the 'MIDI hardware/console type' on Hauptwerk's 'General settings | General preferences' screen, then use standard right-auto-detection for the desired virtual controls. The 'Playing Hauptwerk live from a digital organ' section in the main Hauptwerk user guide -- pages 179-180 in the current v4.2.1 version -- also has some important general background information.)

The only thing I could suggest to get it working would be to use some intermediate MIDI translation hardware/software (e.g. perhaps MIDI-OX or Bome's MIDI Translator might be able to do it) between the organ and Hauptwerk, so as to translate the organ's messages into some simple conventional MIDI implementation. E.g. MIDI program changes could be ideal, if the current sys-ex messages are fixed and toggle.

I hope that helps, at least to some extent.

Best regards,Martin.

[Please use email or the Contact page if you need to contact us privately, rather than private forum messages.]

Some of the earlier Rodgers with MIDI had two MIDI out ports on the console. Only one of these ports would pass the stop and piston information, as I recall. The other (which was the "regular:" MIDI out) was pretty much meant to transfer note data only. If you have two ports, try the other to see if it solves your problem. Let me know because I have some Rodgers midi documentation that did not ship with the organs (in the past I developed some of my own software to do this sort of thing - before HW added the capability.)

From a Rodgers technical document, Noel Jones @ FrogMusic states this was Rodgers Phase I MIDI implementation. From the technical document:

RODGERS INSTRUMENTS LLCThe differences between MIDI I, MIDI II, and MIDI IIILTG 605, 625, 640, 645, 655, 705, 740, 760, 830, 840, 890 and 925 only• Allows a person to control one sound on each manual and one sound in the Pedal on two- manual orga ns.• Allows a person to control two sounds on each manual and two sounds in the Pedal on three-manual organs.• Allows for the selection of sounds on a few instruments (625, 645 and 655, mainly). This means that people can change sounds in their sound modules from the organ keyboard. However, users cannot store these sound selections into pistons.• Allows the Great manual to be controlled by a MIDI keyboard or sequencer on MIDI channel 1, however, no stop control is possible, so record and playback capabilities are really not very strong.

That said, each manual and pedals operate on separate channels. Stops do issue a SYSEX but that is not the bitfield of Phase II/III Rodgers implementation (see above.)

To your question, the instrument does have IN/THRU/OUT but no SEQUENCER IN/OUT of some models.

I have only just seen this thread so am coming a little late to this discussion.

You can use OrganAssist to sit between your console and Hauptwerk and it will do the conversion for you. I have just tested it using the MIDI messages in your example and the "Generic Organ" logic works fine using the Toggle field.

After you have setup a configuration for your console, you can load a second one for the Hauptwerk organ you are using which will either work out of the box for existing instruments or you can create a specific second configuration using MIDI messages that are compatible with Hauptwerk.

Edit: OrganAssist usually uses only one organ but via Tools, Load Second Organ you can route incoming MIDI to the first organ, this passes the stop changes directly to the second and then outputs MIDI from the second organ.

Thanks for the additional details. We also have a potential enhancement request logged for extending Hauptwerk's 'generic sys-ex' event type to support sys-ex messages of the format that your Rodgers appears to be using, which hopefully would make it natively compatible in the longer-term. I've added your notes on the implementation to that enhancement request.

Best regards,Martin.

[Please use email or the Contact page if you need to contact us privately, rather than private forum messages.]

A quick update, after putting this project to pasture for a while... the analog outputs have completely failed on this 840, so I have renewed need to get the MIDI implementation working. David of OrganAssist has been working with me to implement the tab stops.

According a Rodgers MIDI document, this indeed is an early implementation. Rather than a bitfield SysEx, the unit uses a brief string with a logic we're trying to work out. From the Rodgers document:

STOP CONTROLThe status of individual stops is generated on MIDI II, PDP and CK organs. This stopinformation is transmitted through SYSEX messages for stops, couplers and other organcontrols which are activated or retired.

On MIDI II organs, individual stop messages are sent any time a stop or coupler is activatedor retired. On PDITM and CK organs, the entire stop and coupler status of the organ is sentanytime a stop or coupler is activated or retired.

It is important that the sequencer used for recording transmits a Clock START (or GO) messageto the organ when it begins recording or a CONTINUE message if it begins in the middle of a

Unfortunately, while the SysEx ON command for each stop is static, the OFF command varies based on the other active stops. For example, if Stops 1-3 are ON, the OFF SysEx for Stop 3 might be the ON SysEx for Stop 2. In another combination, it appears to be a different command.

Last edited by Dizziness on Fri Apr 27, 2018 4:48 pm, edited 1 time in total.

The stops on the organ are divided into a number of groups of up to 7 stops. The Midi messages consist of a header followed by one or more pairs of data bytes. The first byte in each pair is a “group ID” and the second byte is a bit mask showing the state of all the stops in this group. For single stop changes there is only one data pair. For larger registration changes the messages contain multiple group ID / bit mask pairings. I find this approach reminiscent of Peterson who use a variable number of data groups but with 4 byte bit masks.

This configuration makes it impossible to use a direct translation since the contents of a stop change message vary depending on (and impact) the state of nearby stops.