Hey Phil,
Thanks for being the 1st to reply. You are right. I neither own a C4 nor did I hack into their site

. So I should (theoritically) not be bound to any confidentiality / copyright clauses. For all I know, I may have got the protocol all wrong ! Im just worried about the lack of information there is (especially since it would take not more than a day to figure out the protocol if one has a C4). I think if you know how Traction, Reason or any other DAW queries the C4 and the response it expects, you should be able to use this template with little tweak.
How did I do it?
1. Did quite some reading on MCU protocol. Some were incidental (during my search for info on C4). Others were intentional to understand the structure in which Mackie Protocol works. So have gone through the motions of HUIDocs, MCMap and the likes.
2. Took quite a few clues from softcore MCU template to understand how Sonar reacts to Mackie messages. Added my little programming experience to this and tried to make sense.
3. Used Midi-OX to monitor the midi messages that Sonar sends out. When sonar connects, it sends series of reset/initialize messages. That gave a big clue on what the different controls and sysex might be to communicate with Sonar.
4. Came across Geoff Waddington's work on creating a C4 emulator. I think this is the video you talk off where he shows custom text on a C4 display (
http://stash.reaper.fm/v/11712/WaddMCUC4.zip). That gave me lots of clues.
5. After all this, had most of the stuff figured out. What remained was to get the way C4 tells Sonar when an encoder is moved. I did not find that info anywhere (atleast not in a way I could understand it). It took a bit of luck and brute force approach to figure this one out. but I did it !!
My plan was to intercept the MIDI ports of my C4 and note all sysex commands, create a table, and think about how to implement all together into Lemur.
I was also of the belief that there would be a lot of sysex commands to work with. Probably this has been done intentionally to dissuade ppl from investigating. My initial searches were aimed to find SysEx information

. But from what I found, SysEx is used only for display data. Rest are note combinations and controllers (like the MCU - albeit different ones).
My biggest challenge was that not owning a C4, I did not know how the unit works. the documentation is not detailed enough to imagine the unit's behaviour. So there was a lot of guess-work and "connecting the observed behaviour with functionality mentioned in the user guides".
I'll PM you what I have so far. It will also be a good test-run for the template
