<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.23588"></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=868585407-15112017><FONT color=#0000ff 
size=2 face=Arial>This is exactly how the Intellijel Polaris is done as well, 
although that one has about 29 modes, I think.  I have a nifty Excel 
spreadsheet which draws all the transfer functions for the various modes, when 
you enter the five gain factors.  That's how I generated all the graphs in 
the Polaris user's manual.</FONT></SPAN></DIV><BR>
<BLOCKQUOTE 
style="BORDER-LEFT: #0000ff 2px solid; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px" 
dir=ltr>
  <DIV dir=ltr lang=en-us class=OutlookMessageHeader align=left>
  <HR tabIndex=-1>
  <FONT size=2 face=Tahoma><B>From:</B> Synth-diy 
  [mailto:synth-diy-bounces@synth-diy.org] <B>On Behalf Of </B>Andrew 
  Simper<BR><B>Sent:</B> Tuesday, November 14, 2017 9:23 PM<BR><B>To:</B> David 
  Moylan<BR><B>Cc:</B> SDIY List<BR><B>Subject:</B> Re: [sdiy] More on Xpander 
  modes was Re: HP from LP ?<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV dir=ltr>Hi David,
  <DIV><BR></DIV>
  <DIV>I've been a bit busy moving house, so sorry for the late reply.</DIV>
  <DIV><BR></DIV>
  <DIV>If you label the voltages as follows for a 4 pole low pass cascade 
  structure:</DIV>
  <DIV>
  <DIV>voltages : {v0 - res*v4, v1, v2, v3, v4}</DIV></DIV>
  <DIV>then generate the transfer function by summing these voltages with the 
  weighting terms: {m0, m1, m2, m3, m4}</DIV>
  <DIV><BR></DIV>
  <DIV>You get the following transfer function:</DIV>
  <DIV>
  <DIV>(g^4 (m0 + m1 + m2 + m3 + m4) + g^3 (4 m0 + 3 m1 + 2 m2 + m3) s 
  + </DIV>
  <DIV>   g^2 (6 m0 + 3 m1 + m2) s^2 + g (4 m0 + m1) s^3 + </DIV>
  <DIV>   m0 s^4)/(g^4 (1 + k) + 4 g^3 s + 6 g^2 s^2 + 4 g s^3 + 
  s^4)</DIV></DIV>
  <DIV><BR></DIV>
  <DIV>where g is the cutoff, k is the resonance and s is the regular frequency 
  domain laplace variable.</DIV>
  <DIV><BR></DIV>
  <DIV>Now just solve for your mix terms to place the zeros where you want 
  them.</DIV>
  <DIV><BR></DIV>
  <DIV>The resonance path was always the same, and interestingly enough you can 
  turn any filter type into any other, so you could have a high pass core turned 
  into a low pass filter if you really wanted to.</DIV>
  <DIV><BR></DIV>
  <DIV>The T was my way of saying "twin", basically saying a zero is happening 
  at 1/2 or x2 the cutoff, instead of just dc, infinity, or at the cutoff.</DIV>
  <DIV><BR></DIV>
  <DIV>For example, to form a two pole notch you want a numerator of (g + 
  s)^2 (g^2 + s^2), which solves to:</DIV>
  <DIV><BR></DIV>
  <DIV>v0-res*v4 - 2*v1 + 2*v2</DIV>
  <DIV><BR></DIV>
  <DIV>Here are all the coefficients {m0, m1, m2, m3, m4} for various 
  responses:</DIV>
  <DIV>
  <DIV>low2 : {0, 0, 1, 0, 0}<BR></DIV>
  <DIV>low4 : {0, 0, 0, 0, 1}</DIV>
  <DIV>band2 : {0, -1, 1, 0, 0}</DIV>
  <DIV>band4 : {0, 0, 1, -2, 1}</DIV>
  <DIV>notch2 : {1, -2, 2}</DIV>
  <DIV>notch4 : {1, -4, 8, -8, 4}</DIV>
  <DIV>high2 : {1, -2, 1}</DIV>
  <DIV>high4 : {1, -4, 6, -4, 1}</DIV></DIV>
  <DIV class=gmail_extra><BR></DIV>
  <DIV class=gmail_extra>To generate further shapes just crossfade between the 
  responses above, or try out any old combinations you want. You may notice that 
  some of the coefficients are FIR edge detection type filters, for example {-1, 
  1}, and this convolved with itself gives you {1, -2, 1} etc.</DIV>
  <DIV class=gmail_extra><BR></DIV>
  <DIV class=gmail_extra>Have fun!</DIV>
  <DIV class=gmail_extra><BR></DIV>
  <DIV class=gmail_extra>Cheers,</DIV>
  <DIV class=gmail_extra><BR></DIV>
  <DIV class=gmail_extra>Andrew</DIV>
  <DIV class=gmail_extra><BR></DIV>
  <DIV class=gmail_extra>
  <DIV class=gmail_quote>On 9 August 2017 at 15:02, David Moylan <SPAN 
  dir=ltr><<A href="mailto:dave@westphila.net" 
  target=_blank>dave@westphila.net</A>></SPAN> wrote:<BR>
  <BLOCKQUOTE 
  style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" 
  class=gmail_quote>Andy, do you have any coefficients for these shapes? The 
    double notches seem interesting.  Was your resonance path always from a 
    4th LP pole? Can you breakdown the abbreviations used for the 
    responses?  For instance, what's the T 
    suffix?<BR><BR>Thanks.<BR><BR>Dave<SPAN class=gmail-><BR><BR>On 08/08/2017 
    09:45 PM, Andrew Simper wrote:<BR></SPAN>
    <BLOCKQUOTE 
    style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" 
    class=gmail_quote><SPAN class=gmail->In digital you get pretty spot on 
      shapes since your tolerances are around 0.0001% ;)<BR><BR>I worked on all 
      this stuff over 10 years ago and came up with my favourite list of 
      responses:<BR><A 
      href="https://cytomic.com/files/dsp/cascade-tapped-filter-responses.pdf" 
      rel=noreferrer 
      target=_blank>https://cytomic.com/files/dsp/<WBR>cascade-tapped-filter-response<WBR>s.pdf</A><BR><BR>I 
      implemented these in a software synth plugin called Strobe over 8 years 
      ago. A while later the guys at Motu liked them so much they copied the 
      shapes and the names and used them in their software sampler plugin Mach 
      5.<BR><BR>Cheers,<BR><BR>Andy<BR><BR><BR><BR></SPAN>
      <DIV>
      <DIV class=gmail-h5>On 1 August 2017 at 07:48, David Moylan <<A 
      href="mailto:dave@westphila.net" target=_blank>dave@westphila.net</A> 
      <mailto:<A href="mailto:dave@westphila.net" 
      target=_blank>dave@westphila.net</A>>> wrote:<BR><BR>    
      I'm just finishing up an add on to a Roland IR3109 to do the 
      pole<BR>    mixing, same basic method as the Xpander.  From 
      my early listening<BR>    tests I will say that the high pass 
      modes still seem to have some<BR>    low pass in them.  Can 
      any Xpander users comment?<BR><BR>    This is due to the fact 
      that achieving HP responses relies on<BR>    nulling out terms 
      in the transfer function via mixing the different<BR>    
      poles.  If you're not exact you don't get a full null and 
      the<BR>    attenuation of low frequencies suffers (looks more 
      like a shelf<BR>    instead of continuing roll off of low 
      frequencies and usually has a<BR>    little dip in the 
      middle).  I'm using 1% tolerance resistors, but am<BR>    
      about to sub in some 33.2k for 33k to get even closer to the<BR>  
        theoretically perfect values.<BR><BR>    Even if you had 
      perfect resistors I would imagine any mismatching<BR>    between 
      the OTA stages would also cause the attenuation to suffer,<BR>  
        but I haven't modeled that.<BR><BR>    Still, each mode 
      sounds sufficiently different and I particularly<BR>    like the 
      modes with notches in them like 1 pole LP + notch.  I<BR>  
        wouldn't expect to like a less "dramatic" filter but I love 
      the<BR>    sound of that one.<BR><BR>    FYI, one of 
      the Xpander modes is All Pass / 1P LP or "Phaser" with<BR>    
      first pole switched out.  The shape has a notch off center and 
      its<BR>    pole weights are 1 3 6 4.  If you change the 
      weights to 1 3 4 2 the<BR>    notch becomes centered and it 
      looks like a 2P band pass with a notch<BR>    at the center and 
      with the first pole switched out it's like a 1P HP<BR>    + 
      notch, mirroring the 1P LP + notch that is already available.    
       Something different to try...  The PDF mentioned in the last 
      post<BR>    has good drawings of the filter shapes which might 
      help make sense<BR>    of this.<BR><BR>    I'm working 
      on this in a Roland GR-300 but the boards could<BR>    
      theoretically work in any synth that uses the IR3109, like the<BR>  
        SH-101 and MC-202.  Not sure how much room is available 
      inside<BR>    those, the boards are 1.3" x 2.6" using 3 SOIC 
      chips, a small number<BR>    of 1206 SMT resistors and the rest 
      through hole.  Not very difficult<BR>    to solder.  
      The filter selection is via a pot into a 3 bit ADC, and<BR>    
      the first filter pole is switched manually. (Haven't had any 
      problem<BR>    with pops when switching that pole.)  That 
      gives the 16<BR>    combinations, of which, there's one 
      duplicate so you get 15 modes.<BR><BR>    If you're interested 
      in a board let me know.  I should have a video<BR>    on 
      YouTube later this week showing it's operation in the GR300.    
       Will post here.<BR><BR>    On 07/31/2017 02:28 PM, Tom 
      Wiltshire wrote:<BR><BR>        I’m getting the 
      feeling here that just a simple subtraction of<BR>      
        the lowpass response from the input isn’t enough (ahem). If 
      you<BR>        want better than -6dB/oct, you need to 
      do some more<BR>        sophisticated summing of the 
      input and the various outputs, and<BR>        you’d 
      better make sure you’ve got accurate resistor values and<BR>    
          signal levels too, since that provides a limit to how m 
      such<BR>        attenuation you can expect in the stop 
      band off you high pass<BR>        filter. How good is 
      your signal cancellation? -40db? -60dB?<BR>        
      Unlikely to be better than that.<BR><BR>        That’s 
      not to say that it’s not worth it.. As Paula said, the<BR>    
          Xpander service manual is the original source, and 
      Oliver<BR>        Gillet’s documents on the Four Pole 
      Mission board for the<BR>        Shruthi expand on 
      that:<BR><BR></DIV></DIV>        <A 
      href="https://mutable-instruments.net/archive/documents/pole_mixing.pdf" 
      rel=noreferrer 
      target=_blank>https://mutable-instruments.ne<WBR>t/archive/documents/pole_mixin<WBR>g.pdf</A> 
      <<A 
      href="https://mutable-instruments.net/archive/documents/pole_mixing.pdf" 
      rel=noreferrer 
      target=_blank>https://mutable-instruments.n<WBR>et/archive/documents/pole_mixi<WBR>ng.pdf</A>><SPAN 
      class=gmail-><BR><BR>        Basically, generating a 
      multi-pole highpass from a multipole<BR>        
      lowpass response isn't as simple as just taking one off the<BR>  
            other. These are both great filters and worth 
      doing.<BR><BR>        HTH,<BR>      
        Tom<BR><BR><BR>        
      ==================<BR>              
         Electric Druid<BR>        Synth & 
      Stompbox DIY<BR>        
      ==================<BR><BR>            On 31 
      Jul 2017, at 20:50, Julian Schmidt <<A href="mailto:elfenjunge@gmx.net" 
      target=_blank>elfenjunge@gmx.net</A><BR></SPAN>
      <DIV>
      <DIV class=gmail-h5>            
      <mailto:<A href="mailto:elfenjunge@gmx.net" 
      target=_blank>elfenjunge@gmx.net</A>>> wrote:<BR><BR>    
              Have a look at this paper on page 64, 
      Multimode Ladder Filter<BR>            <A 
      href="https://www.native-instruments.com/fileadmin/ni_media/downloads/pdf/VAFilterDesign_1.1.1.pdf" 
      rel=noreferrer 
      target=_blank>https://www.native-instruments<WBR>.com/fileadmin/ni_media/<WBR>downloads/pdf/VAFilterDesign_<WBR>1.1.1.pdf</A><BR>  
                <<A 
      href="https://www.native-instruments.com/fileadmin/ni_media/downloads/pdf/VAFilterDesign_1.1.1.pdf" 
      rel=noreferrer 
      target=_blank>https://www.native-instrument<WBR>s.com/fileadmin/ni_media/<WBR>downloads/pdf/VAFilterDesign_<WBR>1.1.1.pdf</A>><BR><BR>  
                You can mix the different poles with a 
      simple opamp mixer.<BR>            input -4 
      * Pole1 + 6 * Pole 2 -4 * Pole 3 + Pole 4 will<BR>      
            yield a funky looking HP filter<BR><BR>    
              julian<BR><BR><BR>        
          Am 31.07.2017 um 20:10 schrieb Michael 
      Zacherl:<BR><BR>                
      Hi,<BR>                I discussed 
      that briefly in one of the last SDIY meetings,<BR>      
                did some experiments but never came to 
      a sound conclusion:<BR><BR>            
          Is there a ‘cheap’ way of turning a low pass filter 
      into<BR>                a high 
      pass?<BR><BR>                How’s 
      that possibly approached?<BR>            
          Just something like subtracting the LP’s output from 
      its<BR>                input 
      signal?<BR>                If so, 
      what about resonance?<BR><BR>            
          My point about doing that cheaply is the 
      (upcoming)<BR>                
      release of two synths with Moog ladder filter featuring<BR>    
                  a switchable high pass 
      mode.<BR>                To my 
      knowledge, there was no resonating HP filter from<BR>      
                Moog so far in any synth.<BR>  
                    Until now.<BR>  
                    Since both synths (Moog 
      Mother-32 and Behringer Model D)<BR>          
            are on the budget side in terms of money I’d 
      rather<BR>                expect a 
      simple solution compared to a, say, DSI Pro-2<BR>      
                with two fully featured filters in 
      it.<BR><BR>                Any 
      hints?<BR>                Thanks, 
      Michael.<BR><BR><BR>              
        --<BR>                <A 
      href="http://mz.klingt.org" rel=noreferrer 
      target=_blank>http://mz.klingt.org</A><BR><BR><BR>      
                
      ______________________________<WBR>_________________<BR>    
                  Synth-diy mailing 
      list<BR></DIV></DIV>              
        <A href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.org</A> <mailto:<A 
      href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.or<WBR>g</A>><BR>      
                <A 
      href="http://synth-diy.org/mailman/listinfo/synth-diy" rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/l<WBR>istinfo/synth-diy</A><SPAN 
      class=gmail-><BR>                
      <<A href="http://synth-diy.org/mailman/listinfo/synth-diy" 
      rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/<WBR>listinfo/synth-diy</A>><BR><BR><BR>  
                
      ______________________________<WBR>_________________<BR>    
              Synth-diy mailing list<BR></SPAN>    
              <A href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.org</A> <mailto:<A 
      href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.or<WBR>g</A>><BR>      
            <A 
      href="http://synth-diy.org/mailman/listinfo/synth-diy" rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/l<WBR>istinfo/synth-diy</A><SPAN 
      class=gmail-><BR>            <<A 
      href="http://synth-diy.org/mailman/listinfo/synth-diy" rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/<WBR>listinfo/synth-diy</A>><BR><BR><BR><BR>  
            
      ______________________________<WBR>_________________<BR>    
          Synth-diy mailing list<BR></SPAN>        
      <A href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.org</A> <mailto:<A 
      href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.or<WBR>g</A>><BR>      
        <A href="http://synth-diy.org/mailman/listinfo/synth-diy" 
      rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/l<WBR>istinfo/synth-diy</A><SPAN 
      class=gmail-><BR>        <<A 
      href="http://synth-diy.org/mailman/listinfo/synth-diy" rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/<WBR>listinfo/synth-diy</A>><BR><BR><BR>  
        ______________________________<WBR>_________________<BR>  
        Synth-diy mailing list<BR></SPAN>    <A 
      href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.org</A> <mailto:<A 
      href="mailto:Synth-diy@synth-diy.org" 
      target=_blank>Synth-diy@synth-diy.or<WBR>g</A>><BR>    <A 
      href="http://synth-diy.org/mailman/listinfo/synth-diy" rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/l<WBR>istinfo/synth-diy</A><BR>  
        <<A href="http://synth-diy.org/mailman/listinfo/synth-diy" 
      rel=noreferrer 
      target=_blank>http://synth-diy.org/mailman/<WBR>listinfo/synth-diy</A>><BR><BR><BR></BLOCKQUOTE><BR></BLOCKQUOTE></DIV><BR></DIV></DIV></BLOCKQUOTE></BODY></HTML>