Midi to USB Converter


The sleep I’ve lost …:disappointed_relieved::thinking: . . .:stuck_out_tongue_winking_eye:

I always wonder about the 5V / 3.3V Bus Voltage on the Int Pins and SCL/SDA pins of the MCP23017 is that an issue or a feature?


External pullups on SDA and INTx pins? This is probably because those are internally open collector outputs for cascading multiple devices.

INT pins are configurable, open drain or active high/active low via MCP23017 IOCON register.
In zyncoder.c file starting at line 156:

// configure the interrupt behavior for bank A

bitWrite(ioconf_value, 6, 0); // banks are not mirrored
bitWrite(ioconf_value, 2, 0); // interrupt pin is not floating
bitWrite(ioconf_value, 1, 1); // interrupt is signaled by high

Same for bank B. So this explains, why INTx pin has some voltage.


From the data sheet. . .

Configurable Interrupt Output Pins:

Three Hardware Address Pins to Allow Up to
Eight Devices On the Bus

So we have another 7 devices we can specify :smiley:


Yes. And always you can add “Yet Another Address Decoder” with one GPIO pin + AND gate on SCL line when there is lack of inputs for knobs und blinkenlamps :smile: , effectively doubling address space to 16 extenders.

Time to take an sleep or soon i fly into space with my mind…



“No, son. It’s just @Werewolf’s new synthesizer…”



Ok, 5 people and 10 opinions…

what should I do now with my Encoders to get it work? The resistors are removed from the board and dissapeared.
Is there a way to get my encoders work? What is the difference between the original Zynthian Encoders and the KY-040 ? Is there not a way to modify the KY-040 that they work like the original encoders?


It would be good to identify if this is an pick up issue. If you try to turn on and off something mains based close to the zynth does that produce the effect? You are very much into an area of your own because this is un-explored, your build is exactly that we can advise but at the end it’s only speculation. Please remember this is not an official kit implementation and is really supported on best effort.

The zynthian encoder simply connects 0v to the centre encoder tap without any pull up arrangements and place a anti bounce capacitors across the three connections.

At the end of the day you could simply solder the wires to the encoders themselves and place caps across the terminals.

We have @Werewolf saying he has modified, without caps, successfully so there would seem to be a way. But I don’t know how consistent the encoders are.

Just one thing, you are sure that there is no resistance between the two outer pins on the encoders when the KY-040 is unplugged? That would at least confirm that you have completely severed the connection for the resistors.


I don’t have room for control panel like Apollo, so moon is unreachable for me :slight_smile: