DIY Module Front panels (two questions and a big tangent)

I am planning a new Arduino module for another DIY case, it seems like, I don’t feel like stuffing lots of Arduino-based modules into my first case, in fact there would be just the two of them (and 1 is already done… mostly). So other stuff, like quantizers and such, would be in a separate case. Anyway, I was playing with Deep AI (kinda like ChatGPT, but not blocked in Russia… YET) and it suggested a cool idea when I asked it what should I do with me PT2399 chips, which I have like… a dozen. I already know where to put 4 of them, but I would still have a lot. So Deep AI said:

Yes, there are many interesting and creative circuit schematics that utilize the PT2399 echo/delay processor chip. Here are a few examples:

  1. Echo Base: [blah blah]

  2. Echo Chamber: [blah blah]

  3. PT2399 Stereo Panning Mixer: [blah blah].

  4. Granular Synth: This is a more advanced circuit that uses the PT2399 chip to create granular synthesis effects. It uses a microcontroller to control the PT2399 chip and generate complex granular sounds.

  5. PT2399 Reverb: [blah blah]

[blah blah blah about versatility and such again]

Granular stuff is always interesting! And then it mentioned reverb. So now I want to build a wonky granular reverb based on PT2399 and whatever it needs for controls. So I asked AI to write me a code. No luck

I’m sorry, but as an AI language model, I am not capable of writing code. However, I can give you some guidance on how to start writing code for an Arduino-based granular reverb project with PT2399 chip.

Well, I wasn’t really expecting anything, so I asked again just to be sure: “Okay, what is a basic code for granular effects?” And it just wrote me a code for Arduino. Or it stole that from somewhere…

-------- I think this code is probably bullshit, but it is interesting that you can trick AI into doing something by rearranging your requests-----------

Creating a granular effect involves processing audio samples by partitioning them into small, overlapping segments called grains, which can then be manipulated in various ways. Here is a basic code in Arduino for a granular effect:

#include <Arduino.h>

// Define PT2399 pins
#define PT2399_LATCH 2
#define PT2399_CLOCK 3
#define PT2399_DATA 4

// Define buffer and grain size
const int BUFFER_SIZE = 128;
const int GRAIN_SIZE = 32;

// Define buffer
int buffer[BUFFER_SIZE];

// Define variables for delay time, feedback gain, and modulation
int delayTime = 500;
int feedbackGain = 90;
int modulationRate = 5;
int modulationDepth = 10;

void setup() {

  // Initialize PT2399 communication
  pinMode(PT2399_LATCH, OUTPUT);
  pinMode(PT2399_DATA, OUTPUT);
  pinMode(PT2399_CLOCK, OUTPUT);

}

void loop() {

  // Read incoming audio samples
  for (int i = 0; i < BUFFER_SIZE; i++) {
    buffer[i] = analogRead(A0);
  }

  // Process audio samples in grains
  for (int i = 0; i < BUFFER_SIZE; i += GRAIN_SIZE) {

    // Get a grain from the buffer
    int grain[GRAIN_SIZE];
    for (int j = 0; j < GRAIN_SIZE; j++) {
      grain[j] = buffer[i + j];
    }

    // Apply delay time, feedback gain, and modulation to the grain
    for (int j = 0; j < GRAIN_SIZE; j++) {
      int delayIndex = j * (delayTime / MODULATION_RATE + ((MODULATION_DEPTH / 2) * (1 + sin(i * PI / (GRAIN_SIZE * MODULATION_RATE))))));
      delayIndex = constrain(delayIndex, 0, GRAIN_SIZE - 1);
      int delayValue = feedbackGain * grain[delayIndex] / 100;
      grain[j] = delayValue + (100 - feedbackGain) * grain[j] / 100;
    }

    // Write the grain back to the buffer
    for (int j = 0; j < GRAIN_SIZE; j++) {
      buffer[i + j] = grain[j];
    }
  }

  // Output the processed audio samples
  for (int i = 0; i < BUFFER_SIZE; i++) {
    analogWrite(A1, buffer[i]);
  }
}

This code reads incoming audio samples from analog pin A0, processes them in grains of size 32, applies delay time, feedback gain, and modulation to the grains, and outputs the processed audio samples to analog pin A1.

Note that this code is just a basic example of how to create a granular effect and includes only one algorithm. You can experiment with different algorithms and parameters to achieve the desired sound. Also, you may need to adjust the code depending on your specific PT2399 circuit and setup.

I feel like I outsmarted it by being dumb. I don’t know. I decided to share it here just in case you are also interested and/or you are an actual programmer (what are the chances to find one here!! It’s not like this forum mostly consists of developers and DIY enthusiasts or something…) and as an actual programmer yo see this code as an abomination and there are like millions of mistakes that only AI could make. Well, if that’s the case - please share your thoughts! I will make this PT2399 granular reverb eventually, but not soon, so there’s lot of time to polish this and maybe find an actual DIY project that somebody already made and tested and whatever…

Anyway, here’s a programmer cat with a weird cat keyboard!

I was actually supposed to make my next module, but both of the options (Euclidean Sequencer and VCA) turned out to be a bit tricky. I’ll tell you about VCA next time, today I have a question about Euclidean Sequencer.

So the schematic by Tombola and later variations of it is actually pretty easy to follow. Well, usually. SOmetimes you have to play “follow the line” game

Compare it to this atrocity by Syinsi

And now look at this schematic by Sneak Thief:

I am not saying anything about THX2112’s talent (they’re obviously very talented), but sometimes I feel like I need neuroleptics when looking at schematics drawn by certain people… It feels like I am reading a Junji Ito manga or something.

ANYWAY I have two questions.

  1. do you really need two diodes for the inputs/outputs? Sneak Thief and Tombola had just one Zener for a socket.

  2. Would it be fine if I use 78L05 for a LED matrix? Both SYINSI and Clee (he has another variation of this circuit, with MIDI) use 7805 while sneak thief just uses Arduino to power it. I guess I am not this reckless to follow sneak thief and I also have a couple of old 78L05 that I desoldered from somewhere, so I want to use them so they would free some space in my disorganized electronic components box. It should be okay? Right? I know you would say “test it” or “well use it and see. If anything - change it to 7805”. But I really don’t like to breadboard things and I also really don’t like to change stuff in my modules, haha. Cause when I am planning the layout I usually consider size of components. Sometimes even changing 1uF to 10uF capacitor becomes a puzzle. And they both are pretty small!

Anyway, just wanted to ask these two questions. Thank you!

Alright, so I rewrote the arduino code for my Clock module. I was thinking I might do it in a more fancy and overall elegant way, but in the end I just rerouted something. Like assigned most of the functions for one thing to another. And I also flipped the screen, but I already said that before. So - not really something worth mentioning… But I mentioned that anyways!

Few problems with this module that were probably caused by my elite hacking skills. It sends pulses to the outputs when you rotate the encoder. And if rotate it enough, the button stops working. So say you enter a menu. You choose something, you adjust the values and you can’t close the menu now. Cause it kinda softlocks in this menu. I don’t know why it happens, but… I guess it is a problem I am willing to ignore for now.

Past two weeks I was working, so didn’t really had time to do anything except tweaking a code now and then. Now I hope I am free… for now. So I can continue building modules! Next one would probably be a double VCA module, based on 13700.

Ah, that’s another topic I wanted to briefly mention here. So I know that most of my chips are fake. Doesn’t really bothers me, if they work fine. Yeah, maybe they are noisier or less powerful or whatever - if they do what I expect them to do - I am happy. It also doesn’t really matter if they were used. Of course if they were listed as new on aliexpress or whatever - I will write a complaint and demand my money back, but again - if they are working, I will use them. That is a long way to say that I have no moral principles, hahaha. But I am interested if there is a resource with fake and real chips visual differences. So - just “if you see this - that means this chip is a fake”. Like for example ST logo on TI chips. I have a bunch of TL084 with ST logo (it’s more like S7 though).

And that’s all for now!

Alright, welcome to my TED talk. I documented the building of a VCA module, I tried to make it as complete as possible, but as I was building it during my kinda bursts of activity, there are big changes and the periods of time between photos could be quite long (not months with an exception of a faceplate, but like a day or two). Okay, so as I started with a faceplate, there it is on the right side (actually the bottom, cause my photo was automatically rotated for some reason…), before paint and all that:

Before continuing with the photos I wanted to tell you a story about changing the plans last minute. So I actually started with HAGIWO design. There were other designs, but I maybe arbitrarily picked his one. I came up with this beautiful layout, I even printed it in june, I think, when I was planning to make it and before all the hassle with moving houses and cities and maybe countries (that never happened at the end):

It looks cool! But when I was about to go with this design few weeks ago, I discovered that I don’t have any low esr 2u2 caps. I don’t know if you need low esr here, but I presume you do. So I had 10uF and 100uF chinese low esr caps. And I was thinking how to change 2u2 to 10u, which I think should’ve been kind of easy, cause the equation for a filter should be the same (I think it is high pass to filter the DC, but I couldn’t find the exact topology for some reason), so while searching for topologies and stuff I found a topic on a LMNC forum with another design, this time by Niklas Rönneberg (for CA3080). And even before that I actually found an Electric Druid article about 13700 VCAs. Of course I skipped all the science stuff and just looked at the schematic. So I merged these two designs and then it turned out that a guy named Fredrik on LMNC forum did it before me and he did it better, without actually changing much of Niklas Rönneberg’s design. So I stole his re-design and now it looks like this,the layout:

I’m sorry if it looks like a maze to you… And this text that says “3rd pin not used”… It is kinda junky. Well, it’s not this confusing really, the footprints are actually to blame here. It’s not this easy to change them… okay, anyway! Soldering!

  1. Here I caught a mistake in my schematic! So instead of a) it was b) (see the picture below)

I changed my schematic and the layout accordingly, gladly it was as easy as moving two diodes.

3 and 4. At this stage I added holders or something. Legs, feet… hahaha. Just to make everything easier. And… yeah, caught another mistake, this one was also very stupid. I… uhm… forgot to change the position of 13700, so it was in the wrong feedback state. I don’t know hot to explain it, but you probably know what I am talking about. Alright, so I changed schematic and layout… Again

  1. At this stage I actually made another mistake. See this tiny black wire between pins 10 and 14 of a panel dedicated to 13700? Now look at the underside – I soldered it directly to these pins. And It was a mistake, cause I actually forgot to add a resistor to the schematic. There should be a 1M resistor actually… Yeah. I’m dumb. I don’t even know how I realized that there is a mistake. Luck, I guess…

  1. Adding the missing resistor.

  1. Some photos are missing for an unknown reason… I guess I pressed the wrong button or something… So we return with everything already soldered… On the board. What’s left is soldering the panel stuff and fixing the panel to the board. Or the board to the panel… Anyway, look!

  1. Panelling the panel

  1. Glueing with different kinds of glue. Some photos are missing, these photos are not exactly important, just some hot glue on the connectors and on the back side of a board, to fix the wires. And also I added some glue to fix the board on the wooden whatever it is. A handle? Hahaha. A holder? It holds well, the friction doesn’t allow it to fall or even move, but a bit of hot glue wouldn’t hurt. So it is fixed, but if something goes wrong you can easily detach it. That all was on the missing photos. I actually have only one photo from this stage. Here it is:

  1. My first VCA in the case! Feels like Christmas for some reason. I guess the yellow LED has just a perfect warmness… On the photo it is doing the AM stuff. At first I obviously checked it with LFO (cause I don’t have an ADSR module, remember) and confirmed that it does indeed work. From the start! Which shouldn’t be surprising really considering how many mistakes I caught while assembling it… Anyway! I like it, but my next VCA probably would be a discrete transistor one. I want the crunch!

So on the photo above everything except the ADSR is complete! And the gap between ADSR and Clock is dedicated for the Euclidean sequencer that should be easy to make, so I am only worried about the ADSR… Famous last words.

Okay! See you next time!

***PS

I forgot to mention that VCA should be calibrated which I haven’t done yet, cause I forgot, haha. But yeah, I guess the calibration should something like: set the gain to minimum and turn the trimmer until you hear a sound… I am not sure. Maybe I should instead use the DMM… Cause decades of listening to metal and industrial made me quite deaf

A small update. ADSR module is complete!

Now I am waiting for my AliEx package. I need some stuff for the next module, which will be Euclidean Sequencer, I think, cause I already have a faceplate for it and also look at the photo in the post above. This gap bothers me…

So ADSR, the fastest envelope, yes. The layout is a bit crazy, everything is scattered around.

Some components are actually soldered to pots and inputs\outputs, so they are not on the board - that’s for people that maybe found this post by googling ADSR layouts or something.

Anyway, at first I was trying to keep everything at one place, so I would just use one big connector to attach the faceplate elements to the board. You can see the cluster at the bottom right - Attack, Release, Switch - I tried to keep everything there. But That would require additional jumpers and stuff. I hate striping the wires, I don’t have any fancy tools, so I just use my knife every time. So I measure it, stripe one side, measure it again, stripe another side and then It’s still to long. Or too short. And I am a bit of a perfectionist. Not to the mental disorder level, but I really strive to make everything pretty and perfect. So I can’t just make a hedgehog board like some people do - with wires randomly poking or bulging everywhere. Not my style… Though I want to make one module like this, just to have it in my collection, haha. And It might be cute actually. Also I don’t want to just solder front panel stuff to the board, so I always use connectors to attach it. This way it’s easier to change something or to detach the board to debug it. So the only wires that are connected to the board are jumpers and power. Very clean! The negative side of this approach is that there are lots of connectors and you have to spend some time to decipher which one’s which.

Okay. Troubles with building! Honestly it was smooth. The only trouble was with the switch. The plastic is very poor quality, it melts right away. So I accidently broke one switch while soldering the wires to it. Kept the iron on the lead few moments too long and it immediately stuck in one position. I forced it to the other position and It worked for a minute or so, but then the handle got loose and yeah… I teared it apart and it seems like the metal for the switching mechanism was also of a poor quality, it got bent. Well, I did use an excessive force earlier… It would be better if they used ceramics for this, but anyway, I have like 20 of these switches. And now I know how and why they break. So +5 exp points.

Alright. that all for now

So Euclidean Sequencer or Euclidean Rhythm Generator or whatever you call it is almost done. Cool! I call it a chalkboard, cause it reminds me of one (not that you can see it here). I’ll drop some stylish photos and then mention some troubles that I encountered, a couple of which are still there… Hopefully not for long.

Looks like I am ready to go Knight Ridering.

There were not as many problems as it was with Clock module that I decided to mod without even knowing which programming language the sketch was written on (I only know the very basics of C and I think it was actually C). There were some hardware troubles from the beginning though, like starting from few months ago. I couldn’t program my Arduino clon for some reason, for example, so I installed Windows 10 and it then worked. I also had to desolder the led matrix, cause it was soldered to the board with the IC by Aliexpress sellers. Not the best practice… I bought few of these LED matrixes, so I wasn’t really scared to ruin one. And I didn’t at the end, it works fine. After desoldering it I also changed one smd resistor. I was told on Syinsi site, I think, that you should change it to a smaller value and then adjust the brightness manually through the module controls.

Now what is still wrong:

  1. the screen is upside down. Gladly there’s a variant of a ledmatrix library to fix this. So I will, not now though.
  2. sometimes it freezes. i think there’s something wrong with one encoder. I checked if it was soldered properly and if the A and B pins are connected to the correct pins of Arduino. And they are… Well, all except two, which are not A and B, but the ones that are dedicated to the push button. So I don’t really know if there’s a difference. For funs I might change it. Would be incredible if it fixed the freezing problem, but I doubt it. I think it might be a library problem actually. We’ll see!!!
  3. There’s a humming noise, more like a high pitched buzz. I think it is a grounding problem, but I am too lazy to fix it right now. And it’s kinda quiet. I should fix it though! It might actually be related to the microcontroller, cause this one I bought too cheap if I remember correctly. It works though… So I think it could be an interference or something… I don’t know.
  4. So about the brightness adjustment… It doesn’t work. It should. I think you do it by a long push and even though the short clicking works fine, the long push doesn’t! Weirddddd. I blame it on a library again. I haven’t noticed that the libraries were included into the github archive. So I installed some from Arduino IDE “Manage Libraries” thingy. So it would be great if everything fixes itself with just that. Well, the buzzing noise wouldn’t go away, I don’t think. Alright!

And that’s all for now! See ya!

1 Like

No real progress with my modules yet, I have to work. Meh. BUUUT I received a package from mister Ali Express. Some diodes, some chips, some pots, a couple of microcontrollers and a transistor array, the CA3096. All the chips seem to be legit, like the real real ones, but they are fucked, to put it lightly. I remember I had the same problem with CA3046 that I probably ordered from the same seller. Look at them.

Sometimes like 50% of a pin length have been cut out. They look like they’ve been through some stuff. Like someone from a post apocalyptic future ripped them out from a salvaged piece of electronics while humanoid robots were searching for him with laser rifles. I don’t have a Geiger counter, but I feel like they are slightly radioactive, cause it fits the image…Yeah… I haven’t tested them yet, so I don’t really know if they work or not. My DMM shows a connectivity, the diode drop between supposed base and emitter of few randomly selected transistors, but nothing to the collector, that is weird, but I never actually tested the transistor arrays, so I don’t know what I’m doing to be honest. I guess we have to wait and see if they would work in the project. Which is, by the way, the Moog filter. Now I have CA3046 and CA3096, all of them are shitty, but maybe they do work (?) despite the appearance and the fact that they are obviously used, not new at all. We’ll see! First I have few other projects to complete.

Well that cat looks like it is having fun!!

It could be good news, there is a fair chance these ic worked and may still do. I used to get more worried when they turned up all shiny, with wet ink you could wip off with your thumb.

Could be hope for the transistor arrays. Taken from the datasheet

The collector of each transistor of the CA3096 is isolated from the substrate by an integral diode. The substrate (Terminal 16) must be connected to the most negative point in the external circuit to maintain isolation between transistors and to provide for normal transistor action.

1 Like

Ooooohhhh! That now gives me hope… Well I didn’t actually lost my hope before that too. I just thought that that’s something weird. like maybe the voltage drop is higher than my DMM was created for, haha. Well, that would be very strange… In my experience it stops measuring voltage drop of LEDs up from 3v or 2,8v, something like that. So yeah, that would’ve been very very strange. But now it makes sense actually! Thank you!

Ah, by the way. Some of my new ICs are like that… Freshly painted with obviously fake info. Like instead of TI on CD4066 there’s something like IT or П or a chinese symbol, something similar to 代

1 Like

Long time no see. And probably there would be a huge pause until the next update. There are things that need my attention in the non-modular-synth world, so yeah. Anyway, This post is not about synths too! Although I have 3 new front panels and projects, like the perf board layouts… These modules are: Ken Stone’s Burst Generator (I think It was Ken Stone’s. I did the layout in november, I think… Or before that. I’ll tell you about november later though). So the second module is Moritz Klein’s (I got the name right first try! So no Mateuszes this time) kick drum module. This one is cool with lots of potentiometers. I’ll show you later something cool about the front panel of this module. And the third one is Tinkles by NLC. Or Tinkle? Whatever. So it’s all rhythm-related. I am making a front panel for the fourth one now, it will be a logic module, very basic. Maybe two inputs and 4 outputs: OR, XOR, AND and… Yeah, maybe three is enough. But I might add a Not for each of the inputs, so it would be… 7 jack panel. Which is great, cause that’s exactly how many I could fit there, haha.

Alright, so november was the last time I updated this thing, a journal or whatever… And sadly a week or so after that my cat died. And I was kinda really-really sad for a while, maybe 4 months. Which might sound silly. But I lived alone with my cat. So she was a huge part of my life. Here she is:

Anyway, so anyway, half a year later I am finally about to continue this modular project and then suddenly my family became very adamant about me moving to another city, where they live. Which makes sense for many reasons, so maybe I will move this year (it was planned for last year too, but then plans had changed) and obviously I want to take everything with me, but I am not sure when I will be able to continue. I’ll try to finish these 4 modules before that, but no promises. Well, not like anyone is waiting with excitement anyway, haha. I’m just explaining.

So right. Few months ago I decided to ease myself back into the DIY world, so I actually started with buying an old reel to reel, two of them actually, a radio and a… turntable? A thing that plays vinyl discs. I wanted to dismantle it really, to get some transformers and germanium diodes for my saturator project (that I haven’t started yet). And btw I bought it as a batch. And really cheap too. So the whole batch was working… somehow. There were problems like reel to reel motor wasn’t spinning even though I think it wanted to, so it wasn’t burnt. Radio worked too, but the sound was in one channel only. The other reel to reel was really to really quiet. And it was a tube reel to reel. And it was produced in 1960s or something, so there was no point in searching for replacement parts to fix it and I just took it apart, the mechanical part I mean. And the schematic was weird, there was no power amplifier, so I decided to repurpose the electronic part, and now it is a preamp. And It sounds good with overdrive. As it should. Not really great with clean guitars… At least to me ear and with my cheap equipment. Alright, so… ah! The turntable was the only thing that worked perfectly from the start.

So I fixed the reel to reel. It works now. I replaced the electrolytic caps and it came to life. But there were some problems with mechanics and also the power amplifier was outputting a very very very distorted signal. Fixed the mechanics, it took me maybe two weeks to find the problem with the amplifier. It was corrosion. One of the transistors’ legs was just irreparable. Had to amputate it and solder the prosthetic pin instead. Now it works.

Radio I think I fixed. I hope I fixed. I changed the electrolytic caps again. But then when I started to check the amplifier circuit, 2 out of 4 output transistors were shorted, the E-C path was open all the time. So I desoldered them to check if it was the transistor’s fault or it was something in the circuit. And while checking it, I kinda killed the remaining two transistors, hahaha. The problem though was the same. Which tells me that it could be something about these transistors actually. I think they die this way. No matter what caused it, the fault would always be the short circuit from emitter to collector. Or I was very lucky to replicate the conditions to break them… Also possible. Anyway, I changed the transistors, turned on the radio, waited for a while, turned off the radio, checked the transistors… short circuit from E to C in two of them. but them few minutes later the reading became normal. And there’s no capacitor in the base, so it’s not like something is biasing them. Maybe that’s what they suppose to do? I don’t know. But the ones that I desoldered were 100% dead. Anyway, all of that is just to show you some cool (in my opinion) photos! Check this out

And that’s all for now. I might finish the modules (that I told you about earlier) in june, but I don’t know when I’ll be able to post anything about it… But I will do it, that’s a promise

(edited because I noticed that I misspelled Moritz Klein’s name again, I wrote Maritz. And I was so happy that I didn’t call him Mateusz… Oh well, I think I am cursed)

2 Likes

I swear when you hear about this radio next time, it will be fixed for sure. But I decided to make a video! Yeah, by the way, I was wrong, this radio is still broken… So I made a video to explain why I thought it was fixed and also I wanted to show you this thing. But while showing everything, I forgot to explain some things. So I thought that the faulty channel is a right channel, but actually it is a left channel. Yes, a stupid mistake. And the left channel still doesn’t work for some reason. Anyway, I quickly mention and show off the face plates for three modules. And I also show you some cool diodes and transistors. So I think this video deserves to be here. Haha. By the way, this video is cursed and it was divided by my phone into two parts for some reason… Anyway, it is actually a pilot for my module-making videos! At least I think I will shoot these videos… Maybe.

2 Likes

I am slowly building a Burst Generator module (by Ken Stone). All the soldering work was quick and easy. I did it in two days just because I am slow and lazy. Could’ve done it in 2 hours realistically, and that includes the time for cutting the jumper wires and everything. The unexpected problem (who am I kidding… very expected) was with attaching everything to the front panel. I wanted to use epoxy this time, but it was my first time working with it so I had no clue (no glue, haha) how to actually use it. Yeah, I didn’t know that you have to mix it with a solidifier… Mistakes were made. Anyway, everything was corrected with superglue and baking soda.

So now I have to solder lots of wires, because my layout is a bit weird. I hate it when there are more than 2 ICs. It makes the layout more complicated than it should be, in my opinion. Well, of course if you are printing your PCBs, that’s not really a problem. Well, it should work either way in the end. I hope. Here’s what I had to do to connect everything together:

Yeah, I am an engineer. Or an ungeneer one might say. Anyway, I am finishing it today and maybe this week I’ll show you how it looks in reality