A Tap Tempo Control Chip

Started by smallbearelec, April 09, 2009, 01:27:46 PM

Previous topic - Next topic

StephenGiles

Thre are a lot of girls tapping in high heels here in Italy - chest pushed up (often big) maybe they could provide inspiration.  :icon_lol:
"I want my meat burned, like St Joan. Bring me pickles and vicious mustards to pierce the tongue like Cardigan's Lancers.".

slacker

Cool, do you have schematics or even just decent photos  ;D

cheezit

I don't have the time to participate, but I have a few guesses/observations:
- this is a rough drop-in for any circuit with a 555 used as a timer in it, for instance the Vanishing Point.  That circuit uses additional ICs of the right "flavor" to provide interesting permutations. A four-loop version of Toggle?
- by adding a pulse-to-constant-resistance LDR circuit (as mentioned earlier in the thread) it can sub in for many pots, though range/curve adjustment is going to be tricky, hence the PT2399 issues.
- conversion to other waveforms (sine, triangle, sawtooth) is possible and can provide variable resistive control through an LDR, giving a continuously varying resistance for things like gain, depth, etc.
- conversion to sine might provide a base frequency for ring modulation and other two-frequency type circuits
- many more interesting things are possible if someone wants to go into PIC-land, but the point of this chip is to stay out of there---this chip isn't really needed if someone wants to do PIC programming.
- what about other sources of tap-tempo triggers than just a footswitch?  Others have mentioned sequencer clicks....how about miking a real drummer's kick drum? 

puretube

I`ll try to figure out a way how to tap reverse delay/reverb for the contest...  :icon_smile:

MoltenVoltage

#84
Quote from: slacker on April 12, 2009, 04:39:46 PM
Cool, do you have schematics or even just decent photos  ;D

Photos (including one of the finished product in the enclosure and one of the PCB showing the MV-52 chip), a description of what it does and how it works, and a schematic are all required.
MoltenVoltage.com for PedalSync audio control chips - make programmable and MIDI-controlled analog pedals!

R.G.

Quote from: MoltenVoltage on April 11, 2009, 11:45:32 AM
I've got to say that the lack of creativity and initiative on this "Do It Yourself" forum is really disappointing.
Yeah. Me too.  :icon_biggrin:

I posted pseudocode for programming tap tempo into a uC here a few years ago. :icon_biggrin:
R.G.

In response to the questions in the forum - PCB Layout for Musical Effects is available from The Book Patch. Search "PCB Layout" and it ought to appear.

MoltenVoltage

Quote from: nelson on April 11, 2009, 12:02:58 PM
Electronics is as much an art form as mathematics. You can't suddenly create a new green, just as you can't suddenly create a new 1.


"Inventions have long since reached their limit, and I see no hope for further development."

- Julius Frontinus (Highly respected engineer in Rome, 1st century A.D.)
MoltenVoltage.com for PedalSync audio control chips - make programmable and MIDI-controlled analog pedals!

solderman

Quote from: StephenGiles on April 12, 2009, 02:53:50 PM
Thre are a lot of girls tapping in high heels here in Italy - chest pushed up (often big) maybe they could provide inspiration.  :icon_lol:

Quote from: slacker on April 12, 2009, 04:39:46 PM
Cool, do you have schematics or even just decent photos  ;D



Yes please, and some gut shots and how about some off board  wiring diagrams??? ;D ;D

The only bad sounding stomp box is an unbuilt stomp box. ;-)
//Take Care and build with passion

www.soldersound.com
xSolderman@soldersound.com (exlude x to mail)

solderman

Hi
How about controlling this one http://www.spinsemi.com/Products/datasheets/spn1001/FV-1.pdf With it. Seams that digital to digital ( 1 Or 0 ON or OFF ) would be much easier than converting to analog resistens.

//Solderman
The only bad sounding stomp box is an unbuilt stomp box. ;-)
//Take Care and build with passion

www.soldersound.com
xSolderman@soldersound.com (exlude x to mail)

nelson

Quote from: MoltenVoltage on April 13, 2009, 01:49:17 AM
Quote from: nelson on April 11, 2009, 12:02:58 PM
Electronics is as much an art form as mathematics. You can't suddenly create a new green, just as you can't suddenly create a new 1.


"Inventions have long since reached their limit, and I see no hope for further development."

- Julius Frontinus (Highly respected engineer in Rome, 1st century A.D.)

Not quite my point. My point was more that you can't defy the laws of nature. Not that they can't be manipulated to create new, interesting and beautiful things.
My project site
Winner of Mar 2009 FX-X

Taylor

Quote from: solderman on April 13, 2009, 04:25:06 AM
Hi
How about controlling this one http://www.spinsemi.com/Products/datasheets/spn1001/FV-1.pdf With it. Seams that digital to digital ( 1 Or 0 ON or OFF ) would be much easier than converting to analog resistens.

//Solderman

I think the FV-1 could probably be made to do tap tempo quite easily within itself.

R O Tiree

MV - could you change the output from pin 3 to be a PWM square wave at around 1000Hz (guessing here) with a duty cycle of, say 1% with a long tap interval and 99% with a short one? Either that or output a frequency proportional to the tap interval. I know you have already done the ground-work for that with the x1, x2, x3, x4 switch (S1), but how about x512, for example?

I've had a few thoughts...
...you fritter and waste the hours in an off-hand way...

cheezit

Quote from: solderman on April 13, 2009, 04:25:06 AM
Hi
How about controlling this one http://www.spinsemi.com/Products/datasheets/spn1001/FV-1.pdf With it. Seams that digital to digital ( 1 Or 0 ON or OFF ) would be much easier than converting to analog resistens.
//Solderman

Hey look!  The FV-1 has a comprehensive datasheet, including a reference schematic and a list of typical applications!  They must have some uncreative customers...  ;)

MoltenVoltage

Quote from: cheezit on April 13, 2009, 01:27:19 PM
Quote from: solderman on April 13, 2009, 04:25:06 AM
Hi
How about controlling this one http://www.spinsemi.com/Products/datasheets/spn1001/FV-1.pdf With it. Seams that digital to digital ( 1 Or 0 ON or OFF ) would be much easier than converting to analog resistens.
//Solderman

Hey look!  The FV-1 has a comprehensive datasheet, including a reference schematic and a list of typical applications!  They must have some uncreative customers...  ;)

A few thoughts about the FV-1.  First of all, it is very very cool and packs a lot of customizable digital effects in a small package.  If you actually read the datasheet, it says "8 demonstration programs are built into the internal ROM...The default ROM programs are for demonstration purposes and should not be used in production".  In other words, don't even think about selling pedals with it unless you write your own custom code using their assembly language.

Second, it turns your signal digital.  For the most part, guitar players want to keep their signal analog if possible (although I admit I love the Whammy).

Third, in order to use FV-1, you need to write your own assembly code.  Not that this is a bad thing, its very cool if you are willing to climb the learning curve.  It's just that you are making it sound like a simple "drop in" solution which it doesn't appear to be.

Finally, its been out at least 3 years and there are a total of two (2) app notes for it.  If you go to their website, they leave it to their customers to share ideas on how to use it.  How's that for a novel idea.

In case you missed it, the MV-52 datasheet shows how to hook up the chip with a handful of components:
http://www.moltenvoltage.com/downloads/Universal_Tap_Tempo_Control_Chip_MV-52_-_Datasheet_v2.pdf

And we provided an Application Note that gets you started building cool sequenced effects:
http://www.moltenvoltage.com/downloads/Application_Note_1_for_MV-52_-_v1_1_-_Molten_Voltage.pdf
MoltenVoltage.com for PedalSync audio control chips - make programmable and MIDI-controlled analog pedals!

solderman

Quote from: MoltenVoltage on April 13, 2009, 06:56:10 PM
Quote from: cheezit on April 13, 2009, 01:27:19 PM
Quote from: solderman on April 13, 2009, 04:25:06 AM
Hi
How about controlling this one http://www.spinsemi.com/Products/datasheets/spn1001/FV-1.pdf With it. Seams that digital to digital ( 1 Or 0 ON or OFF ) would be much easier than converting to analog resistens.
//Solderman

Hey look!  The FV-1 has a comprehensive datasheet, including a reference schematic and a list of typical applications!  They must have some uncreative customers...  ;)

A few thoughts about the FV-1.  First of all, it is very very cool and packs a lot of customizable digital effects in a small package.  If you actually read the datasheet, it says "8 demonstration programs are built into the internal ROM...The default ROM programs are for demonstration purposes and should not be used in production".  In other words, don't even think about selling pedals with it unless you write your own custom code using their assembly language.

Second, it turns your signal digital.  For the most part, guitar players want to keep their signal analog if possible (although I admit I love the Whammy).

Third, in order to use FV-1, you need to write your own assembly code.  Not that this is a bad thing, its very cool if you are willing to climb the learning curve.  It's just that you are making it sound like a simple "drop in" solution which it doesn't appear to be.

Finally, its been out at least 3 years and there are a total of two (2) app notes for it.  If you go to their website, they leave it to their customers to share ideas on how to use it.  How's that for a novel idea.

In case you missed it, the MV-52 datasheet shows how to hook up the chip with a handful of components:
http://www.moltenvoltage.com/downloads/Universal_Tap_Tempo_Control_Chip_MV-52_-_Datasheet_v2.pdf

And we provided an Application Note that gets you started building cool sequenced effects:
http://www.moltenvoltage.com/downloads/Application_Note_1_for_MV-52_-_v1_1_-_Molten_Voltage.pdf

1. A lot of musicians that I know is crazy about Line6 and there stuff. Most of them focus on the music and don't give a F-k in the tech stuff as long as it delivers.

2. Ever heard of google. I did a quick search for FV-1 AND assembly  code and got 11 700 v after  (0,32 seconds). It will never cease to amaze me how many people that puts in uncountable numbers of hours to spread info on the Internet of everything under the sun. Assembly code for FV-1 is one of thees subjects.

All this is not about what is wrong or right, its about what is usefol and for home.

BTW i thinks this chip is cool we just have to find the coolest way to use it that non of you ever could had imagined (or not wanted to). This is what happens to stuff you drop to in this.  comunity  ;D ;D
//Solderman 
The only bad sounding stomp box is an unbuilt stomp box. ;-)
//Take Care and build with passion

www.soldersound.com
xSolderman@soldersound.com (exlude x to mail)

earthtonesaudio

If you want to turn a a frequency into a voltage or current for your delays etc, try a "tachometer" or "frequency-to-voltage" circuit.  Or the less-linear, passive version: a capacitor. 

P.S. Just to clear up, the PT2395 and PT2396 both accept an external clock source, only the PT2399 does not.

dano12

Wow, I spend a day away getting a bikini wax and come back and someone has invented a tap-tempo module.

Very cool! Molten Voltage, I can see a lot of very cool uses for this, simply because I'm not hung up on tap-tempo for PT23999 delays.

I'm shall procure said device and do shameful things to it. Thanks for the device and your posts.


solderman

Quote from: dano12 on April 14, 2009, 09:51:41 AM
Wow, I spend a day away getting a bikini wax and come back and someone has invented a tap-tempo module.


I'm shall procure said device and do shameful things to it.


That IS what we (a least I)  expect from you  :D

//Solderman
The only bad sounding stomp box is an unbuilt stomp box. ;-)
//Take Care and build with passion

www.soldersound.com
xSolderman@soldersound.com (exlude x to mail)

octfrank

Quote from: MoltenVoltage on April 13, 2009, 06:56:10 PM

A few thoughts about the FV-1.  First of all, it is very very cool and packs a lot of customizable digital effects in a small package.  If you actually read the datasheet, it says "8 demonstration programs are built into the internal ROM...The default ROM programs are for demonstration purposes and should not be used in production".  In other words, don't even think about selling pedals with it unless you write your own custom code using their assembly language.

Actually, that language was removed in the latest version of the datasheet. It was there originally as the ROM code was created prior to having actual chips, and while I tested the code in the Verilog simulator we could only do short audio tests (I was simulating the FV-1 in Verilog and it may take an hour to simulate 100mS, so it took days to simulate a few seconds) and we didn't want people to design product around the ROM programs then discover an error later. But as Spin is confident with the code, feel free to build products using the ROM code, sell them, make a profit, all fine with Spin!

Quote from: MoltenVoltage on April 13, 2009, 06:56:10 PM
Second, it turns your signal digital.  For the most part, guitar players want to keep their signal analog if possible (although I admit I love the Whammy).

A personal choice, I respect you prefer to stay in analog but many guitar players have no problem working in the digital domain.

Quote from: MoltenVoltage on April 13, 2009, 06:56:10 PM
Third, in order to use FV-1, you need to write your own assembly code.  Not that this is a bad thing, its very cool if you are willing to climb the learning curve.  It's just that you are making it sound like a simple "drop in" solution which it doesn't appear to be.

Write your own code, use the ROM code, d/l the code from the site or Keiths notes area. Actually lots of ways to get free code to use.

Quote from: MoltenVoltage on April 13, 2009, 06:56:10 PM
Finally, its been out at least 3 years and there are a total of two (2) app notes for it.  If you go to their website, they leave it to their customers to share ideas on how to use it.  How's that for a novel idea.

Yes, two formal app notes but lots of notes/tricks/hints in Keith's area, he decided to do that instead of formal app notes. OK, a slightly different approach but we have received lots of good comments on it. Also there is the code for d/l, most has comments explaining what is going on so you can read the code to learn the techniques.

And, you can always email us with questions. We help people create new code for their products every day.
Frank Thomson
Experimental Noize

octfrank

And, just for fun, here is some code I wrote a while ago that creates a delay based on the high time of one POT input (no s/w debounce, the input was from a signal generator but could be a switch with some debounce on it) + the voltage on another POT input. Could use the final count for many differnt things (a delay as in this case, the coefficient for LFO frequency or amplitude, reverb length, etc.)

;delay time controlled by high time of a square wave+POT
;Frank Thomson
;OCT Distribution (310)348-9626
;
;pot1 adjusts delay by voltage
;pot2 adjusts delay time based on high time of a square wave input
;total delay is sum of pot1 and pot2

equ length 32767
equ sdel 0x03ffff ;start up delay, 4 sec. at 32K sample rate

mem echo length ;echo delay

equ countval reg0
equ pot2fil reg1
equ sigval reg2
equ thiscount reg3
equ totaldel reg4
equ pot1fil reg5
equ delreg reg6

; Clear register on start
skp RUN, loop
clr
wrax countval, 0
wrax pot2fil, 0
wrax sigval, 0
wrax thiscount, 0
wrax totaldel, 0
or sdel
wrax delreg, 0

loop:
; Only look at POT2 input if we have timed out the start-up timer
sof 0,0
rdax delreg,1.0
skp zro,gopot ; if counter is 0 do the stomp pot routine
sof 0,0 ; else clear ACC
or 0xffffff ; load -1 into acc
rdax delreg,1.0 ; delreg - 1
wrax delreg, 0 ; write delreg and clear acc
skp zro, govar ; go to the variable pot routine

gopot:
; If signal is > 0.5, increase counter
sof 0,-0.5 ; Load -0.5 into ACC
rdax pot2,1.0 ; POT0 - 0.5
skp neg, siglow ; If < 0 then skip over following

; If here then the signal is high
; Was the old signal high?
clr ; Clear ACC
rdax sigval, 1.0 ; Read old signal
skp gez,lbl2 ; If old signal was high, skip the following else clear counter
clr ; 0 -> ACC
wrax countval,0 ; 0 -> counter
lbl2:
clr ; Clear ACC
or 0x000100 ; "1" -> ACC - normally would be 0x000100, may want to double it
rdax countval, 1.0 ; counter + 1 -> ACC
wrax countval,0 ; ACC -> counter
skp zro, outit ; At this point we have a high signal and have incremented the counter
; Skip over low signal routine and do the delay

; Signal low routine
siglow:
clr ; Clear ACC
rdax countval, 1.0 ; Read counter value
wrax thiscount ,0 ; Write it to the register used in the delay calculations

outit:
; At this point, thiscount contains the number of sample to delay
; Save wave value
sof 0,-0.5 ; Load -0.5 into ACC
rdax pot2,1.0 ; POT2 - 0.5
wrax sigval, 1.0 ; Save the current signal value
; Make sure total delay is less than delay length
govar:
clr
or length*256
mulx pot1 ; POT1*length -> ACC
rdax thiscount, 1.0 ; Add in the count
wrax totaldel,0 ; Save the total delay, clear ACC
or length*256
rdax totaldel,-1.0 ; length - totaldel
skp gez, goout ; if >=0 then totaldel < length so OK
clr
or length*256
wrax totaldel,0

goout:
; Smooth value
clr
rdax totaldel, 1.0 ; Load delay into ACC
rdfx pot2fil, 0.000125 ; Smooth it : (target - current) * C + current
wrax pot2fil, 0 ; Save it
;
rdax adcl, 1.0 ; Get left input
wra echo, 0 ; Write it to the head of the delay
;
or echo*256 ; Load base of delay into ACC
rdax pot2fil, 1.0 ; Get the  value, it is the left delay tap to read
wrax addr_ptr, 0 ; Write it to the address pointer register
rmpa 1 ; Read from memory - left
wrax dacl, 0 ; ACC-> DACL
Frank Thomson
Experimental Noize