Welcome to stripboard heaven! Here you'll find all the projects I used to build my DIY Modular Synthesizer. I'm using the 'Kosmo' size standard but I also build Eurorack sized modules. All layouts are made by myself and verified to work. The schematics they are based on come from all over the internet. If you're on a PC or MAC, there's a complete MENU in the sidebar. For mobile devices the menu is in the black 'Move to...' bar below this text.
A great sub-oscillator taken from the Thomas Henry VCO Maximus. It has -1,-1.5, -2,-3 octaves, octaves or fifths (interval), polarity setting and a blend option with the original pulse wave. The suboscillator will react to the pulse width of the input wave too. It will even react to FM and Hard Sync from any VCO you combine it with.
I never featured a sub-oscillator design on my website before but I was looking for a good design which I wanted to combine with the X4046 VCO to build my version of the ultimate analog VCO for Techno Music in Eurorack format on PCB.
So I found this design on the Birth of a Synth website, a website that provided many excellent projects already, and I needed to test it before I could add it to the 4046 VCO I'm designing in KiCad, so I made a stripboard layout for it and it worked great.
This sub oscillator comes from the VCO Maximus design which is a 3340 VCO like the Digisound-80 from project 18 and the squarewave output is at 0V to +10V instead of +/-5V like the X4046 VCO. The sub-oscillator does not work with a bi-polar signal on the input so I added an offset feature so you can trim the input wave to be unipolar and therefore this suboscillator as presented here will work with both uni-polar and bi-polar signals on the input as long as you trim the input signal to be 0V to +8 to +10V. The output wave is bi-polar +/-5V.
SCHEMATIC:
Here's the schematic I used for this project:
In this schematic I drew in the offset feature and the IC numbering is adjusted to match the layout. I also changed the value of the output resistor voltage divider to make the circuit output a +/-5Vpp signal on a voltage of +12V instead of +15V. Originally R15 was 3K and R8 was 1K8, I changed them both to 2K2.
Here's how it works: a bi-polar pulsewave, coming from the X4046 VCO (in my case) goes into the inverting input of the opamp and gets pulled down by the trimmer voltage to become a negative unipolar signal. So the input becomes 0V to -10V which is inverted to 0V to +10V by the opamp's inverting action. Exactly what we need. After the signal has been processed by the logic chips it gets turned back into a bi-polar signal by the output opamp which has half of the positive powerrail voltage on its inverting input by means of the resistor voltage divider (the two 10K resistors) which will push the signal down again to become +/-10V. By using the input trimmer you can set the output signal to be symmetrical. The output signal amplitude then gets cut in half by the resistor voltage divider R15 and R8 which, for use with 12V, need to be 2K2 each so we end up with a +/-5V output signal.
Capacitor C3 (47pF) ensures the incoming pulse signal doesn't overwhelm the flip-flops which would result in tiny spikes in the signal which would disrupt the working of the sub oscillator so it's a very important component.
This suboscillator consists of a number of exclusive OR gates in the CD4070 and two flip-flops in the CD4013 for octave switching. You can set the octaves between -1 and -2, you can set the polarity of the signal between positive and negative. It allows you to add or subtract the subdivided pulse from the original. The different sub division options through the switch settings can give a divide by 1.5, 2, 3 or even 6. Any changes in pulse-width made to the input wave will be carried through into the sub-oscillator, further expanding its sonic diversity.
I urge you to read the original Birth of a Synth article I linked to above for more information on that. It's very informative and explains it better than I ever could.
LAYOUTS:
Here are the layouts I made for this project. As always they are verified, I used them for my tests.
As I mentioned before I changed the two output resistor values from 3K3 and 1K8 to 2K2 for both resistors. This will leave us with a nice +/-5V output signal.
Wiring diagram:
Stripboard only:
Cuts and wirebridges:
There are 31 wirebridges to put in and that's why it takes up a lot of space despite this being a project with very few components. However, I managed to keep the board to 41 holes width with room to spare so it will fit behind a Eurorack faceplate if necessary.
Bill of Materials:
Make sure you get your logic chips from a reputable source. There are a lot of fakes on the market and this design won't work well when you use those. Never buy IC's from AliExpress.
OSCILLOSCOPE SCREENSHOTS:
Here are some of the test results from the oscilloscope. They look amazing and show that this is not your average sub oscillator but quite a cool addition to any VCO. It's easy enough to make this as a stand alone module so you can plug any VCO into it. The Blue wave is the input wave.
Divided by 3:
Blend potmeter half open:
Polarity lets you add or subtrackt the subdivided signal from the original pulse. Below you can see that the bottom half of the waveform is gone. This is caused by a bad chip connection or just a bad chip. I put in a different CD4013 and the problem was over. In my case the bottom half disappeared when I switched from -1 Octave to -2. In a later module of the 4046 Super VCO I had this same problem and the 4013 chip actually got really hot. It turned out to be a fake. I put in a good CD4013 and the problem was over.
In the next 3 pictures you see what happens when the blend potmeter is used. The middle bits of the waves move past eachother. The top one moves down and the bottom one moves up until they form one squarewave again. That sounds really cool. Unfortunately there's no CV control for the Blend feature but it wouldn't be too difficult to put a Vactrol over it so it's not impossible. (Click through the pictures fast to see the waveforms move position)
With the switches at -2 oct and oct/5th at oct I measure for instance 40Hz
If I switch to 5th that goes up to 53.4Hz and switching to -1 octaves it goes to 106.6Hz
Below a picture of my stripboard build. Because I only built this to test how it works and see if it would be compatible with other VCO's, I did not make a panel for it. So this is as far as I got with this project. Well worth the effort. It's a great suboscillator and would make a great stand-alone module.
Here is the finished product, the PCB that forms the back plate of the '4046 Super VCO' module.
Below you can see the finished VCO module. The suboscillator in it works like a charm thanks to the input offset feature. It really is an awesome addition to any VCO and in this one you get that really low bass in your stomach combined with the awesome hard sync and FM features. The suboscillator works very well with the Hard Sync function and you can get the weirdest sounds from it from bell like ringmodulatory sounds to Atari computer sounds.
It's a killer combination and I'm really proud of this one and dispite the reputation that this VCO has with bad tracking when using a Texas Instruments CD4046, I had problems with inaccurate tuning with only one out of three I built so far.
And that's really all there is to this article. It's short but sweet.
VIDEO DEMO:
Instead of making a demo myself I though I might aswell post Thomas Henry's own demo video of this suboscillator here. It shows all the options including the influence of pulse width modulation.
I hope you enjoy building this project as much as I did. If you have any questions please leave them in the comments below or on the special Facebook Group for this website.
If you like this content and would like to support my efforts and the upkeep of the website you can find a donation button underneath the main menu or you can CLICK HERE to cut out the middle man. Thank you very much!!
A short introduction to KiCad 9.0 or 10.0 and step by step guide to making PCBs in KiCad. I go through the steps with you and tell you my learning experience.
About KiCad 10. The new version 10 we're on now was released full of bugs and I advised people not to change over and stick with version 9. We're now on version 10.0.4 and most of the bugs have been fixed. I used version 10 for my last two projects and it was perfectly fine to work with although there were still some minor glitches but nothing serious. Ok, on with the show:
Intro:
For some time now I've been watching how many of my website followers have been producing awesome PCBs from the schematics I posted instead of doing them on stripboard. In early May 2025 I decided the time had finally come for me to really get to grips with KiCad because I really wanted to be able to do that too. I had tried KiCad before and I also tried EasyEDA but found both sort of overwhelming. There's so much coming at you that it can seem impossible to get through but that's not true. You just have to know where to start. In this article I will try to explain how I learned KiCad in less than a week. I was advised to go with KiCad over EasyEDA and I'm glad I listened ^___^
What is KiCad?
It's a free software that you can download from here. Version 10 has just been released April 16th. (The name KiCad actually comes from the first letters of a company of Jean-Pierre Charras' friend "Ki", being combined with Cad which stands for Computer Aided Design. It was created in 1992 by Jean-Pierre Charras.)
The software consists of two destinct steps. In the first one you're going to draw a schematic and in the second step you're going to turn that schematic into a PCB design.
Once you downloaded KiCad and successfully installed it on your Mac or Windows 10 or 11 PC or your LINUX PC you can open it.
STEP 1, make a new project.
When you've opened the program you'll be presented with a small start screen that shows all the options.
Go to the top left FILE section and click on 'New Project'. Choose a name for your project and confirm.
Like in the screen shown above there will now appear a project file with a schematic symbol and a PCB symbol. Click on the one with the schematic symbol in front of it. You can see my last project in this screen was the TB303 filter.
DRAWING A SCHEMATIC
Now you need to draw a schematic.
In the Schematic editor, go to 'FILE' and choose page settings. Here you can fill in all the data that will appear in that little text box at the bottom right of the schematic drawing. It's not necessary to do this but it's good practise.
In this box you can also set the size of the schematic drawing area which is important. You can choose a standard A* size or a custom size.
One more step before you can start drawing. We're going to import all the different components that we're going to need in our schematic like the transistors, the chips, the resistors etc. We're going to import one of each type of component. One resistor, one capacitor etc.
To do that you click on the little opamp symbol on the right, 3rd from the top or press 'A' on your keyboard. Now the component library opens up. Actually, it's called the 'Symbol Library' and components are called symbols.
You can search in this library for anything you need. If the specific part you need isn't available, just choose a part that looks the same and has the same pinout. For instance, for the TB303 filter I needed 2SC945 transistors but they're not listed. So I chose the 2SC1815 which has the same pinout and was available. This is not simulation software so it doesn't matter that it's the wrong component as long as the pinout is the same! You can change the type name of the component by selecting it and right-click and choosing 'properties'.
Drag your components somewhere into the drawing.
You can make your own symbols in the symbol editor. Say you need a rare vintage component that you can't find in the library, you can draw it yourself and assign it electrical characteristics. For that you go to the symbol editor and choose 'new symbol' which you need to place in a custom library. There are enough tutorials on YouTube on how to do this so I'm not going any further into that here. And in this tutorial I will keep caling symbols components.
CHOOSING A FOOTPRINT.
Each component needs a footprint assigned to it so the PCB editor knows how big it is and where the solder-pads need to go.
To do this, click on your component until it lights up blue. Now it's selected, type 'E' on your keyboard or 'right-click' and go to 'PROPERTIES'. Now a pop-up appears where you can change the value of the component, the designator and there's also a field called 'Footprint'. It's probably empty. Click on it and you'll see three little books appear at the right of the footprints field, with one book leaning against two others. That's the symbol for the footprint library.
Click on the little books. Now the Footprint library opens.
Look for your component name and find the footprint with the dimensions you want. This is going to be a bit of a task in the beginning because there's a lot to choose from. Most footprints have PDF datasheets attached to them that you can click and see for which components they were made. You don't have to choose the exact same component name to get a usable footprint. You can assign any footprint to any component, as long as they have the same number of pins. Once you found a footprint you like, save it in your own library so you can quickly find it again. You can edit any footprint in the 'Footprint Editor' which is the symbol that looks like a DIP6 chip with blue blocks on the legs in the top middle of the page.
You can give it bigger pads for instance. There you can also make your own footprints from scratch.
You can create your own footprint library by right clicking in the Footprint Editor, on the footprint name. A pop-up will appear where you can give it a new name and save it, and at the bottom left is a button called 'New Library'. Click that to make your own library that will appear in the list in alphabetical order, depending on the name you gave it. You can not save an alterred footprint back into its original folder because they are 'read only'.
Above is the footprint I use for resistors.
You need to assign a footprint to one component first and then, when drawing the schematic, when you need more of them you just duplicate the first one by selecting it and clicking CTRL + D. That way all the changes you made and the footprint you chose will be duplicated with the component and you don't have to set one for every little component in your schematic. This saves a lot of work and it's the reason why we import the components/symbols first, before we start drawing.
START DRAWING
When you imported enough components to get started with drawing and you gave them all footprints you can start drawing. (You can always import more components if you find you forgot a few)
Place the components where you want them and connect them together with the wire tool which is the thin line symbol on the right, 4th from the top, or press 'W'.
Use CTRL+D to duplicate any component if you need more of them. Like I mentioned before, this will save you having to enter a footprint for every component you use, because it will be duplicated with the component.
Press 'R' to rotate a component. Press 'Y' to switch the pinout of a component in the vertical plane, for instance the + and - inputs of an opamp or the pin numbers of a potentiometer.. Press 'X' to switch the pinout of a component in the horizontal plane, for instance the pinout of a transistor.
If you have a component that has pins that are not used in your circuit, Like a µA741 IC for instance with pins 1 and 5 that are often not used, then you need to use the 'Place No Connect Flags' tool (Q on your keyboard) and place an X on each of the pins that are not used. That's the 8th icon from the top on the righthand side, shaped like an -X
ABOUT THE POWER SECTION
Now you need to add a little drawing of the power input to your circuit, separate from the main schematic. You need to select a connector with 2 pins (for + and GND) or 3 pins (for + GND and -) or a Eurorack connector or something else and choose a footprint for it. Click on the 'GROUND' symbol (the one with one vertical and 3 horizontal lines under it, you know) on the right and choose for instance the +12V and attach it to the plus line. Choose the GND symbol for ground and for instance the -12V for the negative voltage rail.
Now go to the ground symbol again and choose the PWR_FLAG symbol and connect a power flag to each of your power lines. +, gnd and -. They must be connected right to the wire that comes out of the power input connector. They may not be connected to wires after components that are connected to the power input connector. They must be directly connected to the input. That way the software knows were the power comes from. You don't have to connect this part to the rest of the schematic. When you use, for instance, +12V symbols anywhere in the schematic, the software will know it connects to the power input section when you used the same symbol.
If you use a voltage regulator on the board, for instance for an extra +5V powerrails, you don't have to connect a power flag to that +5V line. It's only for power that comes into the board from outside.
A little note on placing multiple opamp chips in your schematic. If you place, for instance, a quad opamp like the TL074 in your schematic you choose the symbol and click once to place the first opamp (U1A). Then you click again for the second, third and fourth opamp (U1B,C and D) and then you click again to add the power connections to the opamp. Note that when you click the 5th time you also get a U1E label suggesting there's a 5th opamp that's part of your chip. That's KiCad's way of naming the powerpins of the opamp. You can place these powerpins on the opamp symbol, in which case you can delete the U1E designator or you can place these powerconnections in the little powersection you drew earlier and connect them all up there. That's what you should do.
When you completed your drawing you need to check it for mistakes. You do that by clicking on the Electrical Rules Checker. That's the 6th symbol from the right on the top menu bar. The one that looks like a list with a red circle with a check mark in it.
ANNOTATING YOUR SCHEMATIC
Every schematic needs to be annotated to make sure every component has a name the PCB editor understands. It puts a 1 after the name of potmeters and in- and outputs. If there are sub circuits that work independently of eachother they will be assigned different numbers to tell them apart.
To annotate a schematic, go to the TOOLS menu and click on 'Annotate Schematic'. You can also do this after you changed the footprint of a component for an other one, to update the schematic.
After the schematic is finished and has zero errors you can go over to the PCB editor to turn it into a PCB design. Don't forget to save it first of course.
MAKE SURE YOUR SCHEMATIC HAS NO WRONG CONNECTIONS IN IT BECAUSE THOSE ERRORS WILL BE CARRIED OVER TO THE PCB LATER.
Pay special attention to the power connections of any opamps in your schematic! I went wrong there many times and had components connected to the wrong polarization. I had the power pins connected directly to an opamp. The + and - of the opamp inputs are shown very close to the + and - of the power connections so you really need to look carefully to check you got it right. That's also why it's better to put all opamp powerconnectors in the powersupply section of your schematic.
Also pay attention to the pinout of any potmeters you placed. If the 1,2 and 3 is the wrong way around your potmeter(s) will function in the wrong direction, for instance getting louder when you turn it counter-clockwise. In the case of volume controls pin 1 should be connected to ground. These are easy mistakes to make. (Btw, 1 is left or counter-clockwise, 2 is middle or wiper and 3 is the righthand or clockwise pin.)
MAKING A PCB
THE PCB EDITOR
Click on the symbol for the PCB editor and let's get designing.
First we're going to go the FILE > 'Page Settings' and again fill in the data for under in the text box of the drawing. It's good practise to do this although not really necessary.
Now, in the FILE menu, click on Board Settings. Here you can input a ton of things that you want your PCB to comply with. Forget all that for now. I just want you to click on 'Design Rules > Constraints'.
Here you can set the minimum track width and other parameters that influence the copper on the board. I only really change the minimum track width to 0.4 or 0.5mm and leave the rest as it is.
Sometimes when checking a PCB for mistakes you will get a warning that there is a problem with the thermal connection of a ground pad. If you set 'Minimum Thermal Relief Spoke Count' to 1 those warnings will go away.
Now, the moment of truth.
IMPORTING THE COMPONENTS TO THE PCB
Click on 'Update PCB from Schematic' (the middle symbol of the three shown above) or click F8 to import all your components into the PCB Editor. If you get an error message in the import dialog box then cancel the import and fix that error first. It'll usually be something like a symbol that doesn't have a footprint assigned to it.
After importing you now see all your component outlines in a small space. This is called the rats nest.
Now you need to pull all this out with your mouse and start placing the components on the field in somewhat the same position as they have on the schematic. This way you get the shortest tracks between them. Pull it all out and use as many space as you want. When you have everything ordered you can start placing the components closer together and build up a nice compact PCB layout with the shortest tracks possible.
You will see what is connected to what when you drag the components around.
You'll see a thin line that connects the component to other components. Sometimes, when you drag a component around, those connections will jump between different points. Those are usually the power and ground pads and the software chooses the shortest connection.
The Ratsnest:
When I need to place a component I select it and switch back to the schematic to see which components and especially IC's are close to it. Then I switch back to the PCB editor and place the component near those elements. This helps in getting the shortest tracks.
Btw, there is a plugin available in KiCad called 'Place by Schematic' that will place the components from the rats nest in the place they occupy in the schematic. Install this plugin, it makes life a lot easier.
Go to the KiCad opening dialog box and click on 'Plugin and Content Manager'. You'll find it there. Install it and it'll appear in the toolbar at the top. Drag + Select your components and click on the plugin to do the work for you. Once installed you can also find it in 'Tools > External Plugins >'
Here's an overview of my Preferences regarding the working of the mouse when using the PCB editor. These setting allow me to move selected items freely while keeping track angles at 45°.
Once you got all the component placements done you can start drawing the tracks between the components by hand. There is a plugin that you can install, that will do it automatically, but I want you to do it by hand. This works much better. You must choose the F.Cu layer to draw on the front of the board and you must click on the B.Cu layer to draw on the back side. It is good practise to draw as many of the horizontal tracks on one layer while drawing the vertical tracks on the other layer. This prevents crosstalk and noise.
I have developed the habit of drawing as many of the tracks on the back side of the board and then draw the rest on the front. Do whatever you find works best for you.
If you can't lay a track because the way is blocked by other tracks, attach a 'via' to move to the other side of the board and continue the track there. To place a Via, right click on the active track as you're laying it and choose 'place through via'. Make sure there is no track sticking out in front of the via. That can become an unconnected track later and you'll have to find it and delete it. Before planting the Via in its place I always shake the mouse a little to get rid of bits of track sticking out where I don't want them.
TIP: Leave all the connections marked 'GROUND' unconnected. We're going to use a groundplane to connect all those together at once, later.
AFTER THE TRACKS ARE DONE.
Okay, so you have your first PCB set up. Now you need to define the edge of the board. Select the 'Edge Cuts' layer for that. Now choose the 'Draw Rectangles' tool and draw a square around your board. Leave a few millimeters between the outline and the outer components.
Once you have this done you can choose to round off the corners. For that, right click on the outline of the board and choose 'Shape Modification' from the menu. You can enter the radius of the curves in millimeters. You can also add mounting holes in the corners with the circle tool.
In between all these steps, regularly check your progress with the 'Design Rules Checker'. It will tell you what's wrong with the board. If you don't understand a certain mistake that is listed, just Google it. Many have gone before you and there are solutions to be found for all the possible mistakes you can make.
Checking for mistakes is called running the DRC but I always call it 'Run DMC' after the rappers :)
Oh, very droll sir!
If you need to make a board to a specific measurement, like for Eurorack with a specific hp size, you draw the edge of the board first, before you start drawing the tracks.
ADDING GROUNDPLANES.
One more step is to add groundplanes to fill up the board with copper and connect all the ground points together. Click on the B.Cu layer and now click the 'Draw Fill Zones' symbol or click CTRL+SHIFT+Z.
Take that tool and draw an outline around the board just like the edge cuts outline. Use the mouse wheel to zoom right in on the corners. When the outline is completed, go to EDIT > Fil All Zones or click 'B' to fill in the backside. Now select the F.Cu layer and repeat the proces for the front layer.
Again do the Run DMC, I mean run the DRC to check for errors. The warnings are not vital but the errors need to be fixed before a PCB can be made. But you'll learn soon enough how to fix the warnings too. Google is a great help for this.
You need to be aware that there will be places where the groundplane can't reach because it is blocked by tracks from all sides. In that case you'll have to connect those grounds together with a track and make sure the track reaches a ground pad that is covered by the groundplane. An indicator that such a problem occured is when you get an error without explanation.
ADDING TEXT.
You will see that the Silkscreen text next to the components (the one in yellow) only shows the designators. It's handy to put the values in too. You could double click on the designators and change them to values but then you'll get a lot of double designator warnings and should you make any changes to the board after that, all your text will flip back to designators and you can start all over again. No, it's better to click on the F.Silkscreen layer and use the TEXT tool to put the values next to the components. Make sure your text doesn't touch any of the solderpads or the yellow lines around the components. That will give problems in production with the soldermask overlapping the silkscreen or text overlapping silkscreen.
Below is the PCB for the very popular Resonant Lowpass Gate module. Note I placed the potmeters right at the top edge so the PCB can be mounted by soldering the potmeters straight in and using them to mount to the front panel. Resistor designators and values are all contained inside the component outline box. I always drag the designators to the top left and write the values in at the bottom right.
You can see what your finished board will look like by clicking on the 3D viewer or clicking 'ALT + 3'. This will even work if you haven't drawn the outline of the board yet.
ADDING LOGOs OR IMAGES TO YOUR PCB.
As you can see the PCB design in the previous picture has a picture of my logo in it.
To add an image to your PCB first measure the space on the PCB where the image will sit in mm.
Now click in the main start menu we used at the start, on the Image Converter.
Click on 'Load Source Image' at the top right.
Load your image and set the output size to the size you measured.
Choose Footprint Layer F.Silkscreen
Click 'export to clipboard'
Now go back to the PCB editor and click <CTRL + V>. The image appears and you can drag it in place.
You'll see a G*** watermark over your image. Just click on it and press delete on your keyboard.
To place an image on the backside of the PCB just press 'F' on your keyboard to flip sides.
And that's how that works.
MAKING THE GERBER FILES.
Now all you need to do is make the files necessary for production of the PCBs.
First do a final check and make sure your design is faultless. A few warnings will probably remain in the beginning but they are not crucial but 'errors' must be seen to and repaired.
A common problem will be that you need to move a component a little. To do that you must first go to Edit and choose 'Unfill All Zones'. Then you need to click on all the tracks connected to that component and delete them. Then move the component to its new place and reconnect the tracks. Then refill the zones by clicking 'Refil Zones' and then checking the Run DMC eurrh run the DRC.
Okay, now we want them files, hand them over!
Click on 'FILE > Fabrication Outputs' and choose Gerbers.
You can leave all the settings at their defaults, at least if you order your PCBs at JLCPCB which I recommend. Make sure 'Subtrackt soldermask from silkscreen' is checked on.
Some people would tell you to check on the F.Fab layer too, but this is not necessary. Production will go fine without it. Only if it contains info that the production team needs to know do you need to check it on.
Now at the top, fill in the destination folder for your files. Click on the folder symbol and go into your project folder and make a folder with the name of the project followed by 'Gerbers', or something like that. You can give it any name you want.
Next you need to choose that folder as the destination for the Gerber files.
Now click on 'Plot' at the bottom and your folder will be filled up with Gerber files. But we also need to make the drill files so in that same field click on 'Generate Drill Files...'. A new pop-up will appear:
Leave everything as it is in the picture above and click on 'Generate'. Then click 'close'.
You will know when you checked something on that you shouldn't have, because JLCPCB won't accept it. You'll get an 'Parameter Exception' error message when uploading the Gerbers to their website.
Your production folder will now contain 14 files.
Select all these files with CTRL + A and then right-click and put them all in a ZIP file.
ORDERING YOUR PCB's
After you finished your first projects you will be tempted to order the PCBs rightaway. Don't do that just yet. Sleep over it until the next day and then before you order, check your schematic for errors. Believe me I speak from experience. I thought I had been so thorough in checking but when I started out I spent more than €200 on PCBs that could go straight in the bin because they contained hidden errors.
You need a clear head for this and the mistakes will jump out at you. This saves you money and disappointment. If you have discovered errors you need to fix them in the schematic first. Then save the schematic and go to the PCB editor and import the changes from the schematic. Now you must also make the changes in the PCB design en run the DCR checker.
Naturally, if you corrected errors you must make new Gerber files before ordering your PCBs. Delete all the faulty Gerbers before you make new ones to prevent mistakes and confusion.
When everything is fine you can go to the JLCPCB website and drag that Gerber ZIP file into the box 'Add Gerber File' and you will instantly see you design appear on their website with how much it'll cost you (usually € 2,- for 5 PCBs under 100 x 100mm). 5 PCBs is the minimum you must order. You can choose between a few colours like purple, yellow, red, blue and green. An other colour does cost a little extra though and it takes 2 more days to produce.
If you choose green boards and use the most cost effective shipping (€1,50) your boards will cost about €0,85 a piece for a minimum of 5 provided they are smaller than 10 x 10 CM. The cheapest shipping option is 'Global Standard Direct Line' which takes 12 to 16 business days. I would advise you to always use that shipping option.
An there you have it. Now you can make PCBs. I found the proces quite addictive and for the last week I've been doing nothing but sit behind my two PC's making PCBs :) (The schematic on one PC screen and KiCad on the other.) Dispite it being beautiful spring weather outside. I love it! I've already ordered two filter designs and the last one, the TB303 had zero errors and zero warnings and I've only been doing this for a week!!
Make at least 4 test projects before you start thinking of ordering PCBs. I've invested a full week in learning. I spent at least 10 hours a day on this because when I sink my teeth into a new project I simply can't stop until I understand it. You'll need to be determined to learn this and then you will see quite soon that it is really not that difficult.
If you have any questions about this proces I'd prefer you this time to post them in the Facebook group first. You'll get answers sooner because a lot of the group use KiCad.
SOME COMMON WARNINGS AND THEIR SOLUTIONS:
Here I will list warnings, and errors and their solutions. I'll add to the list as I come across more.
I've had many different problems to solve when using and learning KiCad but I didn't write them all down but here are some I came across the most in KiCad.
FIRST TRY THIS.
With most errors, it's just a matter of updating from the schematic, so in the PCB editor click 'update changes from schematic' even if you haven't made any changes. Now open the DRC checker and click delete all markers and run the checker again. Errors and warnings that show up now will have a valid reason for why they are there.
INPUT POWER PIN NOT DRIVEN BY ANY OUTPUT POWER PINS:
The input of a component that needs a connection to the powerrails seems not to be connected to any power rails.
If you are sure your schematic is solid and faultless, you can simply ignore this warning. It usually comes up when you're using IC's that have wrongly labeled pins.These IC symbols are likely to have been drawn by a user or downloaded later and put in the library. It doesn't matter.
"TRACK HAS UNCONNECTED END" warning. This is a warning not an error meaning that if you order your PCB with this issue unresolved, you'll probably still be okay.
This warning comes up in the PCB editor when there are little bits of track underneath an other track, maybe from moving a component and reattaching the tracks. Anyway, to solve this, go to TOOLS > 'Clean up tracks and vias'. If that doesn't work, pull the component out of the board and check underneath for bits of track. Delete them and the track that is attached to the component so everything is clean and then put the component back in and reattach the tracks.
Now check the Run DMC thing again and your problems will probably be gone. If not, go to that track, delete it and draw it in again.
NO ERROR WARNING BUT THERE'S STILL A RED CIRCLE when I do the DRC.
If, like me, you connect all the grounds together by using groundplanes (fill zones) for the front and back layers then you can get this error. There's no error message but after the test the error circle stays red with a number of errors listed. This usually means that there are connections to ground that can't be made because the fill zone can't reach that component. The component is shielded by tracks. In this case you have to unfill the board (CTRL + B) and connect those grounds together with tracks.
It can also be an other track. When you see the red circle with a number inside and no warning text, this can mean there's a track you've forgotten to connect. Go over the board and look for unconnected components. They have these thin blue connection lines attached to them most of the time.
MISSING FOOTPRINT and EXTRA FOOTPRINT for the same component(s).
I'm not sure what causes this but it happened to me and I went back into the schematic, right clicked on the component the warning applied to and, opened 'Properties' and just clicked on the same footprint I had already chosen for it. Then I updated the PCB from Schematic and the problem was gone.
TIP: If you want to delete all tracks and start again you can do so by going to EDIT > Global Deletions. There you can check what you want to delete and then it will be deleted for the whole PCB.
HAVE YOU EVER WONDERED HOW THOSE PCBs ARE MADE IN CHINA??
Watch this:
And that's it for this tutorial. I hope it was helpful for you.
PLEASE CONSIDER DONATING.
If you find this content helpful, please consider donating to keep this website in the air and to contribute to future projects. There's a Ko-Fi donation button underneath the main menu if you're on a PC or Mac. Otherwise use this PayPal link to cut out the middle man. Thank you very much for your help!
This is BMC 83 the voltage controlled delay using the Princeton Technology (PT) 2399 chip. This is a eurorack friendly project.
-- There are now PCBs available for this project --
Dispite the fact I built over 68 projects I never build a digital delay or reverb, except for project 11 but that was a ready made effects unit. This project takes care of that. It can deliver good fidelity delays of up to about a second. It can actually do delays of upto 4 seconds but then the fidelity drops fast. The PT2399 wasn't made for such long delay times but shorter times, upto around a second, sound really good and with the long times you get some cool distortion, sort of a bitcrush effect.
This was quite an easy project to build. You can find the original article on the Barton Musical Circuits website. There are audio demonstrations on that website so you can hear what the delay sounds like. I also made a demo video myself which you can find at the bottom of this article.
This circuit will work fine on both a dual 12V or a dual 15V powersupply.
The finished delay module
Here's the schematic I used to make my layout from. I changed the opamp numbering to match that of the layout.
I didn't use the 10 Ω resistors in the powerrails as shown on the schematic. But if you have problems with hum you can include them. On the layout below, you could put a 10 Ω resistor from K-3 to I-3 and then lead the red wirebridges from there and the purple wirebridge could be replaced with a 10 Ω resistor for the negative voltage rails.
The diode and 1M resistor in combination with the 100nF cap and the top transistor with collector to pin 6 of the PT2399 make up an anti latch-up circuit that presents a high impedance to pin 6 in the first 400mSec after you switch on which gives the internal oscillator time to warm up and prevents the chip from latching up and crashing which can happen if the resistance between pin 6 and ground is less than 2K at start-up. After start-up this resistance can be much lower but not a straight short to ground. In this module the resistance is then controlled by the second transistor which is opened up by the time control potmeter or external CV input. This resistance controls the delay time.
So there are voltage controls with level potmeters for the delay time and the return amount and the module has an audio output that outputs just the delayed signal and a mixed audio output which mixes the original signal in with the delayed signal controlled by the 'Mix' potmeter. There's also a tone control potmeter which influences the return time more than it influences the tone, I noticed (see demo video below)
The delay time range goes from 60 milliseconds to 4 seconds but like I mentioned earlier the audio fidelity drops quite a bit with longer delay times, mostly at times longer than 1.5 seconds but that doesn't have to be a bad thing. It has quite a cool distortion effect. With the longest delay times you do get some clicks and artifacts mixed in the audio but it's not much. The delay doesn't do well with very high frequencies and over modulated audio. It's advisable to use a level potmeter on the audio input.
The delay times are controlled by the two transistors forming a voltage controlled current sink. The 47 Ω resistor at the emitter of the bottom transistor determins the shortest delay time while the 330K in parallel from the collector to ground determins the maximum delay time.
In my own build I did notice quite some dead space at the beginning (ccw side) of the 'Time' potmeter but lowering the value of the 47 Ω resistor didn't do anything.
I also noticed the Tone control can add some noise to the output if you turn it up more but that's inherent to the circuit.
To tame the feedback control I've had some feedback in the comments below, you can reduce the 220K resistor between pins 13 and 14 of the output opamp TL074 to about 68K. That will give you more throw on the feedback potmeter by lowering the output gain.
I urge you to download the PDF accompanying the original project. It has a comprehensive description of how the circuit works and what all the components do.
Here's a block diagram of how the delay works. This is also from the PDF that comes with the build instructions on the BMC website.
Audio in 2 is the Return input and it has the Direct Output normalled to the socket switch. So if you take the direct output into an external effect module and take the output from that module and connect it to the return input you can have an external effects loop going, creating all sorts of possibilities. You can, for instance, lead the direct output into a lowpass filter and have the VCF out connected back to the return input.
HOW TO PATCH UP THE MODULE:
To get the best out of this module you need to make a synthesizer voice in your modular synthesizer where this delay sits behind the VCA at the end of the signal chain. You can also patch it up so that the delay sits inbetween two VCA's and have the second VCA opened by an ADSR with a slow Release time. That way you get more control over the Delay time, but it's not necessary. The minimum Delay time is 60mSeconds so it won't be able to create flanging or chorus effects. But you can mix in the effect with the clean signal by using the Mix control and the Mix output.
LAYOUTS:
Here are the layouts I made for this project. They are verified as always. I used them to build my module. This was almost another hole in one. I made one little mistake. I had all four non inverting inputs of the TL074 grounded only the last opamp with the direct output must not be grounded. Once I corrected that the circuit sprung to life. Pins 5 and 10 of the TL074 are connected through the strip underneath the chip. The 'Tone' control potmeter has pin 1 not connected. It's important to wire it the way you see in the layout or it won't work properly.
Wiring:
Stripboard only:
Cuts and wirebridges. You know the drill, mark the cuts on the component side using this guide and then stick a pin through the marked holes and mark them again on the copper side. Then cut the marked positions with a hand held 6- or 7mm dril bit.
Don't forget to cut position P-8 underneath the ground wirebridge.
Here is the Bill of Materials.
It might be a good idea to use a logarithmic 100K potmeter (A100K) for the return potmeter. A lot of changes happen quite early in the throw of that potmeter. However I used a linear 100K myself and that works fine too. But the log type would be more convenient. You could use other value potmeters for all but the Tone Control. That has to be a 10K linear potmeter. The other potmeters are just voltage dividers in this circuit.
PICTURES:
Here are some pictures from the build proces:
I left out the two short wirebridges that connect all 3 ground strips at the eurorack connector together. Instead I soldered them together with some extra solder bridging the gaps.
Stripboard all wired up for testing. I normally only wire things up when I have the panel ready so I can keep the wires as short as possible but with this module I had to be sure first that everything worked. Anyway, it made mounting the board behind the panel easier coz no need for soldering and I was able to stuff all the wiring underneath the stripboard out of harms way.
This is the panel with the waterslide paper applied ready to receive a final thick coat of clear lacquer. The panel is 14hp wide (7CM). the width I normally use because it allows me to mount the stripboard flat behind the panel keeping the depth to a minimum.
Here's the panel design I made in Photoshop just in case you want to use it. It's in A-4 format 300pix/Inch resolution.
Module on the test bench:
The rear of the module. It's 3.8 cm deep so it will fit any Eurorack case.
VIDEO DEMO:
Here's a little demo I recorded showing the module in action.
Here's an interesting look at the inside workings of the PT2399 chip: --- click here ---
Okay, that's it for this one. Hope you like it.
If you have any questions or remarks about this project please put them in the comments below. Remember comments are moderated so they don't appear straightaway. Only after I read them.
The best version of the 7555 based ADSR's on this website. This one uses precision rectifiers to eliminate the problems the previous versions have. This project is small enough for Eurorack and runs fine on dual 12V or 15V and is easy to build even for beginners.
There are PCBs available for this ADSR (8V output version). See 'PCB Service'
This is another version of the two 7555 ADSR's you've already seen on this website. The previous ones by Yusynth and Rene Schmitz had the problem that, because of diode voltage drop, the envelope wouldn't get down to 0 Volt after each cycle. The diode in series with the release potmeter would stop conducting when the voltage dropped to the threshold of 700mV in case of a 1N4148 and around 300mV for Schottky diodes.
This ADSR eliminates that problem.
By using precision rectifiers made up of a diode inside the feedback loop of an opamp, you solve the problem of the 700mVolt remaining after the release cycle and so the ADSR not returning to 0 Volt after each cycle. The opamp now has that voltage drop in the feedback loop and compensates for it, effectively creating a perfect diode.
I tried to address the voltage drop problem in the Rene Schmitz version by using Schottky diodes that have a very low voltage drop of about 0.3 V (300mV) and that already helped a lot. This version lowers that even further although on my oscilloscope I could still measure a tiny bit of voltage left over but the majority of that was due to the capacitor I was using. It was about 90mV. I used a normal electrolytic capacitor for testing. I then tried a Tantalum capacitor and that lowered the offset to around 10 to 20mV. That's almost the noise floor so really no problem what so ever. It's 35 times better than using a 1N4148 in the Yusynth ADSR. The reason for this is transistor resistance. The Gate voltage, if switched by a transistor, never reaches zero because of transistor resistance. But this is such a low voltage that you can totally ignore it. So please don't go fretting about 20 thousandths of a Volt. 20mV is equal to 0V!!
Use a 1µF Tantalum capacitor like the schematic says.
The slowest risetime you can create with 1µF is 1.2 seconds. If you want longer risetimes you need to connect two caps to a switch so you switch between low and high speeds. That's up to you. I didn't include that option in this project but it's very easy to implement.
If you want to read more about this ADSR then here's the link to the Kassutronics webpage.
SCHEMATIC
I made some changes to the design of this ADSR. For one, I don't like the high value resistors on the gate input. I always get problems with the gate pulse not getting through. So because the Rene Schmitz version works so well I copied the Gate/Trigger section from that ADSR and put it in this one too. It's practically the same circuit but with different resistor values.
I also changed the inverted output to an attenuverted output. I find that much more useful because you can play with the attenuverter while you're feeding the ADSR signal into the CV input of a filter and get all sorts of cool sounds from it. You can turn it into a normal output if you need an extra output. Much more versatile I think. The schematic below has all the changes I made included.
Eventhough I used BAT43 Schottky diodes for D1 and D2 in the layouts below, you can just put in 1N4148 diodes. The voltagedrop isn't important here and both diodes have the same switching speed of 5nSec. They are just used here as reverse voltage protection.
Here's the KiCad version of the schematic. I'm teaching myself to work with KiCad and it's going very well. I taught myself in 3 days -___^
LAYOUTS:
Below are the layouts I made for this project. As always they are verified. I used them to build my ADSR and it worked rightaway. An other hole in one.
I alterred the layouts a little one day after posting this article in so far that I added a transistor to drive the LED to avoid pulling down the envelope voltage.
Wiring: (All potmeters viewed from the backside!) As you can see the potmeter wiring is a bit complicated looking so be accurate when wiring up the pots!
Stripboard only:
If with testing you notice that the envelope doesn't come up when the Attack potmeter is fully closed then use a 330 Ω resistor in series with the Attack potmeter (R8) instead of the 100 Ω in the schematic. This is something I had to do with my build.
Cuts and wirebridges seen from the component side.
You know the drill, mark the cuts on the component side, stick a pin through the marked holes and mark them again on the copper side and then cut on the marks.
Here's the Bill of Materials.
Not every component is numbered exactly as in the schematic but most of the resistors are. Order a Tantalum capacitor for C3 1µF/35V. You can use any type of 7555 timer chip. I used the ICM7555. Don't use a normal NE555 though. It might work but they're not ideal. It needs to be a CMOS type.
As usual I didn't put any decoupling caps in but if you want to include it, there's room enough on the stripboard. You can put two 100nF caps; one from plus to ground and one from ground to minus. If you feel you need extra voltage stabilization, put some 10µF caps over the power rails too. That's up to you, the ADSR works fine without them. Do not use linear potmeters. I know the 1M log pots can be difficult to find but you can get them from AliExpress (and they're good enough quality) using this link: https://tinyurl.com/3z7t3ueh
PICTURES and test results:
This ADSR has a very fast risetime. I measured risetimes of 550µSeconds! The output amplitude of the envelope has a maximum voltage of 8.4 Volt when you run this on a +/-12 Volt power supply. Maximum Sustain level is 8 Volts. This is determined by pin 6 of the 7555 (Threshold) which stops charging the capacitor at 2/3rds of VDD. (+8V). The timer stops and the capacitor is discharged through the Decay potmeter and U2-D and D4 to the Sustain level. The output will stay at the Sustain level until the Gate input stops. Then the capacitor will discharge through the Release potmeter, U2-A and D3 to 0V. As I mentioned before, the maximum risetime of the Attack phase is 1.2 seconds with a 1µF cap. If you need longer times you can put a 1µF and a 10µF on a switch and connect that to the stripboard, so you have a choise. The fast times sound amazing though when used on filters (especially the 303 filter).
Here are some pictures of the finished product. They were taken in the test phase so some components that are on the layout are not in these pictures (like the LED driver transistor for instance).
If you have problems with the ADSR not triggering correctly with certain equipment, try putting a pulldown resistor on the trigger/gate input. A 10K from the input to ground should work. This ADSR has a high input impedance so a pulldown resistor can be a solution for problems like that.
I used the same faceplate as I used for my previous 7555 ADSR's. I just exchanged the stripboard for this one and wired everything up again.
Here are some screenshots from the oscilloscope. The first one shows the extremely fast risetime of this ADSR/ With Attack set to zero you can get risetimes of 550µSeconds. This with a Tantalum cap and a 330 Ω resistor in series with the Attack potmeter, instead of 100 Ω in the schematic.
Below is a screenshot of the quickest pulse I could get with all potmeters closed. You can see the risetime is the same as above, about 550µSec and the releasetime is faster because it only has 100 Ω in series. It's about 400µSec.Total time is 992µSec. So you could create a waveform with a top frequency of 1kHz with this ADSR.
Below here is the normal and inverted output. The voltages indicated by the scope are a bit lower because I had the LED connected straight to the output. I now have the LED driven by a transistor which means no voltage pull-down so the real maximum voltage is about 8.4 Volt. Max sustain voltage is 8 Volt as is the case with all ADSR's that use a 7555 and are run on +12V because that voltage is 2/3rds the voltage of the positive powerrails. If you run it on +/-15V it would be +10V.
The sustain is actually very stable because of the use of precision rectifiers. There is no leakage of voltage from the sustain stage.
ABOUT THE +10V OUTPUT OPTION:
I had a section here about making the output voltage +10V instead of +8V but I have a tendency to over think things and I had a rethink about this. This really makes no sense and I took down the schematic and layouts for this because I think it will only confuse people. +8V output is more than enough to open a VCA and to use on a filter. Should you want to do this, you need to put a voltage divider in the feedback line from the ADSR output to pin 6 of the 7555. Put a 1K8 in series in this line and a 8K2 from pin 6 to ground. That will give you +10V output if you want it but my advise is: don't bother.
TIP: using your ADSR as a VCO. Send the squarewave output of a VCO to the Gate input of the ADSR. Now your ADSR acts as a VCO and with the Attack and Decay you can shape your own wave. It's a trick used in Psy-Trance Techno music. This ADSR is fast enough to do this. I tried it and it sounds pretty cool when you then input it into a filter.
There is one more ADSR design that tries to really come down to zero volts after each cycle and that is the ADSR PRO by Davor Slamnig. You can visit his website by clicking here.
But really, the Kassutronics design is good enough and you're not going to notice any difference in practise so don't bother.
If you have any questions or remarks about this project then please put them in the comments below. Comments are moderated and don't appear straightaway!
If you find this content helpful, please consider donating to keep this website in the air and to contribute to future projects. There's a Ko-Fi donation button underneath the main menu if you're on a PC or Mac. Otherwise use this PayPal link to cut out the middle man. Thank you very much for your help!