MUFF WIGGLER Forum Index
 FAQ & Terms of UseFAQ & Terms Of Use   Wiggler RadioMW Radio   Muff Wiggler TwitterTwitter   Support the site @ PatreonPatreon 
 SearchSearch   RegisterSign up   Log inLog in 
WIGGLING 'LITE' IN GUEST MODE

Dervish: 12HP FV-1 euro FX
MUFF WIGGLER Forum Index -> Music Tech DIY Goto page Previous  1, 2, 3 ... , 28, 29, 30  Next [all]
Author Dervish: 12HP FV-1 euro FX
kogz23
Yup, you were right, it was poor soldering. Pin 16 of the Spin chip was not properly soldered, This was one of my first SMT projects, some of the soldering was pretty shocking!
So now it working correctly. I will experiment with different clock sources soon...Thanks!
defalut
Hi,

I just e-mailed and i hope i will get a Dervish early 2019; not building my own since i don´t have the skills yet but i´m learning to roll my own modules so soon i hope.. smile

About the effect patches, i´m looking for a delay where feedback can be modulated, either with internal filters or external modules via send/return fb loop.
Trying to make some dubby techno here but i´m missing decent delay and reverb, so i hope Dervish can help me with that.
What do you think? Any of you use Dervish for dub-*?
toneburst
The Dervish doesn’t have external feedback loop inputs and outputs.

You could setup external feedback through a filter or EQ module with a mixer module.

Several of the delay programs have EQ in the internal feedback path, though, and control of tone and feedback on the pots/CV inputs.
gbiz
to add to what toneburst said

WRT external processing ... The FV-1 doesn't have any means as such to route the wet signal externally for processing before passing back into the dry signal. It can be done in code, using one of the DAC outputs as the feedback send & one of the inputs as the feedback return. Downside of this, the effect becomes mono. This needs dedicated coding, & none of the delay programs in Dervish currently have it, so it'd need to be coded wink

(This level of control is much easier to do with Dervish than with uDervish as you have individual control over the dry/wet mix for each channel).

But this is a modular synth. Add a few external mixers, run Dervish 100% wet, take the wet signal, process it & then mix it back in with the dry. It's not quite the same, but close. Couple this with dedicated code would be betterer.


WRT internal processing ... The FV-1 has 3 controls. With most of the delay programs, two of these are taken with the delay time & feedback amount. Typically the third is used for damping (typically a fixed frequency BPF), though the basic damping amount could be fixed & the third control could be assigned to some more dynamic. I like the idea of have the controls impact a bunch of parameters - eg as the feedback increases, the frequency, or the q of the filtering changes. As the damping increases add an extra amount of chorus or reverb. None of the existing programs have it to any great extent. It needs to be coded. wink (This is an area of interest to me & I've been experimenting with doing this recently, but nothing that i'd want to share right now).


To me, dubby techno delay needs a bit of bit of chorus & reverb. So again, with a single module, what parameters do you control with those 3 controls ?. Do you fix the reverb level ?. Or the damping ?. Or the chorus frequency ?. Or ... ?

2 dervishes work better TBH, one with delay, one with reverb. Take the output of the reverb & feed it back through filters/overdrive back into the delay, or even delay & reverb. That way you have much more control over the whole sound.


(I'll reply to your email in a while defalut).
defalut
toneburst wrote:
The Dervish doesn’t have external feedback loop inputs and outputs.

You could setup external feedback through a filter or EQ module with a mixer module.

Several of the delay programs have EQ in the internal feedback path, though, and control of tone and feedback on the pots/CV inputs.


I think you are right, a mixer would do magic. Might be the internal current controls are enough, too. I have to look around, maybe someone has already done some work on a filter that can be added to a delay. Thanks!
defalut
gbiz wrote:
to add to what toneburst said

WRT external processing ... The FV-1 doesn't have any means as such to route the wet signal externally for processing before passing back into the dry signal. It can be done in code, using one of the DAC outputs as the feedback send & one of the inputs as the feedback return. Downside of this, the effect becomes mono. This needs dedicated coding, & none of the delay programs in Dervish currently have it, so it'd need to be coded wink

(This level of control is much easier to do with Dervish than with uDervish as you have individual control over the dry/wet mix for each channel).

But this is a modular synth. Add a few external mixers, run Dervish 100% wet, take the wet signal, process it & then mix it back in with the dry. It's not quite the same, but close. Couple this with dedicated code would be betterer.


WRT internal processing ... The FV-1 has 3 controls. With most of the delay programs, two of these are taken with the delay time & feedback amount. Typically the third is used for damping (typically a fixed frequency BPF), though the basic damping amount could be fixed & the third control could be assigned to some more dynamic. I like the idea of have the controls impact a bunch of parameters - eg as the feedback increases, the frequency, or the q of the filtering changes. As the damping increases add an extra amount of chorus or reverb. None of the existing programs have it to any great extent. It needs to be coded. wink (This is an area of interest to me & I've been experimenting with doing this recently, but nothing that i'd want to share right now).


To me, dubby techno delay needs a bit of bit of chorus & reverb. So again, with a single module, what parameters do you control with those 3 controls ?. Do you fix the reverb level ?. Or the damping ?. Or the chorus frequency ?. Or ... ?

2 dervishes work better TBH, one with delay, one with reverb. Take the output of the reverb & feed it back through filters/overdrive back into the delay, or even delay & reverb. That way you have much more control over the whole sound.


(I'll reply to your email in a while defalut).


Hi gbiz, thanks for your extended reply. smile

I´ve only recently started making dubby techno so haven´t really thought everything through, but i´m not looking to have everything in the same module since i would have to sacrifice too much control. Without some kind of expander it would be impossible for anything useful to come out of it.

I´m not 100% clear on what i´m going to use in the full effect chain but i have a bunch of modules with FX and a bunch of filter modules so i´m sure it will take me a bit closer to my goal. Of course, they may not be the "right" type of FX or filters but i think it´s great fun to experiment and mostly i´m satisfied with the result with just some minor tweaks.

I´m not going to build a rack that´s customized for dub/dub techno, but i would like the possibility to add that flavour when i like. So ideally, i´m looking for modules that can do multiple duties. Dervish looks great with many reverbs, delays and other FX and together with the rest of my modules and other hardware i´m quite sure i can get to a place where i´m satisfied.

I actually thought about using the stereo outputs to separate the signal in some way, so yes the original D would be better! I like the idea of running two units like you say, too.

For now, one Dervish will suffice (it´s a cost thing too, unless i can get a discount for two units i think it will have to be one smile), maybe i can build one myself later this year but i have some other soldering to practice first..

Thanks again for the feedback! SlayerBadger!
simond4zed
Did anyone build an alternative firmware with selection of effects controlled by CV instead of triggers? Would it be easy/difficult? I dont have any experience coding..

I would be very interested in this feature as it would be easier to recall specific fx, when playing live.!
gbiz
It won't work out of the box, it'd need additional h/w to scale the CV to 0-3.3V, & to protect the ATTiny. And then code to support it. But there's no reason why it couldn't work.

One of the ADC inputs, ADC0, is unused on the ATTiny (the others are used as digital outputs), so it would have to use that. That pin/pad isn't broken out, so you'd need to take a rework wire to the pad from wherever you condition the CV.

There's a few things to consider with the code, but nothing that difficult. There should be enough free code space to support it.
simond4zed
I think we just mailed together as well? Anyways, sounds great, but with my skill set it wont be happening very frustrating
gbiz
Yes we did smile

I know you don't want to use clock pulses to do this, but the easiest way to achieve this is with uDervish & the program advance input. For your live set, create a custom eeprom with the banks organised so the programs can be sequentially clocked in the order you need them, even if it means the same program is repeated across many banks.
inaroom
hello, i´m sorry for my noobines, just trying to figure out some stuff. i got a dervish and it´s running 3.1.1 280516 . is it possible to update it so to add fx? i saw on some tutorials it should have tape echo fx and reverse and so on, which mine is lacking. so, for a person with 0 programming and coding skills, would it be possible to update it? what tools and software would i need? what would the procedure be? i read the documents in the first post but i´m having a hard time trying to understand what to do and where to get the latest release. is there any step by step tutorial to do it? i´m familiar with flashing and updating devices at a basic level (that is to say i can flash an android phone with the right tutorial and files provided, this kind of stuff where basically you install drivers and software, plug the thing you need to update and load the "rom") . again, excuse me if i´m too noobish, i just want to understand. the module sounds nice already, but it´s a lot cooler with the added fx. thank you for your kind attention and time
gbiz
Yes it's possible to update it to the latest code.

There's 2 different sets of code on Dervish ...

* the firmware running on the ATTiny on the control board that runs the display, switches programs etc. This is at 3.1.1 on yours.
* the FX programs stored in the EEPROM on the DSP board that the FV-1 runs. It's this that you update to get new fx.

You can update one without updating the other, they're totally independent of each other. You don't need to have any programming skills to do this. But you do need to be able to type commands at a command line prompt.
The principle is pretty much the same as you mention with your phone. Programming is done using a set of tools that run on the computer desktop. They run natively on Linux & OSX, but if you run Windows, you'll need to install a VM image with Linux using Vagrant, as they don't run on Windows. There's a howto that covers how to setup Vagrant.

You also need a Teensy based programming interface which will connect your desktop to the dervish. Given the age of your dervish, it should have one with it, i wasn't selling pre-programmed ICs back then. Whoever built it will have needed one to program it originally.

How to program it is covered in this doc. That also details how to download the the latest code etc. This is as close to step by step instructions as there is.
And this doc covers the Teensy programmer.
aragorn23
EDIT: Ignore me, I reflowed a bunch of other stuff and it's working 100% now It's peanut butter jelly time!

Hey all. Just built a Dervish and it's working fine except for the right output stage. If I send signal into either the left or right input I'm getting wet signal from the left output but the right output is incredibly faint and the right mix knob doesn't seem to do much.

I've reflowed the right output stage stuff (U7 p12, 13, 14, R21, R7, J6 p1) and also tried reflowing the right input stage stuff, but it hasn't helped. Any other suggestions?
sneak-thief
@gbiz - Is there any way to easily disassemble .bnk files back to .hex files for my FV-1 dev board?
ndf
sneak-thief wrote:
@gbiz - Is there any way to easily disassemble .bnk files back to .hex files for my FV-1 dev board?


yes, to read from a complete set of banks, use dd and objcopy:

dd if=INFILE.bnk bs=4096 count=1 skip=SOMETHING iflag=skip_bytes of=OUTFILE.bin
objcopy -I binary OUTFILE.bin -O ihex OUTFILE.hex

replace SOMETHING with 5120*bankno to seek to the start of the bank number in question. For example: to read out the bank at location 3 in the file drv.bnk, which starts at offset 15360 use:

dd if=dervish.bnk bs=4096 count=1 skip=15360 iflag=skip_bytes of=dervish.bin

This uses dd to copy one (count=1) program of size 4096 (bs=4096) from the dervish bank file (if=dervish.bnk) starting from the offset 15360 (skip=15630 iflag=skip_bytes) into a new file called dervish.bin (of=dervish.bin)

If you are just reading out one, or the first bank, leave off the skip and iflag options.

Objcopy can copy both ways.

If you want to disassemble the binary to fv1 assembly, that's a different problem smile
sneak-thief
@ndf - thank you! That's a good start, but the converted hex files don't match the original hex files and are half the size (11k instead of 22k).

Check out my test files here (original working hex, dervish bnk and incorrectly converted hex) http://sneak-thief.com/modular/bnk-to-hex-test.zip

In this example, the original Spin_GA_Demo hex starts like this:

Quote:
:0400000080800011EF
:0400040000000446B6
:040008000000046696
:04000C0000C00C92A2
 :04001000200064126A
:04001400200002845A
:04001800200002A43A
:04001C004005E76272
 :0400200020000406D6
:04002400266029C091


But the output when converting the bnk file using dd and objcopy looks like this - 2 lines of hex from the previous are ending up on one line and the FV1 is incorrectly interpreting it as 4 garbled patches instead of 8:

Quote:
:1000000080800011000004460000046600C00C92CD
:100010002000641220000284200002A44005E76250
 :1000200020000406266029C0D9A0000326606F6066
:10003000D9A029E32660DC60D9A06F8300000426E4
 :100040002325E7404000042426614180D9A0DC83B9
:1000500026623360D9A141A320000445D99A0448FF
 :100060000002338223236AA0400004242663E9C0EF
:10007000D9A36AC32664C940D9A3E9E32000046573
 :10008000D99A04687F44C9627F4233800000020A23
:100090000000020A0000048606014E3400014E549E
gbiz
That new hex file is correctly encoded. objdump is encoding 16 bytes per line, vs 4 that the Spin assembler file produced, hence the smaller file, and the difference in the per-line length, start address & checksum fields.

The format for Intel hex file is detailed here https://en.wikipedia.org/wiki/Intel_HEX wink
ndf
hmmn.. The FV-1 doesn't know anything about hex at all -- so the problem must be in the Spin IDE/uploader. Weird.

Um.. maybe try the linked dodgey python script. Use python3 to run it:

python3 ./bintofv1hex.py infile.bin outfile.hex

Linked here: http://metarace.com.au/bintofv1hex.py
sneak-thief
Ahoy! That worked great. Many thanks. Also works with my AVT-5159 FV-1 kit.
dooj88
for some reason i always have a hard time locating the default bank. gonna post it here for easy reference. sorry if it was posted already!


Bank: 0
Bank Name: Dattorro Mix Reverbs
Prog 0: 1k VarPrDelay VarDmp
Prog 1: 2k VarPrDelay VarDmp
Prog 2: 4k VarPrDelay VarDmp
Prog 3: 8k VarPrDelay VarDmp
Prog 4: VarFilter VarPrDelay
Prog 5: VarFilter VarDamping
Prog 6: 4k 1oct PShift I / P
Prog 7: 4k VarPShift I / PF / B
------------------------------
Bank: 1
Bank Name: Spin ROM
Prog 0: Chorus + Reverb
Prog 1: Flange + Reverb
Prog 2: Pitch Shift
Prog 3: Pitch (L) + Echo (R)
Prog 4: Tremelo + Reverb
Prog 5: Large Stereo Reverb
Prog 6: Medium Stereo Reverb
Prog 7: Stereo Reverb
------------------------------
Bank: 2
Bank Name: Spin 3K
Prog 0: Hall
Prog 1: Room
Prog 2: Plate
Prog 3: Gated
Prog 4: Echo + Reverb
Prog 5: Stereo Echo + Reverb
Prog 6: Chorus + Reverb
Prog 7: Flange
------------------------------
Bank: 3
Bank Name: Spin OEM 1
Prog 0: PA Vocal
Prog 1: Large Hall
Prog 2: Small Hall
Prog 3: Plate
Prog 4: Gated Reverb
Prog 5: Echo
Prog 6: Flange
Prog 7: Chorus
------------------------------
Bank: 4
Bank Name: Spin Dance + Reverbs
Prog 0: Flange / 4p LP / Reverb
Prog 1: Reverb + HP + LP
Prog 2: Pitch / 4p LP / Reverb
Prog 3: Plate reverb
Prog 4: Tight Plate Reverb
Prog 5: V Tight Plate Reverb
Prog 6: Reverb T / D / F
Prog 7: Pitch + Reverb
------------------------------
Bank: 5
Bank Name: Misc Delays
Prog 0: Greenwood Delay
Prog 1: 3Tap Dly + Chorus lng
Prog 2: Dual LFO Chorus
Prog 3: Looper w / feedback
Prog 4: St PitchShift + FB + Dly
Prog 5: Up / Down Octaver
Prog 6: Drv102 1hd + reverb
Prog 7: Drv102 2hd + reverb
------------------------------
Bank: 6
Bank Name: Reverbs 1
Prog 0: Malekko Reverse Rev
Prog 1: Plate Reverb
Prog 2: Freeverb
Prog 3: Shimmer mono2stereo
Prog 4: Stereo Plate 1
Prog 5: Stero Plate 2
Prog 6: Stereo Plate 3
Prog 7: Stereo ROM Reverb 1
------------------------------
Bank: 7
Bank Name: Bitrot
Prog 0: Interleave L / R
Prog 1: XOR
Prog 2: Mix
Prog 3: Min
Prog 4: Interleave Mix / L / R
Prog 5: Muller C-Gate
Prog 6: Pos / Neg
Prog 7: Max
------------------------------
Bank: 8
Bank Name: drv103 tape-ish echo
Prog 0: Simple
Prog 1: Simple 4xReverb
Prog 2: PingPong
Prog 3: PingPong 2: 1
Prog 4: PingPong 2: 1 4xRverb
Prog 5: 2Hd 2: 1 Reverb
Prog 6: Simple Clocksync
Prog 7: PingPong 2: 1 Clksync
------------------------------
Bank: 9
Bank Name: Dattorro Mix Reverbs
Prog 0: 1k VarPrDelay VarDmp
Prog 1: 2k VarPrDelay VarDmp
Prog 2: 4k VarPrDelay VarDmp
Prog 3: 8k VarPrDelay VarDmp
Prog 4: VarFilter VarPrDelay
Prog 5: VarFilter VarDamping
Prog 6: 4k 1oct PShift I / P
Prog 7: 4k VarPShift I / PF / B
------------------------------
Bank: 10
Bank Name: Ping Pong Delays
Prog 0: Simple
Prog 1: Simple 2: 1
Prog 2: Simple Stereo
Prog 3: Simple Stereo 2: 1
Prog 4: Wonky
Prog 5: Dubble
Prog 6: Dubble Stereo
Prog 7: Tripple
------------------------------
Bank: 11
Bank Name: Clock Sync Delays
Prog 0: Simple 1sec
Prog 1: Simple 2-Head 1sec
Prog 2: Basic PingPong 500ms
Prog 3: 2: 1 PingPong 500ms
Prog 4: Stereo PingPong 250m
Prog 5: Stereo 2: 1 PingPong
Prog 6: Wonky PingPong
Prog 7: Wonky 2: 1 PingPong
tekzon
houps.. made a mistake, sorry...
da6353
My Dervish build with pics.

Mods:
• True bypass using 'Uber' switch:
http://diy.thcustom.com/shop/uber-switch-relay-true-bypass-with-mute-k it/

• Bicolor lighted control switch

• Homemade panel (still a little rough, but functional)

Links to pics:
https://drive.google.com/open?id=0B068GW5tbP35QW4tWlNUS1BvcWdoUmYyN2Ey OVZHS1dEeDVN

https://drive.google.com/open?id=0B068GW5tbP35TjVUWVdsTHpITU5fWW41b1Rl OXVuRTJRWm93

Intended for mono use only, within a portable eurorack config, using only guitar-type effects (pics of that project to follow, in a few months...)

Enjoy!
gbiz
da6353 that sounds interesting, i like things like this smile It'll be good to see how this progresses.

Are you coding your own fx to work in this if it's going to be mono only ?. What will you do with the other unused channel ?.

The reason i ask. Someone else is going to be doing something not totally dissimilar with a couple of uDervishes. That will also be mono, but will use the second channel for feedback loop processing. I coded up a bunch of fx specifically for that set up. The left channel is used for audio in/out, the right channel is used for feedback loop send/return. These fx won't really work unless they have that external feedback loop present. eg without it an echo won't have any repeats. As all the processing is now done externally, it frees up the controls that would usually be used for controlling that internal feedback signal (eg damping, feedback level), so they can now be used for something else. Also, without the internal feedback processing & without any second stereo signal to handle, it frees up quite a few instructions, so it's easier to then add a second effect to a delay & that effect can be controlled by the freed up controls. The delay then only requires control over delay time.

I've not bothered putting the code up for this, as it's specific to this use case & i was mostly playing with the code for my own interest to see what dropped out. There's so many possible combinations/permutations. Time to code & test is the limiting factor really Dead Banana ) . I didn't bother putting any into banks, but i do have source & individual binaries, so you'll have to roll your own banks. If they're any use, let me know & i'll put it up.
da6353
Any shared mono source/binaries would be greatly appreciated, with many thanks in advance.

Forgot to mention, I substituted in OPA2132PA opamps, in my build.

Looking at implementing the following hardware mods:

• Feedback per drolo:
http://www.davidrolo.com/Build%20Docs/MDD%20build%20doc%201.2.pdf

• Eeprom expansion (low tech), as implemented on my build of the arachnid, see my post in diysb.

• 1.3" oled display


Although I haven't coded yet, I did manage to get a laptop to be a dual boot linux/windows, with teensy communication successfully established, and have noodled around some with spincad.
aragorn23
Hey all, I have a slightly odd problem with the uDervish I just built (I'm assuming my issue would be common to the Dervish too, hence I'm posting here and not in the uDervish thread).

Everything looks fine when I switch on and I can change banks, etc. However, if I turn the input audio gain past about 10% the clipping light comes on and I get a very loud hissing noise in the wet signal. In fact my wet signal sounds like flanged white noise with a bit of reverb regardless of which effect/bank I choose. Any idea where to start testing?
MUFF WIGGLER Forum Index -> Music Tech DIY Goto page Previous  1, 2, 3 ... , 28, 29, 30  Next [all]
Page 29 of 30
Powered by phpBB © phpBB Group