CV/Gate input/output

Just for updating the thread:

https://wiki.zynthian.org/index.php/Adding_Extra_I/O_with_the_Zynaptik_Module

The current state of CV-Gate imeplementation on zynthian is:

  • We have 4 analog inputs that can be assigned to MIDI CC, Pitch Bending or Chan Press.
  • These analog inputs work in the range of 0-5V. It would be nice to have a CV-IN circuit that would adapt different CV signals to the 0-5V range. This would be a nice contribution … :wink:
  • We have up to 20 extra digital inputs that could be used as “Gate-IN” but …
  • There is no software implementation for this, although it could be done quite easily.

Regards,

1 Like

FYI, a “Zynaptik Customization Kit” will be available very soon on the zynthian shop at almost cost-price. I won’t make much money with this, but I hope it will ease the task and finally have some people experimenting with the zynaptik analog inputs and perhaps helping me to design an “almost-universal CV-IN circuit”. I’ve no experience with the CV -Gate thing and some help would be really welcome!! :wink:

Regards,

4 Likes

:eyes:

:rofl:

Let me figure what you do find so funny … mmmmm … is it this proposal?

or perhaps this assertion:

:face_with_raised_eyebrow: :face_with_raised_eyebrow:
:rofl:

I was going to look at this but am a bit busy and I reckon it will require external circuit to match levels.

1V/octave generally spans 0-10V.

No no no no…

The thing I am amusing myself with is that my module order is a different attempt at interfacing my zynth with a eurorack.

It’s like I have set my bank account on fire, and I am pouring on petrol and I am laughing about it …

2 Likes

CV/Gate implementation is ready for IN & OUT:

Regards,

1 Like

As Riban statet a level amplification has to be done to reach the usual 0…10V de facto standard. Someone has to do it, so I think I’d like to take this task.
Hmmm… Some question (I did not find the schematic):
What Vdd do you supply for ADS1115 / MCP4728 (I reckon 3.3V?)
Have a nice day. Thorsten

Hi @Stupps !

Everything you need is here:

Regards,

1 Like

Hi, sorry, I’m still trying to reach some overview…

Ehmmm… Am I right, do both MCP23017 (the primary and the secondary) share the same two interrupt-lines (GPIO 16 & 26)? I read (maybe outdated) different entries here…

I was wondering, if it would be necessary (or nice) to have a switchable level amplification. And if ‘yes’, which GPIO I was supposed to use…

I found a tiny XL6009-module to generate supply voltage.

Sorry for my rusted english.
Bye
Thorsten

1 Like

No, they must be different because of the current software implementation.
You can’t run the old AllInOne with the Zynaptik because both MCP23017 share the IRQ pins.
The Zynscreen use different IRQ pins and it works OK with the zynaptik.

Regards,

1 Like

Hi, what is the i2s address for the Zynaptik-3? In a separate yet possibly unrelated issue i am getting a dogged error message: : ZYNAPTIK CV-OUT => Can’t write MCP4728 (DAC) registers. ERROR -2

Argh!!!

1 Like

Hi @magneticstripper !

Zynaptik-3 doesn’t use i2s at all. This is used by the audio chips.
The Zynaptik-3 EXTENDED use several i2c addresses for the different chips:

  • 0x21 for the MCP23017
  • 0x48 for the ADS1115
  • 0x60-0x64 for the MCP4728

If the MCP4728 uses 0x60 you could have conflict with the soundcard driver, but it should be fixed in recent SD-images. If not, i think @riban have a recipe for patching the issue.

Of course, all this only applies if your module is a zynaptik3-EXTENDED, with ALL parts soldered on.
Recent SD-images will auto-detect the chips and the I2C addresses, so it’s easy to know what zynaptik version you have and what i2C addresses are used by it. Simply check the webconf dashboard.

Regards,

1 Like

i have the “zynaptik3-EXTENDED” with all the parts. MCP23017 and ADS1115 are both working.

yes, it looks like there is a soundcard conflict (when switched to the RPI headphone webconf finds the zynaptik3-EXTENDED’s i/o). In an unrelated strange development: the gate output on the zynface is coming from the input jack… is there a work-a-round for the soundcard conflict?

Actually - I haven’t yet done this and it is based on research and work that @jofemodo did. I just took another look and see that this may be rather challenging for zynaptik v2 or v3 because the required programming pin (LDAC) of the DAC (MCP4728) is not exposed. (I have a v1 which does expose this pin so should be able to reprogram it more easily.)

I currently believe the only way to fix this for V2/3 is to attach (hold) a probe on the IC pin (U3 pin 4) or the connected resistor during reprogramming which may prove challenging.

1 Like

Here are some steps that may allow this to be done. Note that I do not have a V2/3 zynaptik so have not tested this…

  • Stop Zynthian at command line: systemctl stop zynthian
  • Hold jumper wire between RPi header pin 18 and R15
  • Run update program

It may be easier to remove the ribbon cable and reconnect the following pins to gain easier access to header pin 18. This would allow a male to female jumper wire to be attached to header pin 18 and held on the resistor pad.

RPi Zynaptik Use
2 2 5V
6 6 GND
3 3 I2C SDA
5 5 I2C SCL
24 R15 LDAC - This is the flying lead that is held to R15 pad

The program is here:

mcp4728_set_address (7.9 KB)

This is a bit geeky and requires a steady hand and nerves of steel so please only try this if you feel confident (enough). I have not tested any of this. There are various reasons why it might not work but in theory, it is plausible it just might!

Good luck and stay safe out there…

Awesome! Thanks Riban. i will look at this tomorrow.

hmmmmmmmm. i did the procedure and the 4728 is still hanging out on 0x60 (according to webconf.) am i supposed to leave the jumper in place after reboot? i took it off afterwards.

does it matter that i am downloading the program to a windows pc before i am uploading it to the Rpi?