How Dual PWM works. Part 1 (of 2)
17:32
SITH Soldering Video
47:16
5 ай бұрын
The grand final studio / workshop tour
1:14:01
Build video for the Touch me now!
56:01
Sometimes life happens...
9:07
3 жыл бұрын
Summer Update 2021
14:05
3 жыл бұрын
Pre Summer vacation update...
5:49
3 жыл бұрын
Пікірлер
@kalj7
@kalj7 5 күн бұрын
Did you ever end up making the follow up with dry/wet, input attenuator, etc?
4 күн бұрын
Oh yes I did… I’ve been pulling my hair with this for years! 🤣🤣🤣 I had one version that I was ok with and it is the one you see in many of my recent videos. However I wasn’t really satisfied with how the dry/wet worked. So there is a whole reworked version that might be better waiting in my pcb cart. ;) I also added feedback and is also working on tweaking the clock.
@audiodiwhy2195
@audiodiwhy2195 5 күн бұрын
Got it working! I used .22uF caps as the "customization" not 22pF OOPS so that's why the resonance didn''t work. Once I got the right value caps in it started working! Also needed to mod--on the orig EFM schem, it shows freq cutoff pot with +12 on one side and ground on the other. Wrong, I needed +12 on one side and -12 on other other. Thanks for the inspiring video!
Күн бұрын
Yeah that one was a bit tricky to get working for me too. Thanks for the heads up on the -12v/gnd error!
@randywoolf8052
@randywoolf8052 15 күн бұрын
Great video and information. The project is outstanding. I was trying to figure out how to do something like your project. Your solution was wonderful. Thank you for your time and effort!
13 күн бұрын
Once your project is done id love to see the results. :) Haven’t seen many that does their own movable shelves. Especially not affordable ones. :)
@0z33y
@0z33y 19 күн бұрын
I did notice they are not proper patch cables , they are stereo jack leads
13 күн бұрын
Yes they are. But they were cheap. Who cv was the goal at that time… :)
@OttoAbar-p2o
@OttoAbar-p2o 22 күн бұрын
Jo Plains
@matsmorot
@matsmorot 24 күн бұрын
Just started my modular journey (still theoretical) a couple of days ago, and now I can't stop. This is fantastiskt Kristian! Don't stop doing what you do! Måste nog beställa allt du har i din shop.
24 күн бұрын
Haha. It’s a rabbit hole that never ends. 😅 alltid kul med fler svenskar som bygger. :)
@NUEZCASTROMIGUELELADIO
@NUEZCASTROMIGUELELADIO 28 күн бұрын
no ce que es
@NUEZCASTROMIGUELELADIO
@NUEZCASTROMIGUELELADIO 28 күн бұрын
no ce que es
@kostas8018
@kostas8018 28 күн бұрын
I never managed to get this to work with the outputs of a Behringer Crave (VCO, LFO), although it works with other modular LFOs. No idea why.
@robertallenpayne
@robertallenpayne Ай бұрын
Dude. I’ve been looking at modular for a month or so now. I love your channel and your presentation style is awesome. Thanks for this series!!
@sebastian52217
@sebastian52217 Ай бұрын
I ordered an STM32 off aliexpress and it ended up being a 32kb version. When I go to program the board it says there is not enough memory...do I need to order a 64kb version?
Ай бұрын
If you got a 32kb version and you ordered a C8T6 the. They sent the wrong one. Check the chip on the board with a magnifying glass. And if they sent the wrong one you should be able to get a refund. Or you ordered the wrong board? You actually need a 128kb version the CBT6. But most C8T6 (64kb) actually has more memory in them that is why they can be used. But 32kb is the wrong chip. You need at least the 64kb version.
@Bass_Estrada
@Bass_Estrada Ай бұрын
Nice idea 💡
@secilcemaldemirsoz7229
@secilcemaldemirsoz7229 Ай бұрын
I think it also erases the bootloader of the microcontroller, at least for me .
Ай бұрын
Yes that is probably true. This way it totally replaces the program on the chip. You can however depending on the hex file set it to be written to specific regions of the chip memory (at least other similar techniques work that way). But that is advanced class. ;)
@Sachyel
@Sachyel Ай бұрын
Honest question. Why arduino Nano and not the BluePill which is more powerful?
Ай бұрын
Good point. I have no good excuse except I didn’t think a more powerful one was needed. 🤷‍♂️😅
@Sachyel
@Sachyel Ай бұрын
Totally fair.
@Sachyel
@Sachyel Ай бұрын
Amazing work dude.
@CircularMirror7
@CircularMirror7 Ай бұрын
Looking forward to my build
@MeeBilt
@MeeBilt Ай бұрын
Great video - well worth watching in whole. Good that you pointed out and explained the accuracy problem.
@feudiable
@feudiable Ай бұрын
I'm looking forward to part four of this trilogy!
Ай бұрын
Hahahahahaha!
@ninllot
@ninllot Ай бұрын
me sirvió, muchas gracias
@DanielAnderson-k6v
@DanielAnderson-k6v Ай бұрын
Mans amazing I've been trying for 4 hours and I stumbled onto this video and it worked amazingly great job on the video
@fathomisticfantasy2681
@fathomisticfantasy2681 2 ай бұрын
Oddly enough this is not far from what I do. Though my kits are prep-work for projects. I will spend hours sorting through parts before I actually start on something. I can blow an entire paycheck on music because that is the only way I can get through it.
@IG-88r
@IG-88r 2 ай бұрын
IDK what i did wrong, but i build two of this (one using the schematic and other using a stripboard layout someone shared) and both burn immediately, first they burn the pots and then the chip; i already checked the orientation of the IC and continuity but just happened :D IDK whats wrong on my side but i know its my fault
@jonathanpiette
@jonathanpiette 2 ай бұрын
Thank you! you save my day, I was not able to find the right connections
@safaaomran2815
@safaaomran2815 2 ай бұрын
hi frind please lwant to make minlab metal detector sound ineed to your experiance
@ProjetHomeStudio
@ProjetHomeStudio 2 ай бұрын
Oh boy I want a crispy sound like that !!!! <3
@ottootto6396
@ottootto6396 2 ай бұрын
Thanks for your work! 5 years later, I know, but did you make the shelves CV controllable?
2 ай бұрын
No. Some “complications” came in the way like divorce and moving away and back. So I actually removed all control circuitry. And since I got back I only use it manually. :)
@ottootto6396
@ottootto6396 2 ай бұрын
Oh yeah, life happens. Good to see that you're still at it :) I like the idea to control things in my environment with my modular. Lights would be somewhat obvious, but I like the idea of moving curtains with an LFO or something like that. Probably not overly useful, but I imagine it fun to look at. ...and the backlog of ideas just keeps on growing *sigh*
2 ай бұрын
@ottootto6396 oh the backlog…. 😭😭😭
@guitarBoyJunior
@guitarBoyJunior 2 ай бұрын
Thank you! I learnt a lot! :)
@thermochopps
@thermochopps 2 ай бұрын
Hi Kristian, thank you for doing what you do for the modular community. I'm having the same problem with several Gris builds (PCBs and parts sourced myself) that I'm hoping you might have some insight into. After finishing the builds and flashing the firmware, everything works except for the ability to change the clock resolution. When I try to change it using R20 (E1) via the advanced settings, the full range of the pot only selects the middle and right LEDs. Turning the pot fully CCW doesn't light up the left LED, but rather the middle LED stays lit. The clock resolution also remains the same regardless of whether the middle or right LED is selected. The left LED works as expected for all other functions. I'm guessing it's a hardware issue, but I'm unsure where the problem lies. I'm using B10K for all pots, MCP6002 and LM328 for opamps, 1N4733 5.1V for D2, and the rest of the parts look correct, but I could be overlooking something. Of the 5 Gris modules I've built, 4 are having the same problem. The first one I built much earlier is fully functional, but I no longer have it to compare against the others. Any advice on you can give would be much appreciated. I demonstrate the problem in this video: kzbin.info2NQh6wRwQVU?feature=share
2 ай бұрын
Hi, first of don’t use lm358. I thought it worked in the beginning but changed the info after that to only use mcp6002 or othe rail to rail opamp. The reason is that if you don’t have rail to rail you can’t get all the way down to 0 and all the way up to 5v and then you can’t reach some values. That is the only thing that I can really think of. Try that and let me know.
@thermochopps
@thermochopps 2 ай бұрын
Thanks for the reply Kristian. 3 out of the 4 non-working builds are using MCP6002, so the problem might not lie there. But good to know not to use LM358s. I will keep troubleshooting. Cheers.
2 ай бұрын
@thermochopps what voltage do you get out of the arduino? If it is too high that might be a problem. Bad voltage regulators can give a less precise value.
@thermochopps
@thermochopps 2 ай бұрын
Hi Kristian. I finally figured out what the problem was: dodgy MCP6002s from Ali Express. When I replaced U1 with a trusted 6002 from Mouser, the problem disappeared! Until now I haven't had a problem using common ICs sourced from Ali Express, but there's always a first time.
2 ай бұрын
@@thermochopps Great you found the culprit! Have fun using the module aswell :)
@mariobv947
@mariobv947 3 ай бұрын
Hi Kristian, why don't you try Pulse Density Modulation or PDM? I know there is hardware within a MCU that performs PWM, and I don't know any MCU that outputs PDM via hardware, but the algorithm is as easy so that can be emulated using timers interrupts. I will explain the algorithm using words because there is chance that if i write pseudocode, my comment would be censored by yt. The general algo for PWM is: -Let CNT be a counter var that increases from 0 to N where N is the PWM period. Typically N is a power of two. Let D be the target sample data. -PWM output is 0 when CNT is below D, elss is 1. -CNT resets to 0 when the cycle finishes and D is updated to the next sample. The algo for PDM is not much complicated. Let be ACC an accumulator with an arbitrary value, but for convencience, the start value is 0. Then for every increment in CNT, D is added to ACC. If ACC is above N, output is 1 and N is substracted to ACC, else output 0. When CNT reaches N, it becomes 0 and D is updated. No other action required for ACC. This way, a 50 percent duty PWM something like 0000000011111111 while in PDM is 010101010101010. This is like PWM but ones and zeros are interleaved, thus filtering is much easy because energy of the signal is concentrated in high frequencies.
@mariobv947
@mariobv947 3 ай бұрын
Forgot to say that if N is a power of two, then PDM is even easier. You add D to ACC in every step, and let's say that you have a PDM of N equal to 2 to the 12th power. Then in each step you output the 12th bit of ACC and after that you reset such bit in the ACC variable. In PDM, linear interpolation is trivial. Let ∆ the difference of current sample and the next sample in the sequence. Then you shift D so that you multiply the value by N. If 12 bits, then you shift D by 12 at first. Then, for every PDM step you add ∆ to D, and D to ACC. Instead of outputting and resetting bit 12 of ACC, you output and then reset bit 24 because D is shifted 12 places.
@zexusdexus4193
@zexusdexus4193 3 ай бұрын
Does CNT increase from 0 to N or from 0 to N-1 ?
@mariobv947
@mariobv947 2 ай бұрын
@@zexusdexus4193 For both PWM and PDM, the counter counts up to N because the analog range of the output includes Vcc (that is, N+1 values from 0 to Vcc) while in a regular DAC the range goes from 0 to N-1 because the output can't reach Vcc as there is always a resistor tied to ground. Thus the Max value of the output in a resistor DAC is Vcc*(1-1/N). However, for large N it doesn't matter so much.
2 ай бұрын
It sounds interesting and I get it in denser values. However 0000000000000001 will still be a large gap won’t it?. So in those edge cases you still need the rc filter to be able to smooth this gap. Or am I thinking wrong? Also. Since this can’t be done in hardware it would be quite code intensive. ;) But a cool idea and something I haven’t heard of before thanks! :)
@mariobv947
@mariobv947 2 ай бұрын
Yes.... And not. The low frequency artifact's energy for edge values such as 0000000000000001 or 1111111111111110 is the same as in 1010101010101011 and it's close to the quantize noise, so the RC filter just have to lower those artifacts below the quantize noise level. But... In PDM it is really easy to dither such artifacts without losing bits resolution. Do you remember that i said that, for each cycle, ACC can have an arbitrary initial value but for convenience could be 0? Such initial value controls where the pulses are spread throught the full cycle, although the amount of pulses doesn't change. Let's say that you have a stream of samples of the same value (so you have a DC level) such as 0x0001. If you randomize the initial value of ACC in each cycle, you get a sequence at the output like this: 0000000000000001 0001000000000000 0000000010000000 0000000000100000 0100000000000000... Here the sample cycle tone disappears even being below 20kHz. You are right that implementing this in code can be very "runtime consuming", but the ISR is so simple that can be done with just a few assembly lines, and modern MCUs such as the family STM32G0xx... Have a fast TRNG hardware, so the dithering comes almost free.
@xavierayayaell546
@xavierayayaell546 3 ай бұрын
I made this from the schematic and it did not work at all, maybe because I used a regular CD4017 and powered with 12v. It was a really good bit of experience fixing the design as the schematic has multiple errors: Diodes needed from pins 11 and 12 of the CD4081 100k pull down resistors on all CD4081 inputs. There is no way this circuit can work without them. The voltage divider for the comparator op-amp is completely wrong, should be something like 10k/1k not 100k/1k (NO WAY AT ALL THIS CIRCUIT COULD WORK, WILL BE PERMANENTLY SETTING RESET TO HIGH) The op-amp needs powering with GROUND and +12V, not your usual -12v/+12v (NOT MENTIONED AT ALL) I used the 3 spare op-amps to: 1. Boost my beatstep pro's 3.4v clock signal to around 9v so that it would trigger the hi state on the CD4081, 2. buffer the CV outputs before I passed the CV output through a voltage divider (as my logic was all 12V), then finally 3. to buffer the output of the voltage divider to the final CV out (as CV4017 unbuffered as per the original design is not stable across all modules) Along the way I had all sorts of problems with basically every aspect of the functionality, it has completely taken me to another level with regards to troubleshooting and even electronics knowledge. Having said that, why these schematics are posted as though they work I do not know - shitty information and a waste of time. Have a great day.
2 ай бұрын
Sorry for your misfortunes and that the schematics didn’t work for you. When doing these I was also learning. Although I do believe the schematics worked since that is what the pcb was based on. I am however happy that you learned so much from this experience. Sorry for your wasted time. Also thank you so much for your detailed error checking process. Hope it will help someone else.
@VERIF1ED-USER-bot
@VERIF1ED-USER-bot 3 ай бұрын
Are YOU italino ?!
3 ай бұрын
Nope. Swedish. Do I sound Italian? 😅
@VERIF1ED-USER-bot
@VERIF1ED-USER-bot 3 ай бұрын
you look italian++
@thermochopps
@thermochopps 3 ай бұрын
I stumbled upon your guide while trying to remember how to upload the Grids.hex file to the Nano for a Gris build. What a coincidence. 😀
@TheKvc
@TheKvc 3 ай бұрын
at 14:46 , i think, it is better, if you add these 3 lines at the end of each function [stepper1 & stepper2] that way,whenever you call it to move a step or two, it will latch the value out to the actual driver for making that happen in real time. kindly, correct me if i am wrong here. Great video btw :)
3 ай бұрын
It was a long time I wrote this code. You might be correct. Thanks for the input. :)
@Kev.saltarelli
@Kev.saltarelli 4 ай бұрын
I built this module last night. I thought there was an issue, but it turns out I foolishly uploaded the original peaks hexfile after running the bootloader, like one might with different clones. After installing the correct firmware it works brilliantly. It is an excellent kit which is fairly priced. Kristian does a great job of offering a fun and seriously useful diy eurorack experience. Many thanks!
4 ай бұрын
Awesome you found the error! And since the only thing that is changed in the Beaks firmware is how the output is handled that explains why everything else worked and only the output was the problem. Hope you’ll have much use and fun with it. 👍
@Kev.saltarelli
@Kev.saltarelli 4 ай бұрын
Exactly! PWM! It was such a silly error on my part. Awesome kit, Kristian. I plan to buy a couple more. Please keep up the good work. I hope you offer more kits like this.
@Kev.saltarelli
@Kev.saltarelli 4 ай бұрын
I'm going to buy a couple more boards from you. They are great. I really love this kit. Simple suggestion, with the beaks module, the resistor for the push buttons should be 100R. Having 2k for the other 5 leds is great, but the led buttons are invisible with anything greater than 220R.
4 ай бұрын
I think the 2k leds worked well for the blue leds. But yeah. Maybe should add two more resistors so one can choose. :)
@robotopsyrobotopsy6486
@robotopsyrobotopsy6486 4 ай бұрын
I'm using those clever boards for the DIY Malgorithm and Tyme Sefari expanders. There's no more supplies at THONK. Is there anywhere else I can get those ?
4 ай бұрын
Hi, so nice to hear people using these and finding them useful :). You can get them in my Tindie-store, a bit cheaper and also with a discount at four or more... You find it here: www.tindie.com/products/16805/
@ChrisMayer-ui1tb
@ChrisMayer-ui1tb 4 ай бұрын
Just a quick note, as I just did this and wanted to see how others also did it. It is better to turn all the digit pins all off before setting the next number's segments. Then set the segments you want before turning on that digit. You'll notice a faint 0 bleeding into digit 1, and a faint 1 into digit 2 etc. because you are turning on digit 1 before you set the segments for the 1, and the previous 0 segments are still on for a few microseconds!
@leiferickson3183
@leiferickson3183 4 ай бұрын
Wow, looking forward to it. I have never heard of dual PWM before.
4 ай бұрын
Well let’s hope I can explain it. It is awesomely useful for sounds and control signals (cv) ;)
@biskwikman
@biskwikman 4 ай бұрын
Hello, thank you for your video and product! I have a question. I have 2 STM32s, one has 32kb flash size, and one has 128kb flash size. Will either one work?
4 ай бұрын
Probably only the 128kb one will work. BUT… it also depends. Some stm32 shows less memory than they have (also some unfortunately show more than they have). Are they both C8T6 though
@biskwikman
@biskwikman 4 ай бұрын
Ah, only the 128kb one was C8T6. Thanks for pointing that out! It's working great! Thanks again for putting this all together!
@CircularMirror7
@CircularMirror7 4 ай бұрын
Where do you buy the resistors looks very clean way to make kits packed into that box.
4 ай бұрын
I buy the bulk of my components from lcsc. While also buying pcbs. That way I get a little bit cheaper shipping. Although most resistors are in Thai food container (500pcs and up) or innormal component bins (up to 500pcs) as you see on the wall in front. So it is only a few components that have these fancy boxes. I think the smallest box you can get is 1000pcs.
@haruruben
@haruruben 5 ай бұрын
Insert Dark Side of the force joke here
5 ай бұрын
Haha! Yeah, I had the thought. It’s the reason I switched to red leds. I couldn’t think of any Sithlord who had another color of Sabre than red. Even though I think yellow was cooler for the module. :)
@PWMaarten
@PWMaarten 5 ай бұрын
You can chain this circuit for more folding stages.
@mymodularjourney
@mymodularjourney 5 ай бұрын
Fun module
@angia1618
@angia1618 5 ай бұрын
Nice one! Seems super handy for any rack, I'll probably try building one after I build a Beaks or two ;)
@CircularMirror7
@CircularMirror7 5 ай бұрын
How's that dsp 100 working?
5 ай бұрын
Hmm... to keep it on topic for this video the development has somewhat stalled from feature creeps... :D :/ So... I was done, and happy with it, but then decided to add feedback for the signal and speed control to the CPU.... and that is where I stalled.... I'll get it moving again.... just needs to do something other that works first ;)
@CircularMirror7
@CircularMirror7 5 ай бұрын
Looking forward to it
@reverend11-dmeow89
@reverend11-dmeow89 5 ай бұрын
R1? What method did you use to calculate its value? That bit is the only reason this quantity 100 LM13700 ICs I bought last year (now hoping they are not fake, based on what I have heard about eBay, AliExpress, Temu and others selling fake XR2006 and ICL8038 signal generators with wrong components in kits all over) I would have my 8Stereo/16 Mono Inputs by same outputs Matrix Mixer built by now. Thanks
@kensyootoob
@kensyootoob 5 ай бұрын
Most excellent! I've been searching how to do this very thing with switches being connected to an ESP-32, so I would have WiFi control of my computer monitors (which have no IR interface). Thank you! :)
@bernardodeoliveiradossanto8750
@bernardodeoliveiradossanto8750 5 ай бұрын
Does someone have stripped board schematc of this? It would be a lot more easier to understand and build.