The Sentient Machine

Started by Freppo, March 08, 2016, 06:06:25 AM

Previous topic - Next topic

Freppo

Hi folks,
I'm releasing a new DIY project today - The Sentient Machine.

It's a modulated resonant lowpass filter with two voices, a standard wah sound and a vowel sound.
At slow speeds it makes a cool phaser'ish sweeping sound.



It's based around a variable state filter with PWM/CMOS switches as variable resistors.
The vowel setting is made out of two filters tuned differently that are swept in the opposite direction.

More info, PCB, schematic (in the build doc) avaliable in my blog at www.parasitstudio.se

I hope you like it!

cheers
/ Fredrik
Check out my building blog at www.parasitstudio.se

~arph

Ah so a bit like a pwm controlled gargletron?
I'm a bit mistified by the need for the special high speed opamp. What PWM frequency are you at?? no need to go higher than twice the max audible freq.. so at 50kHz you should be fine and this should be no problem for any regular opamp right? It's probably more to do with the triangle oscillator design itself.

Freppo

Quote from: ~arph on March 08, 2016, 11:06:47 AM
Ah so a bit like a pwm controlled gargletron?
I'm a bit mistified by the need for the special high speed opamp. What PWM frequency are you at?? no need to go higher than twice the max audible freq.. so at 50kHz you should be fine and this should be no problem for any regular opamp right? It's probably more to do with the triangle oscillator design itself.

Yes, and no. This pedal sweeps the frequency of two parallel variable state filters and the Gargletron pans between two fixed MFB filters.

The PWM oscillator frequency is 47Khz. I have tried several oscillators and they all distort at this frequency with a common op amp.
The distortion is very minor, but it needs to be perfect to work properly. I have tried just about every common opamp aswell.
I would love to see a perfect trianglewave oscillator at this frequency without the need of a special op amp, but I have spent days looking for one.
Any help with that is greatly appreciated! :)

Funny thing is that I got great result with a vintage 4558 but the new 4558 were unusable..
Check out my building blog at www.parasitstudio.se

Kipper4

Good work mate. Love the vowelly sounds.
:)
Ma throats as dry as an overcooked kipper.


Smoke me a Kipper. I'll be back for breakfast.

Grey Paper.
http://www.aronnelson.com/DIYFiles/up/

anotherjim

I for one can't think of a lower footprint/component count way to implement that PWM fast triangle, although a complete triangle or sine or whatever modulated PWM could be done in a single 8pin MCU if anyone feels so inclined.

Could an LM567 VCO be used? Timing cap voltage is a triangle IIRC? But it's amplitude might not be big enough. The LM566 might have been it, but it's obsolete.
A CMOS Schmitt trigger oscillator timing cap wave is close to triangle, but small amplitude.

~arph

#5
Quote from: Freppo on March 08, 2016, 12:41:50 PM

Yes, and no. This pedal sweeps the frequency of two parallel variable state filters and the Gargletron pans between two fixed MFB filters.


Yes, that's true.

Quote
The PWM oscillator frequency is 47Khz. I have tried several oscillators and they all distort at this frequency with a common op amp.
The distortion is very minor, but it needs to be perfect to work properly. I have tried just about every common opamp aswell.
I would love to see a perfect trianglewave oscillator at this frequency without the need of a special op amp, but I have spent days looking for one.
Any help with that is greatly appreciated! :)

Funny thing is that I got great result with a vintage 4558 but the new 4558 were unusable..

Mmm I had good results with the LM324. How bad is this distortion? Is it flattening the peaks? Or creating harmonics? The latter could be filtered and the first would only lead to some non-linearity in the extreme ends of the pwm duty cycle.

As Jim stated, I would now do this with a uC. Works great with an ATtiny45 for example.

Btw, just listened to it and the vowel sound is Jajajajaja great!

dschwartz

Amazing work! I love when new stuff comes up..
----------------------------------------------------------
Tubes are overrated!!

http://www.simplifieramp.com

frequencycentral

http://www.frequencycentral.co.uk/

Questo è il fiore del partigiano morto per la libertà!

akc1973

Quote from: Freppo on March 08, 2016, 06:06:25 AM
Hi folks,
I'm releasing a new DIY project today - The Sentient Machine.

It's a modulated resonant lowpass filter with two voices, a standard wah sound and a vowel sound.
At slow speeds it makes a cool phaser'ish sweeping sound.



It's based around a variable state filter with PWM/CMOS switches as variable resistors.
The vowel setting is made out of two filters tuned differently that are swept in the opposite direction.

More info, PCB, schematic (in the build doc) avaliable in my blog at www.parasitstudio.se

I hope you like it!

cheers
/ Fredrik

This is sensational!
Builds: Bazz Fuss, Orange Squeezer, Omega, Green Ringer, Dist+, X-Fuzz

Mark Hammer

1) Sounds good.  Kudos.

2) Those would appear to be state-variable filters.  Have you tried tapping other nodes in one or both filters for other kinds of sounds?

deadastronaut

https://www.youtube.com/user/100roberthenry
https://deadastronaut.wixsite.com/effects

chasm reverb/tremshifter/faze filter/abductor II delay/timestream reverb/dreamtime delay/skinwalker hi gain dist/black triangle OD/ nano drums/space patrol fuzz//

Freppo

Thanks guys. I'm glad you like it!

Quote from: anotherjim on March 08, 2016, 02:30:32 PM
I for one can't think of a lower footprint/component count way to implement that PWM fast triangle, although a complete triangle or sine or whatever modulated PWM could be done in a single 8pin MCU if anyone feels so inclined.

Could an LM567 VCO be used? Timing cap voltage is a triangle IIRC? But it's amplitude might not be big enough. The LM566 might have been it, but it's obsolete.
A CMOS Schmitt trigger oscillator timing cap wave is close to triangle, but small amplitude.
Thanks for the suggestion. I have never played around with a LM567. I will give it a try. :) I tried with a cmos schmitt oscillator but the triangle waveform is too uneven and weak. A better solution is to made a pulse oscillator and a pulse stretcher from a CMOS schmitt trigger, but it will involve more parts and it's also sensitive to voltage changes so it would need a voltage regulator aswell.

Quote from: ~arph on March 08, 2016, 03:18:15 PM
Mmm I had good results with the LM324. How bad is this distortion? Is it flattening the peaks? Or creating harmonics? The latter could be filtered and the first would only lead to some non-linearity in the extreme ends of the pwm duty cycle.

As Jim stated, I would now do this with a uC. Works great with an ATtiny45 for example.

Btw, just listened to it and the vowel sound is Jajajajaja great!

The distortion is flattening the peaks mostly and it effects more than the extreme ends of the PWM cycle.
I had very poor results with an LM324. I will post a few scope stills with different op amps when I have the time.
A uC would be a good option, but it would make it less DIY friendly (and I'm a total noob at programming).

The TLE2074 isn't hard to find (mouser, digikey, farnell, ebay ect.) and not that expensive (cheaper than a vactrol)
So for now I think I'll stick with my design, but for future stuff I would love to find an alternate solution that uses common parts.
I'm already working on a sample and hold modulated filter with PWM/CMOS switches, and it would be nice to have a different PWM solution for it. :)

Quote from: Mark Hammer on March 08, 2016, 07:26:45 PM
1) Sounds good.  Kudos.

2) Those would appear to be state-variable filters.  Have you tried tapping other nodes in one or both filters for other kinds of sounds?
Thanks! Yes, they are. I played around with it for many days and many different configurations.
I finally settled on a pretty basic setup (kinda what I had from the  beginning) that sounded the most "talky". :)
Check out my building blog at www.parasitstudio.se

digi2t

Excellent work Frep! Looks like you isolated and extracted the best chromosone in the Ludwig Phase II, and rebuilt it into a stand alone unit.  :icon_lol:
  • SUPPORTER
Dead End FX
http://www.deadendfx.com/

Asian Icemen rise again...
http://www.soundclick.com/bands/default.cfm?bandID=903467

"My ears don't distinguish good from great.  It's a blessing, really." EBK

anotherjim

I wouldn't have expected a 324/328 to do well at 40kHz. Some years ago I wanted a precision full wave rectifier for 40kHz and it was difficult to get a clean response without a fast op-amp. I think I used AD822, but Analog Devices parts are very expensive for some reason. About twice the price of TLE2074 and only a dual.



PRR

> without the need of a special op amp

The integrator isn't so bad.

The comparator IC3.1 can't be done real-right with any jellybean opamp; it has to slew large voltage very quickly or the tips will be murky.

Faster comparators exist. I don't see any advantage over an extra-fast opamp.

TLE2074 is faster than average, but not blazing fast.... Hmmm. 

Mouser is finding the old-old-old LM118/LM318, which is a fine choice, but costs over a buck (for a single!) and can be tricky. LM6171 LM7171 run 600V/uS but cost $3 each, and IIRC can be tricky. Of course all high-speed parts will be finicky, prone to howl in the TV band and ignore their audio/triwave duties.

Dedicated comparators exist and could be adapted into your plan. Again the really fast ones need strict nursing and tend to cost more than a buck. Through-hole LM311 is still available under a buck. It is intended for single-supply which I guess is fine. It requires a pull-up resistor, which may be a speed/power compromise.
  • SUPPORTER

anotherjim

A flat top triangle with a 324 may just be the Vref is too high for that chip since it won't get closer than 1.5v to the + supply but will work down to ground.  Drop the Vref divider feed by 1.5v with diodes.

The op-amp as comparator needs a fast slew rate. A slow edge between logic thresholds  can cause input jitter inside buffered CMOS, the solid-state equivalent of contact bounce. I don't know if that could be audible in a 4066 PWM resistance, but it ruins operation of edge clocked logic like the 4013B.

A simple BJT inverter might be better for the B phase than another op amp.
The LM393 dual comparator just might be fast enough. One half could also be the B inverter.

Freppo

Thanks for the input guys!

I've played around alittle with a comparator (LM339 quad comparators) for both triangle wave oscillator and comparator duties.
The triangle wave oscillator on page 17 to be specific http://www.ti.com/lit/ds/symlink/lm339-n.pdf
Can't get it to work properly tough. The triangle wave is very low amplitude. I'll give it another go when I have more time.
Check out my building blog at www.parasitstudio.se

PRR

> triangle wave is very low amplitude.

The 5.1K:100K on top-right device sets the peak of the triangle to 5% of the supply.

Change that 100K to 10K. This will also drop the frequency a lot, you want a smaller timing cap.

And I believe the wave will become exponential instead of nearly-triangle.

But for supersonic triangle of excellent waveshape, both the plan and the chip seem funky to me. I would not spend a lot of time on it.
  • SUPPORTER

anotherjim

Looks like there's a bit of malarkey in that to save using some op-amps. Those 339 have open collector outputs so making the output source & sink currents match is going to be tricky because source current is going to have to come via a pull-up resistor - the chip can only sink. So in the basic schmitt/integrator osc, a comparator makes an easy schmitt trigger, but due to open collector output, it needs more work than it's worth to control the integrator. I can only see the pwm comparator and the inverter benefiting from being in a comparator chip.

Have you tried the CMOS inverter schmitt/integrator for the oscillators and a dual comparator for comparator & inverter (don't forget pull up resistors on the outputs)? That's a 14pin 4069UB and an 8pin LM393 total. Similar count to what you already have?
It could be worth using both comparators working off the same inputs, but the one for phase B inverted by having the input polarities swapped, so phase B has closer timing to phase A.



anotherjim

#19
This is what I was thinking of. Haven't worked out the values for the carrier oscillator....