Organ Tone Wheel development.

1356

Comments

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    when i looked at it before i couldn't quite get my head around how the voices were being assigned

    chet's version seemed easier to understand in that regard

    that all sounds pretty interesting though, calls for some spectral analysis of the sine-ish components i think

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    so looking at spectral analysis of a single sine component, i'm seeing sidebands pretty much similar to my attempts at modelling analog oscillator "fuzz". i don't know much about tonewheels but those sideband are actually a pretty fair model of what is actually going on in an analog oscillator (confirmed through spectral analysis)

  • colB
    colB Member Posts: 953 Guru

    The effects will be different for different partials.

    And what I'm chasing isn't what a partial sounds like, its what a chord, with multiple partials per note, sounds like. That's where there could be differences between a detailed model and an optimised one… like how much more authentic it sounds with accurate partial frequencies, but only when playing complex sounds.

    So FM effects from the drive motor will always be at a frequency independent of the partials pitch, so very different patterns of sidebands obviously.

    AM effects from the 'wobble' will be at the frequency after application of the drive gearing, but still different per partial because different tonewheels have different numbers of 'petals'… those go up in powers of 2…

    So if the tonewheel has 32 petals, the AM wobble will at a much lower frequency, whereas if there are only 4 petals, or 2, it will be just an octave or 2 down.

    Doing it this non-optimised way makes it much easier to try out different things to see what difference they make. And per tonewheel random stuff is also pretty easy.

    One thing I've not done though is find out which tonewheels go in pairs (same note many octaves apart so same gearing just different numbers of petals). That could be useful for optimisation. And to try implementing bleed from each to the others pickup (some folk think this is audible, others disagree).

    I have tried mixing in very low levels of a mix of all tonewheels, through a bandpass per tonewheel (a real hammond has a filter for each tonewheel). As expected, this doesn't sound good until the level gets below where it's audible :)

  • Studiowaves
    Studiowaves Member Posts: 634 Advisor

    I would have never even thought about the warble tones of the sound bar. I guess if it's not perfectly balance it could do that. The side bleed filter is a big thing though, I bet they went had trouble with that and like you said, filtered the tone to remove the bleed. That's something to thing about because with sine wave generators there is no crossbleed and that could make a difference between never coming close to a real organ. Have you seen a sound bar? I haven't but always pictured they would use one section for all of the octaves and there would be 11 sections in all, one for each semitone. That way the cross bleed are at least octaves from each other. I bet they do that because it would sound horrible if the bleed was a semitone away. It seems ok to have the fifth or third bleed if the amplitudes of the cross feeds are low enough but I can't picture a sound bar being made like that. You would need all of the harmonics for each semitone and that's a lot of pickups. But yeah, definately pursue the effects of a warbling tone bar, it's probably subtle but enough to give it authentic sounding character. That makes perfect sense.

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    I have tried mixing in very low levels of a mix of all tonewheels, through a bandpass per tonewheel (a real hammond has a filter for each tonewheel). As expected, this doesn't sound good until the level gets below where it's audible :)

    yes this was something i tried some years back, on the assumption it would be a good proxy for "bleed" or crosstalk, so mix down to a single voice and modulate everything with it a little. really there's no substitute for an actual piece of hardware to do analysis on otherwise it's mostly taking stabs in the dark

    One thing I've not done though is find out which tonewheels go in pairs (same note many octaves apart so same gearing just different numbers of petals)

    this is what i was wondering. the ensemble isn't terribly CPU friendly unless i run it at full frequency. here is the square/subtract thing to get phase locked sine octaves across full range

    did you see that ILO module i posted in the other thread? i'm not sure if it's correct as it seems to be changing the cutoff somewhat, and filtering higher partials at high cutoff values

  • Studiowaves
    Studiowaves Member Posts: 634 Advisor

    Sorry I haven't had a chance to look over your work, having back problems. I think it might be best to start the ensemble with a high clock rate like 192k. Then set up a set of eleven high frequency ramps that reset a semitone apart from each other. Set the highest frequency ramp to the highest overtone of the organ. I know that you can use a flip flop to divide the ramp reset by two to get an octave lower but I think you also need to pass on the value of the top octaves ramp when the flip flop toggles to the octave down ramp so it starts out at the same value as the octave above it. The way to save cpu is to divide the clock by 2 on the octave down. After dividing down several octaves you'll eventually get to the lowest note of the organ and those low notes will be clocked at a much lower rate than 192k. That's about the only way I can picture cutting the cpu way down. It'll end up with the low notes like 20hz being clocked at 160hz or something. Which is like 8 times oversampling. I wonder what that sounds like, I've never actually listened to a 20 hz tone with a sample rate of 160hz. I guess if it sounds bad then it needs a higher clock rate but each octave down doesn't necessarily have to have half the clock rate as the octave above but the starting value needs to be the same. I guess the solution is to always pass the starting value of the highest octave down to start all octaves below it at the same value, this way they will always be in phase. It does make sense to divide the clock by 2 for each octave down though so the end of the wave forms will also be in phase. At least it seems that way. So lets see, the highest tone in an organ might be around 4k and if it's clocked at 192k then 2k would be clocked at 96k, 1k at48k, 500 at 24k, 250 at 12k, 125 at 6k, 62.5 at 3k, 31.25 at 1.5k. 15.625 hz clocked at 750hz might sound just fine. Is that what you did?

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    what i did is pretty similar to divide down but from the opposite direction, so instead of starting high and dividing down it instead starts low and multiplies (in this case squaring) up

    it works cause full rectification of a sine wave results in a another sine wave of double the frequency (+ dc offset) possible because a special property of sine waves, the same way divide down relies on the properties of square waves

    one thing i can say is IF using divide down you definitely don't want to progressively lower the sample rate sample rate, you want to stay at the higher base sample rate because anything you clock at a lower rate in a project running at a higher sample rate will exhibit high frequency mirrors (try clocking an oscillator at a lower rate using an audio to event modules in a project running at full sample rate to see what i mean)

    anyway, reading up on hammond tone wheel system it actually sounds pretty close to what i suggested: each tonewheel has multiple sets of "teeth", each one with twice as many teeth per rotation (octaves), so your C tone wheel produces every octave of C for the entire keyboard. with twelve separate tone generators any draw bar tone that is different from the root tone comes from an upper harmonic of one of the other generators

    like how much more authentic it sounds with accurate partial frequencies, but only when playing complex sounds.

    from what i was just reading, it was saying that tone generation for all tonewheels/their respective partials are expressed in equal temperament, or just slightly offset from that to compensate for the lack of just tuning for partial/drawbar components

  • colB
    colB Member Posts: 953 Guru

    anyway, reading up on hammond tone wheel system it actually sounds pretty close to what i suggested: each tonewheel has multiple sets of "teeth", each one with twice as many teeth per rotation (octaves), so your C tone wheel produces every octave of C for the entire keyboard.

    Each partial is generated by a single unique tonewheel. The tonewheels are mounted in pairs that share the same gear ratios, so each pair is two partials of the same note in different octaves. Each partial also has its own wound pickup and its own separate (I assume bandpass?) filter. The tonewheels are connected to the main drive via a damping spring and a clutch mechanism (although I'm not so sure about the clutch). It seems that the octaves are NOT phase aligned, except possibly with their pair partner. It's difficult to get details on all of this, because although there are a lot of documents, some of the things we want to know are 'obvious' to anyone working on a hardware unit, so don't need documenting. And patents are notorious for not being the same as final production units.

    from what i was just reading, it was saying that tone generation for all tonewheels/their respective partials are expressed in equal temperament, or just slightly offset from that to compensate for the lack of just tuning for partial/drawbar components

    The offset from equal temperament is purely due to the gearing system needing to be based on integer values (can't have half a tooth on a gearwheel). So a single drive motor speed, one drive gear, one driven gear and one tonewheel each with an integer number of teeth. That means some partials are very close and some not so much. It's all down to the limitations of the mechanisms design. Its also part of what gives the instrument it's immediately recognisable character.

    (US vs UK Hammonds are slightly different because the motor speed is based on the AC power supply with is 60Hz in the US and 50Hz in the UK, so the motor drive speed and all the gear ratios are different. I guess resulting in a subtly different sound to the organ.

    The very high partials are worse because they couldn't double up the teeth again because they were too small to machine. So the top octave has a more compromised set of gear ratios resulting in even less accurate tuning.

    This stuff is all well documented in various different sites online :)

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    okay, i gave the ensemble a look over with everything i understand now about how tonewheels are meant to work and it all looks pretty good with the gear/teeth ratio and main driver converting to a phase driver for desired sine frequency

    the power current ripple is well executed. even though accomplished differently with FM i have to reiterate the sidebands show up very much the same as for my analog oscillator taken in aggregate

    it actually really sounds quite good. couple things: could be good to try a "parabola" sine approximation or something close to get the weak overtones of "not a perfect sine wave"

    seems there's a simple way to appropriate chromatic bleed/crosstalk by combining a bit of signal from each active tonewheel nearest neighbor with voice shifters from either side so the signals of interest can be mixed in directly at a low level instead of messing around with bandpass filters to get a similar result



  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    even just that seems to add a good bit of missing wild edge. used that potato sine oscillator from a while ago and it might even already be too heavy on the overtones

  • colB
    colB Member Posts: 953 Guru

    seems there's a simple way to appropriate chromatic bleed/crosstalk by combining a bit of signal from each active tonewheel nearest neighbor with voice shifters from either side so the signals of interest can be mixed in directly at a low level instead of messing around with bandpass filters to get a similar result

    For that you would have to know what the nearest neighbour is ;) remember this is a mechanical device and the tonewheel pairs are not necessarily in order of pitch. You would have to check the schematics!

    I tried various oscillators. Really, a 'cheap' sine already has some soft harmonic content. More accurace would require modelling of the interaction between the tonewheel and the magnetic pickup… and also some detailed information on the exact shapes of the tonewheel teeth.

    My hunch is that the filter and pickup are both important in reducing/removing overtones. But it's difficult to know how precisely wound they are. Are the individually tuned per partial, or are they octave bandwidth… or more… That's the stuff that might make a difference, in terms of the overall sound and interaction between notes in different keys.

    The low hanging fruit right now are the Scanner which is completely wrong, and the frequency response accross the tonewheels and in the pre-amp. Getting those things right would take it very close, and make much more of a difference than getting low level overtones in the tonewheels 'correct'.

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro
    edited September 10

    My hunch is that the filter and pickup are both important in reducing/removing overtones

    probably just a regular rc filter? and to model a pickup, besides some nonlinearity probably you could model the frequency response as a comb filter

    For that you would have to know what the nearest neighbour is ;) remember this is a mechanical device and the tonewheel pairs are not necessarily in order of pitch. You would have to check the schematics!

    one of the sources i was reading described it that way, as in chromatic bleed/crosstalk being a desirable part of the sound often missing from emulations

    definitely got the impression from sounds of the real thing that highs much more attenuated

    lucky break though, found this video with some clean recording of individual draw bars ! (edit: nevermind its nothing but another filthy emulation, having trouble finding clear demo of individual drawbars of an actual hammond)

    https://www.youtube.com/watch?v=FqPMb8QOQZ0

  • ANDREW221231
    ANDREW221231 Member Posts: 347 Pro

    https://www.youtube.com/watch?v=TRPtdFN3P8I

    actual jackpot for potential analysis

  • colB
    colB Member Posts: 953 Guru
    edited September 10

    probably just a regular rc filter? and to model a pickup, besides some nonlinearity probably you could model the frequency response as a comb filter

    No, not RC filters, The main component is an inductor (coil… maybe a repurposed transformer coil?). This makes sense. Simple high Q bandpass filters from back in the day like wha-wha etc, used inductors. You get a peaky filter with minimal component count. Hammond were a motor manufacturer, so had all the tooling to manufacture coils. The pickups are chunky coils which will have some natural resonant frequency, the filters are chunky coils… they might be LCR or just LR dunno how that work really.

    EDIT: actually, they might be different types for different frequencies… need to check the schematic

    one of the sources i was reading described it that way, as in chromatic bleed/crosstalk being a desirable part of the sound often missing from emulations

    I'm not so sure. In reality, the sensitivity of a magnetic pickup falls with at least the square of the distance, so even the nearby partner in the tonewheel pair will provide very little useful flux, and that is mostly masked due to being an octave. The rest of the crosstalk is much more likely to come from coupling in the massive bundles of wires connecting the keyboard switches to the tonewheels, and from there to the pre-amp, and good luck working out which wires are closer to each other in amongst that… one would also need to work out the parasitic capacitances between the wires in the bundle and also the different resistances (tuned per partial at the switches) to work out how much of that interference would gat through and at what frequencies. It would be FAR easier just to measure it, but for that you would need access to a Hammond, and it would be incredibly laborious too :)

    It also means that at least some of the crosstalk would only come from currently active partials (the section from the switches to the pre-amp), where it would maybe act more like constructive or destructive interference of some sort rather than adding parasitic harmonics.

  • colB
    colB Member Posts: 953 Guru
    edited September 10

    Yes, I've watched a few of his vids, and grabbed some audio from them to check out… I wish he would stop showing off his fancy licks just for a minute and just play some more simple sounds though :)

    His stuff really highlights how grungy and nasty a real Hammond can sound… although he does have modifications like a built in distortion unit… and probably other adjustments to bring out the nasty.

    EDIT: This vid you linked is particularly good though - need to spend some time with it. I'm already getting that there is crosstalk from seemingly just between all the partials of the note being played… that should be easy enough to test. Need to analyse first though…

Back To Top