Open jpcima opened 5 years ago
Hi @jpcima
Well, usually I ain't upload the faust files any more, but as you ask for it, I valvecaster.txt
'll attach it here. Note that I need to change the file extension in order to upload it here, it's a .dsp faust source file. It's a iir filter generated from the schematic of the Valve Caster pedal. It is generated with the dksimulator from the guitarix project. And so is the valvecaster_table.h file, generated by dksimulator from the netlist of the schematic file.
regards hermann
Thanks for explaining. This gave me better understanding of the underlying process. In fact I didn't know of dksimulator software and gave it a try, and I did find it quite fascinating there was behind Guitarix a convertor of electronic schematic to DSP algorithm.
In fact I am going to try get some results out of this software, as we have attempted to make an approximation model of Tech21 Bass Driver, and I'm sure this can be of a lot of help.
A question: Ok about obtaining the IIR filter, how then to deduce the non-linearity function? I try to get some familiarity with the tool and the method.
Basically I run the circuit in the dksimulator, feed it with a signal , np.linspace(0, 1, 200), and capture the response in the table. I use therefore scripts similar to "trany_table_gen.py" from the DK folder.
You'll find there some examples and build script's to get started. The "build-blueclipper.py" script, for example, split the circuite in to 2. slices and produce faust iir filters for each, then it insert the non-linear response of a pair of 1N4148 diodes and concatenate all back into one faust source file.
PS. I've a short look at the schematic of a tech21bassdriver, and it looks like the dksimulator could simulate it. Just, I guess it needs to be slitted into smaller part's, to reduce calculation errors in the simulator. (Yes, it isn't error free)
Thanks for the information, and also for the effort to go looking into actual schematics.
I'm shy to continue the discussion here due to being off-topic and I don't want to annoy too much.
I'll let it known that I uploaded a schematic capture which I realized using gschem software.
(for now I make baby steps because of little experience of electronics, and I've yet to get past some singular matrix
errors in the simulator.)
Hi Nice work. I've give it a shot, the main issue is that the OPAMP model you've chosen isn't supported by the dkbuilder. You need to replace it with the model you find in the Startset.sch file. (the node numbers didn't match)
I've split out the input buffer and it build fine with the changed OPAMP model, I do the same for the tonestack, and it build then. Haven't tried to build the complete circuit, but as I said in the post above, it would be better to split it into smaller pieces, and stick them together afterwards, to reduce calculation errors in the simulator.
I reopen the issue, we could talk about it here, as otherwise it is quite here anyway.
the node numbers didn't match
I tried and I had success in generating several circuit parts. Thanks! update At first look this can need a significant amount of cuts, maybe one at least per part which involves an op-amp.
One thing: do you have an idea about generating accurately the "blend" part when the subcircuits are analyzed in isolation?
Onething: do you have an idea about generating accurately the "blend" part when the subcircuits are analyzed in isolation?
You can stick all together in faust code, then, for example you could use a dry/wet unit to blend the output from the inputbuffer U1A /and/or the output from U2D to R26.
pseudo code in faust will look like that:
wet_dry = vslider("wet_dry[name:blend]", 50, 0, 100, 1) : /(100);
dry = 1 - wet_dry;
process = p1 <: _,(p2:p3:p4:p5): dry,wet:>_;
Hi @brummer10. I have some interest in studying GxValveCaster and I don't find faust source code which generates the source
valvecaster.cc
. Is this available at a place I'm unaware, or will you make this file public later ?Thanks. notify @jujudusud