Home |
Search |
Today's Posts |
#1
![]() |
|||
|
|||
![]()
I have recently got an old allen and heath mod3.
When the mic pre gain is up high, and you tap the channel strip, you can hear it through the speakers. This happens on all the channels... The pres are discrete, class A, with transformers and old carbon resistors. Is this normal, or would replacing a few parts solve it? Also, and this is a very long shot.. I'm trying to mod the eq on the desk to shift the high shelf from 10k to 15k with a switch. It's a standard baxandall, but I figured it would be best to do the math rather than randomly swap components, so I looked at this page http://headwize2.powerpill.org/proje...=equal_prj.htm and the shelving part of the eq is pretty much the same as the active 2 band baxandall on the web page. Problem is, even if I use the equations and values given on the page, my little program turns out garbage ... (0.0386 or some such rather than a hz frequency) The prog is to work out the turnover frequency of the bass shelf of the eq. #include stdio.h float r3,c3,r4,fth; float PI=3.1415926535897932384626433832795; main (){ r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); printf("fth= %f",fth); }; Or some pointers to a web site or books that shows how I can work this stuff out would be handy. Thanks! |
#2
![]() |
|||
|
|||
![]() Also, and this is a very long shot.. I'm trying to mod the eq on the desk to shift the high shelf from 10k to 15k with a switch. It's a standard baxandall, but I figured it would be best to do the math rather than randomly swap components, so I looked at this page http://headwize2.powerpill.org/proje...=equal_prj.htm and the shelving part of the eq is pretty much the same as the active 2 band baxandall on the web page. Problem is, even if I use the equations and values given on the page, my little program turns out garbage ... (0.0386 or some such rather than a hz frequency) The prog is to work out the turnover frequency of the bass shelf of the eq. #include stdio.h float r3,c3,r4,fth; float PI=3.1415926535897932384626433832795; main (){ r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); printf("fth= %f",fth); }; Or some pointers to a web site or books that shows how I can work this stuff out would be handy. Thanks! Rather than do all the complicated math, here's a simpler way: replace every capacitor in the shelving circuit with one whose value is 2/3 the original's. So, for example, you'd replace a .033uF unit wwith a .022uF, or a .01uF with ..0066uF (actually you'd use .0068uF, the closest standard value). That shifts the frequency from 10kHz to 15kHz. Now use the switch to add a parallel capacitor that's half the value of the new one, or 1/3 that of the old one. That'll restore the original 10kHz frequency. So to recap (pardon the expression), .01uF would be replaced by .0068, with ..0033 added in parallel by the switch when desired. Scale as needed. Peace, Paul |
#3
![]() |
|||
|
|||
![]()
philicorda wrote:
Also, and this is a very long shot.. I'm trying to mod the eq on the desk to shift the high shelf from 10k to 15k with a switch. It's a standard baxandall, but I figured it would be best to do the math rather than randomly swap components, so I looked at this page http://headwize2.powerpill.org/proje...=equal_prj.htm and the shelving part of the eq is pretty much the same as the active 2 band baxandall on the web page. Problem is, even if I use the equations and values given on the page, my little program turns out garbage ... (0.0386 or some such rather than a hz frequency) The prog is to work out the turnover frequency of the bass shelf of the eq. r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); Your problem is that you stated the capacitance in microfarads, whereas the formula asks for capacitance in farads. So multiply the result by a million and you'll have the right answer. Using r3 and c3, I get 846.5 Hz. That doesn't sound like a Hi Shelf to me. Maybe there are some other circuit components not being considered? ulysses |
#4
![]() |
|||
|
|||
![]() "Justin Ulysses Morse" wrote in message ... philicorda wrote: Also, and this is a very long shot.. I'm trying to mod the eq on the desk to shift the high shelf from 10k to 15k with a switch. It's a standard baxandall, but I figured it would be best to do the math rather than randomly swap components, so I looked at this page http://headwize2.powerpill.org/proje...=equal_prj.htm and the shelving part of the eq is pretty much the same as the active 2 band baxandall on the web page. Problem is, even if I use the equations and values given on the page, my little program turns out garbage ... (0.0386 or some such rather than a hz frequency) The prog is to work out the turnover frequency of the bass shelf of the eq. r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); Your problem is that you stated the capacitance in microfarads, whereas the formula asks for capacitance in farads. So multiply the result by a million and you'll have the right answer. Using r3 and c3, I get 846.5 Hz. That doesn't sound like a Hi Shelf to me. Maybe there are some other circuit components not being considered? ulysses Thank you both for the replies. This prog was for the bass shelf.. Putting in the numbers from the mod3 schematic I get.... ------------------ #include stdio.h float r3,c3,r4,fth; float PI=3.1415926535897932384626433832795; main (){ r3=4700; c3=0.0000004; fth=1/((2*PI)*r3*c3); printf("fth= %f",fth); }; ------------------- Which gives 84.6 hz. The bass shelf on the desk says 100hz, so assuming I haven't messed up the maths again, that looks about right. For the treble shelf with the numbers from the A&H schematic...... ------------------ #include stdio.h float r3,c3,r4,r5,c4,r7,fh,fth; float PI=3.1415926535897932384626433832795; main (){ r5=8200; c4=0.000000002; r3=4700; r7=3900; fh=1/(2*PI*r5*c4); fth=1/(2*PI*(r3+r5+(2*r7))*c4); printf("fh= %f",fh); printf("fth= %f",fth); }; -------------------- Gives.... fh= 9704.569336 fth= 3844.322266 Replacing the 0.002 microfarad cap with a theoretical 0.001333333 (2/3 the value as suggested by Mr Stalmer) gives me... fh= 14556.854492 fth= 5766.483398 Which should do the trick. The circuit in the desk is not quite the same as the one on the web page, as there are two 0.002 caps on either side of the treble shelf pot, rather than one after it, but I think it's pretty much electricly the same. I've bought a load of capacitors (and non-locking toggle switches doh!) and will let you know how it turns out! |
#5
![]() |
|||
|
|||
![]() "David Satz" wrote in message om... philicorda wrote: [M]y little program turns out garbage ... (0.0386 or some such rather than a hz frequency) The prog is to work out the turnover frequency of the bass shelf of the eq. #include stdio.h float r3,c3,r4,fth; float PI=3.1415926535897932384626433832795; main (){ r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); printf("fth= %f",fth); }; See the reply from Justin Ulysses Morse in this thread regarding the units of measure for this formula. That's your primary issue. But as a long- time C instructor I'd just like to suggest that you decide which degree of numeric precision you really want, since your code treats the "float" type as if it were the "double" type. This can make a program use more memory and be much slower than if you had simply chosen one type or the other and stayed within its boundaries--though of course this particular program won't suffer noticeably from that since it's so short. If you ever write code that deals with large arrays of floating point numbers, the difference in performance can be severalfold. Ok, doing a little googling as well, I see it uses 8 bytes, rather than 4, is slower, and is way more precision that I need. I'll bear that in mind before attempting anything more ambitious. Also the variable r4 is defined and assigned a value but is never used after that. Finally, the semicolon after the closing curly brace is an error--and the 1970s style in which you don't specify the return type for a function (even "main") has been deprecated for the past 15 years or so. According to the latest ISO/ANSI C standard I believe it is now to be considered an actual error. If your compiler isn't warning you about these problems, it is severely outdated and you should get hold of a newer one. It is more likely my severely outdated programming abilities. Last time I touched a compiler was Turbo-Pascal, many years ago. I'm using gcc 3.2.1, and it does not give me warnings, unless I compile with -pedantic, where it warns about the closing ';'. --best regards |
#6
![]() |
|||
|
|||
![]()
philicorda wrote:
"David Satz" wrote in message om... philicorda wrote: [M]y little program turns out garbage ... (0.0386 or some such rather than a hz frequency) The prog is to work out the turnover frequency of the bass shelf of the eq. #include stdio.h float r3,c3,r4,fth; float PI=3.1415926535897932384626433832795; main (){ r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); printf("fth= %f",fth); }; See the reply from Justin Ulysses Morse in this thread regarding the units of measure for this formula. That's your primary issue. But as a long- time C instructor I'd just like to suggest that you decide which degree of numeric precision you really want, since your code treats the "float" type as if it were the "double" type. This can make a program use more memory and be much slower than if you had simply chosen one type or the other and stayed within its boundaries--though of course this particular program won't suffer noticeably from that since it's so short. If you ever write code that deals with large arrays of floating point numbers, the difference in performance can be severalfold. Ok, doing a little googling as well, I see it uses 8 bytes, rather than 4, is slower, and is way more precision that I need. I'll bear that in mind before attempting anything more ambitious. Also the variable r4 is defined and assigned a value but is never used after that. Finally, the semicolon after the closing curly brace is an error--and the 1970s style in which you don't specify the return type for a function (even "main") has been deprecated for the past 15 years or so. According to the latest ISO/ANSI C standard I believe it is now to be considered an actual error. If your compiler isn't warning you about these problems, it is severely outdated and you should get hold of a newer one. It is more likely my severely outdated programming abilities. Last time I touched a compiler was Turbo-Pascal, many years ago. I'm using gcc 3.2.1, and it does not give me warnings, unless I compile with -pedantic, where it warns about the closing ';'. --best regards Try -Wall . -- Les Cargill |
#7
![]() |
|||
|
|||
![]()
philicorda wrote:
r3=4700; r4=100000; c3=0.04; fth=1/((2*PI)*r3*c3); r3=4700; c3=0.0000004; fth=1/((2*PI)*r3*c3); ------------------- Which gives 84.6 hz. The bass shelf on the desk says 100hz, so assuming I haven't messed up the maths again, that looks about right. You have .4uF there, but you said it was .04. Something's up. With ..04, it's 846Hz. ulysses |
Reply |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Question about mic pre's on M-audio Delta | Pro Audio | |||
FS: 4 space API Lunchbox w/ 2 Brent Averill 312 mic pres | Pro Audio | |||
How good - pre's on Apogee Trak 2? | Pro Audio | |||
How good - pre's on Apogee Track 2? | Pro Audio | |||
Upgrading from Mackie pres to??? | Pro Audio |