CV/Gate input/output

Hello, I was wondering if anybody has already added a cv / gate input interface to the zynthian and if not trying to evaluate what would be the impact on hardware / software to do this using for example mcp3204 to receive cv and route to the spi interface on the pi then to the software instead of a midi channel ?


Currently, the v3’s zynaptik circuit allows to connect the next optional parts:

  • 16 digital I/O ports (extra MCP23017) => Gate Input/Ouput
  • 4/8 analog inputs (up to 2 x ADS1115 modules) => CV input
  • 4/8 analog outputs (up to 2 x MCP4728 modules) => CV output

The software integration is not done yet, but you are very very welcome to help with it :wink:
Regarding the “impact” in audio processing, i don’t think it’s gonna be a problem.

Kind Regards,


Excellent! I wanted to do a module for my eurorack modular since a long time, it could be done with the Zynthian, I have all the necessary to prototype near me and some time during the week end, let’s do it mate !


Absolutely up for helping to make this happen. Was thinking about CV whilst going through the GitHub repositories. :- )

1 Like

Thanks @HammyHavoc this is good to know,

on my side:

  • already ordered a MCP23017 also ADS1115 and MCP4728 modules :wink:
  • then I’ll try to connect these first to my arduinos to understand how they work off the ZY box because I don’t have a ZY dev env in place right now, I tried the docker but it fails on my dev pc for now and I prefer to stay away of the code if possible as I’m already doing it all day at work :wink:
  • I can also think and build a euro rack panel prototype with my tools, I can design with Librecad and cut with 3axes cnc, also can do one face pcb using Fritzing, it is basically going to have the same face as the ZY but with jacks around, 4xCV in 4xout, some GATE, audio IN OUT, usb front panel maybe
  • there is also a need to build a small eurorack plug for the +5V input

It’s going to be on my out of work/familly/social hours, so the pace will be quite slow on my side, but I’m on it (motivation first ;-), let’s see what everyone can do and plan this so we can optimize the time a little maybe.


Nice, guys!! Let’s do it …

The MCP23017 and ADS1115 are currently well supported by the wiringPi library, and MCP23017 support has been extended a little bit for zynthian (see the zyncoder library). I don’t think we need extra “i2c-low-level” coding for this 2 chips.
The MCP4728 is not supported by the wiringPi library, but there is code for arduino, so we can use it for adding wiringPi support:

GitHub - hideakitai/MCP4728: Arduino library for MCP4728 quad channel, 12-bit voltage output Digital-to-Analog Convertor with non-volatile memory and I2C compatible Serial Interface

It’s always a funny task to add support for new hardware in a platform like RBPi. A lot of people will take profit from this!! :wink:

In the meanwhile, we should define how CV/Gate should be integrated with zynthian engines. The obvious starting point is mapping to MIDI events, of course … but you know, devil is on details :wink:



OK! I’ve a zynaptik with all the parts soldered on it:

The second 40-pin connector is the “zynaptik connector” and has this pin-out:


  • GPAx & GPBx are digital input/output pins (MCP23017, at I2C address 0x21)
  • INTA & INTB are interrupt pins for banks GPAx & GPBx, connected to RBPi pins 36 & 37.
  • AD-x are analog input pins (ADS1115)
  • DA-x are analog output pins (MCP4728)

I will copy this info to the wiki ASAP :wink:



Soldered the components and the beast still works like a charm :wink:

1 Like

Will the zynthian shop be stocking the AtoD & DtoA modules…?

I would like to offer this parts when the modules are integrated in zynthian software.
I hope very soon :wink:


Nice! I see you thought a little bit before soldering (not like me!) and both rowpin-connectors are soldered in the same side. Mine is a V-mount :wink:

Regards …

@jofemodo thanks, it was easy as I had your picture to help me :wink:

1 Like

Hi @jofemodo, I have done a session yesterday night and I saw that with the identical setup as usual, same power source, same cables, same midi device connected via usb, now I see the power warning blinking even at rest, do you know if it could come from the new soldered modules ? do you also see a difference with or without ?

I’ve not detected any problem with this, but if your setup is near the limit, any power increase could push the system above the line. Have you tried to disconnect some device or the zynaptik?


I did not disconnect the zynaptik, what I did to resolve the problem is to connect my device (Akai mpd226) via the Midi port instead of USB and power it with a separate source, now everything is all right.
I’m pretty sure there is something with the new modules soldered because before I always connected via USB on the Pi to do Midi and power the Akai and never had any warning, maybe I have soldered the wrong way I’ll double check this :wink: on my previous picture, the 2 vertical modules have the [+] on top is that correct ?

Yes, it’s right. I will try to measure the power used by the 2 modules …


1 Like

Wow! You guys are amazing! Just beginning to imagine what is possible with Vcv rack and this fabled module… Any chance that software integration has occurred?

I might brave a build if so, and the modules are not out yet.

Hi @defbug!

Welcome to the zynthian community!

Please, could you explain a little bit what do you mean with using VCV-rack with zynthian? How do you intend to integrate both?

BTW, the CV/Gate interface for zynthian is not yet finished …


hmmm well. I had initially assumed that I could access the gui through Zynhtian and was thinking of finding a way to add a 7 inch touchscreen and custom design an enclosure with all i o facing up to use with my modular and hardware synths. Now I am seeing that I was mistaken and that though vcv runs on linux there may not be way to use in the zynthian environment. Btw in case you cannot tell. I am a rank newbie. :stuck_out_tongue:

It’s a good idea, but it’s going to require a fair amount of development. The most straightforward way would to build a separate VCVRack pi distribution that pulls in what’s needed from zynthian code and utilises the zynthian hardware modules. The idea of being able to patch from software out to hardware and back is quite appealing.

1 Like