The easy way to use an external controller with C’Mini is to plug it and the controller into a computer and run the Haken Editor. This not only provides an EganMatrix patch editor, but allows setting up external controllers, patch browsing and selection, and an interface to the macro and other global controls (like effect level).
I wanted a solution that didn’t involve a laptop, so I set up a Raspberry Pi with a small touch screen and wrote a Python program to interface and control the C’Mini. This got me into the nitty gritty of its MIDI implementation. Most of it is pretty well documented, like what CCs are used for macro controls, and the format(s)* of the patch change messages. What’s not documented at all is the patch load/dump format, parts of which I managed to reverse engineer for my purposes – most notably, I wanted to be able to see a patch’s name and voice count. So from the touch screen I can select a patch, and see/alter the values of the macro controls.
*: (One format basically handles linear patch number 1–500 or so, and the other handles bank:number, but not using the standard MIDI messages.)