DIY external midi controller for the CQ

Even if I can manage controlling the CQ on stage with CQ mixPad, I love to have physical fader for some reverb and delay that I need to adjust by song.

I normaly use stage Traxx 3 on IPAD for my songs and the IPAD is plugged to the CQ using USB-C to USB-B cable.

So I build a DIY Midi controller that send NRPN Midi to the CQ.

It is based on an Arduino Pro Micro Leonardo and feature 3 faders and 3 potentiometers for my need.

The Midi Midi controller is plugged to the IPAD and the CQ using a USB hub.

You will need to instal Midimittr APP for IOS on the IPAD (free) that will act as midi router, receiving Midi from my controller and sending it back to the CQ.

1 Like

Both are nice and creative solutions! What role does midimittr have?

I miss physical faders/knobs on my CQ18t. Interesting solution, but seems to complex for me, esp. with all extra HW and cables etc 


Like the small footprint of the CQ18t, and getting used not having the physical controls. I also own a QU24, but only use it when I need > 16 inputs

I don’t really get the idea of buying a digital mixer designed for glass control, and then doing all this work to add mechanical controls. Isn’t that excatly what the SQ and QU series are for?

Here is the device I ended up with.

2 Likes

My Midi controller can be programmed using a simple GUI, a html page, using web-midi with Google Chrome (tested with windows only for the moment).

For each potentiometers/faders you can enter manually the NRPN value needed.

But you also have an option to “listen” to the CQ NRPN command and auto copy the value in the corresponding fader/pot. Just click on ‘listen’ and move the desire fader on the CQ.

The NRPN values for each potentiometers/faders are stored in the Arduino EEPROM and will stay until next programming even if you unplug the controller.

If you want to build the controller you’ll need:

-1 Arduino Leonardo Pro Micro (USB-C).

-3 Potentiometers and 3 Fader (the Arduino code is for 6 pot so you can dispatch as you want btw Pots or faders)

-an enclosure of your choice.

Cabling:

-potentiometers or fader have 3 Pins, positive, negative and signal.

-all positives goes to the VCC of the Arduino

-all negatives goes to the GND of the Arduino.

-all 6 signals goes to PIN {A0, A1, A2, A3, A7, A8} of the Arduino.

You’ve done with the circuit.

Then you need to program the Arduino with the code: 3Pots_3Faders_eeprom.ino

You might need to install some libraries into your Arduino programming app (a lot of tutorial exist on the net).

Here is the Arduino code and the GUI:

https://drive.google.com/file/d/1F2Vn3BlqNLunNJBiSAr5-0VqifoSMwg_/view?usp=sharing

I am currently developing another DIY controller that will act as a Midi Host for a direct connection to the CQ with no external hardware.

2 Likes

The development of my next device is going well.

It will be a simple USB midi HOST that will be placed between the CQ and any external device controller.

It will translate any CC midi message from your existing device controller into NRPN midi for direct control of the CQ Faders without the need of tablet, PC.

Basically, it will be able to listen to your external midi controller, copy its CC parameters and map them to any of the NRPN CQ fader.

It will do the same than a BomeBox for a fraction of the price.

Stay tuned..

6 Likes

The development of my new device is going well.

It is a hard work but up to now I have a beta device that can control the CQ without the need of any PC ( apart from the configuration file).

Due to some restriction with the USB midi protocole of the CQ line, I finally choose to use the Teensy 4.1 for its ethernet port.

So my device will be like a HUB between any external midi controller sending CC midi and the CQ, using the ethernet port.

I have still a lot to do.

2 Likes

Awesome work! I can’t wait to see a finished product!

Is this the setup?

Some MIDI controller with USB -(USB)-> Teensy -(Ethernet)-> CQ

And, is the rationale to enable controllers that don’t do NRPN to control CQ by implementing basically a CC-to-NRPN converter?

Exact, it uses the ethernet port but without a PC or Mac or iPad.

You basically just need a midi controller that send midi CC and the device will convert them to any of the CQ range mixers fader and PAN.

You will only need a PC for programming the device with the GUI.

It will use the USB HUB port of the Teensy so you ‘ll be able to plug multiple external midi controller if needed. No midi DIN input is forecast for the moment.

The GUI will “listen’“ to any CC midi input from an external controller and then you will be able to map it to any fader or PAN you choose from a dropdown list.

Up to now all is working great, the beta device and the GUI are operational. I need to fine tune, fix and test some points.

I have only done direct connection to the CQ and I need to test other ways like via router, how the manage the IP addresses, etc
.

I am also currently working on the MUTE function, wondering how I will implement them, because generally speaking, on all existing midi controller on the market, a button is set to send Note, so I need also to see if I can implement mapping from Note to NRPN.

Ideally, the GUI should be able to listen to CC or Note. Still experimenting.

Also I want all the programming to be hard coded inside the Teensy, so that when you unplug the device you don’t loose everything.

As always this is an open source project and I can give more detail for those who would like to test already now, what to buy, how to solder everything etc. and also share with you all the code (the Arduino code and html based GUI).

1 Like

Thanks. I have done something very similar for the Mackie DL32R, but there I had to reverse engineer and emulate the mobile app protocol using an Arduino. Because that mixer totally lacks MIDI. I am curious, what is the Arduino code to send MIDI over (I assume) TCP to the CQ?

Exact, TCP. I use NativeEternet.h for the Teensy.

It’s fun to see people tackling these kinds of projects. Thanks so much for sharing! I’m seriously considering a CQ-20B at the moment, and one of the things that gives me pause is the lack of quick and easy volume control. I don’t need physical controls for most things, but a way to dial down or mute the main outputs or headphones would be welcome.

Looking at the MIDI spec for the device, it seems like a quick mute for the mains would be easy enough to implement – but I didn’t see anything at all for headphone level. Have you encountered anything undocumented in your exploration that might make this part feasible?

Although this is quite off-topic in this thread, if you simply need a mute function, you could also achieve this with one or two basic footswitches.
These could be programmed to Mute the MainLR or a Mute Group, among other things.
Whether it would be possible to simulate muting the headphones by cleverly using the programmable “Listen” option, for example, by switching to an unused channel and back again, is something I unfortunately can’t test myself.
But at least using two mute functions with footswitch(es) should be possible with minimal effort.

A footswitch to mute mains struck me as a little too easy to accidentally trigger during a performance, but of course there’s no reason it has to be a literal footswitch. The jack is there for any switch including a simple panic button.

It really is the headphone volume control that I couldn’t see a simple solution for. It’s a little more buried in the UI than I’d like ideally. With the 18T and 12T models you can assign it to a “soft rotary” but again I don’t see a way to emulate this through the documented MIDI spec for the 20B. The soft keys are documented, but not the rotaries.

If you have spare outputs, instead of using the dedicated headphone jack on the CQ you could send your headphone mix to said outputs and use an IEM amp stick (like the Behringer P2) which would give you a volume control right on your body. Bonus: you get a headphone mix separate from the main.

The project have received a major change after my testing.

It comes out that dealing with the ethernet is not an easy part, neither for me nor (I believe) for the final user.

Having the deal with all these connection process and IP settings is a hard task.
Ethernet connectivity is not withdrawn but postponed for later.

So I ended up with only direct USB Midi connectivity, with the lost of the audio via USB.
I am pretty sure that it will be useful anyway for a lot of situation.
So far the device and the GUI are finished and working.

You will have a total of 32 controls possible that can handles all CQ 16 faders for the Inputs, all the Outputs, all the DCA, all the Mutes, all Mute Groups, scene changes and SoftKeys.

Next step will be to put the project on thingiverse with a sexy 3D printed enclosure and all the details for you to build your own device.

3 Likes

The programming is finished, all the code are here, I will update on thingiverse soon with all instructions.
For those who wants to try now here is some short detail:

It have 3 usb port.

-one micro USB for powering (up to 400 mA) and programming

-one USB-A host port for midi data.

-one USB-C for powering also (more than 400 mA).

It is programmable via PC/Mac/Linux (Chrome/Chromium) via a graphic user interface in Web-Midi.

After programmation, you can use it standalone on stage with a 5V power supply (micro USB or USB-C depending on the current consumption).

The CQ-MidiBridge V1.1 need another external USB host adapter.

It will plug into the USB-A host of the CQ-MidiBridge V1.1.

You can use any powered or non-powered, USB2 or USB3 (cheap on amazon).

You’ll need at least a 2 port external USB host adapter because one port will be use for the CQ.

You can use up to 3 differents external midi device.

Note that by plugging the CQ mixer into that device, you lose the audio USB.

The GUI lets you choose to map incoming midi into pretty all the CQ functionalities, faders, mutes, pan, scenes, sofkeys etc


You will need:
-a Teensy 4.1, ethernet or not ethernet (ethernet midi is not use now but it might be my V2 project, I cannot guarantee it, up to you).
-an external USB hub , at least 2 port, up to what you want but only 4 port are usable.
-the code for the teensy and the html:

The Teensy is programmed via Arduino IDE, using USBHost_t36.h and EEPROM.h, check tutorial for programming.

The only soldering is for the 4 pins USB host of the teensy (you need to solder a female USB -A connector to it) and the external power supply USB-C plug (recommended but not needed for external device with less that 400 mA).

1 Like

Pls pass my apologies to Luke W. from A&H support, I didn’t had the chance to thank him for his reply to my query. :smiling_face_with_three_hearts:

1 Like