SirSickSik Contributions


#778

NEW MODULE

HARMONY

"tonnetzSeq"

A tonnetz-sequence chord generator.

Several gates/triggers are used to make chord progression based on the tonnetz-progression theory.

First three inputs are "toggled gate" controlled: when the input is high, it goes in "the other" mode, when gate is low, it switches back.
P=parallel: switches the major for the minor and reverse.
R=relative: switches over to the relative of the chord
L=leading tone: switches between leading tones

Next four inputs are triggered: every time the input goes high, it adds/subtracts a fourth or a fifth to/from all note in the chord.
pF=add a fifth to all notes in the chord (5th can be multiplied by Fmode-selector to make bigger jumps. Eg. going from F(IV) to G(V) would be Fmode=2)
nF=subtract a fifth from all notes in the chord
pf=add a fourth to all notes in the chord(4th can be multiplied by fmode-selector)
nf=subtract a fourth from all notes in the chord
iU=inverse the chord up by adding an octave to the lowest note in the chord.
iD=inverse the chord down by subtracting an octave from the highest note in the chord.

Note! Internally the octaves are wrapped back (pendulum-wise) when going above the max-octave setting, this will cause the octave to step down to 0 before going up again (only noticable when octave is set to 3 or higher). This will only influence the octave-number, not the note being played.

Next to the basic triad, four additional notes are being generated based on the notes of the triad. Together with the notes of the triad, these can be used to generate a melody next to the chord.

The sequence can be forced to reset at a note and mode (major/minor).
Next to this, the amount of octaves that can be played, can be set using the "octaves" selector. Note that this responds in a "pendulum-wise" manner, though the notes stay the same. So if a note internally goes up one octave, but passes the max-octave setting, it actually goes down one octave at the output.

For more information on tonnetz sequences, see this video on youtube:
tonnetz video

To get a sequence to progress, you need to swap between changing L,R and P. If either one is toggled a second time without something else being changed, it just goes back to the former chord. Though of course, you can always send dual-triggers, triggering two or more changes at the same time.
The "gateSpreader" module (patt/gateSpreader) combined with a 0/1 counter /flipflop to generate a toggled gate works really well with this module.


Converting incoming midi notes to custom chords
#779

Is this by chance based on the code used in the Ornament and Crime module?


#780

I'm not basing my codes on other codes except for the ones in the axoloti if I need to know how to actually write something (like SINE2TINTERP(....,...) to be able to create a sine or using MTOF(...,..) to get frequency values from notes).
Though eurorack-land does show me lots of sweet ideas that I then try to code myself and add more functionalities if possible.
The tonnetz module was inspired by the tonnetz module of "Noise Engineering" after which I watched a video on it on youtube. That's where the P, R and L triggers come from. After it, I added some extra triggers that are combinations of several P,R and L transformations that are regulary used eg. IV to V (based on whether you're playing on major or minor scale). Though I'm still thinking about a control module that could automatically generate a phrase of transformations that follows a path and returning back home after a while, together with a melody generator that's based on counterpoint theory.


#781

Ok. This wasn't meant as a slight (not sure if it was taken as one). I merely surmised it might be being that the code is freely available, similar to the MI stuff and perhaps the desire to see it represented in Axoloti was present. I just obtained an O_c module and the Tonnetz angle is new to me, It's a welcome addition to the cross-platform way in which I work.

I probably could've surmised if I had actually taken a look at the module. I tend to use the forum when at work and away from the Axoloti. Perhaps I'll reserve questions until I've actually looked at something.

Excellent, everything I've come across of your work has been outstanding (still only a couple of months in and have yet to even open every item). It is appreciated.


#783

@SirSickSik

I just tried syncing library a few times and I don't see the tonnetzSeq in the community library here. I also checked github, both harmony folder and sequencer folder and I cant find it there either.

Any ideas?
Thanks!


#784

ok, ive had a few PMs etc over this...

this is cause because SSS is not sync'ing correctly... so other users are not seeing the updates.

the last commit to GitHub by SSS was on the 28 Aug 2017
this can be seen here:

I suspect this is due to SSS issues that he detailed in this thread:

as you will see, I made suggestions about how to fix, but I guess these have not been implemented, as so the issues persist.


@SirSickSik, I think you need to resolve these issues... as I'm concerned that not only are users not seeing these updates/getting confused... but also your changes are not being 'backed up to the cloud'... i.e. you think you are syncing, but actually your changes are sitting locally on your machine.
anyway, as suggested previously, I suggest you copy your changes to a new directory, re-initialise the community library, and then put your changes back.
(frankly, you can copy your entire SSS (only!) sub tree back up without any real issue, just be careful if you have moved files)
note: you can you file->preferences->library->status to see what changes are going to be committed , prior to do the sync.


#785

ok, ehm...
I copied my sss-folder to another directory, emptied the sss folder in community-objects and I have hit "sync" several times now.
It seems there are quite a lot of folder missing. Some of these should have been there way before september..like, over a year ago I made these folders..
Are these also missing in the cloud?!? That would be quite a lot of modules still missing....

missing folders:
-audio
-ctrl
-disp
-edrum
-env
-gain
-mi
-mix
-mux
-noise
-patch
-pulse
-quneo
-rand
-reverb
-seq
-shape
-spat
-synth
-temp
-test
-timer
-timing
-wave


#786

this is not what i told you to do... I said use reset all... emptying a folder and doing sync, if your unlucky, is telling git that you dont want any file in that folder i.e. delete everything
EDIT: yes confirmed... you manage to delete everthing in your SSS folder on the cloud


ok following is before I noticed you had deleted everything....

now Im going to need to think how to recover


as i said before... what I would do is:

a) take whatever you have been working on, so what you think is your 'latest version', and put in a folder somewhere (say your desktop)
make sure this is done correctly, you do not want to lose any files
b) do a reset all on libraries, this will delete everything and re-download what is in the cloud

then use a 'diff tool' and compare the 'cloud version' of your folder and your local copy (from step a)
I cant think of one off-hand but there are loads of free ones for both windows and mac, (search for something like windiff) , these will allow you to see which files and which directories are different.
you can then copy from your 'latest directory' anything that is missing.

if there is still something that is missing, then we will need to recover them from GitHub, but Im not willing to do this until you have done the above... and you are 'syncing correctly' and without a very explicit list of what is missing.
the reason is... if I start bringing things back and you then start syncing again they will just get deleted again, or cause conflicts...

this is the problem when files are copied around, and when the sync'ing is not done regularly, things get into a continuously more confusing state, since its get increasing unclear what is new, and what is old.


#787

arghh, ok, I'm going to have to do this manually

here is what to do - do this precisely, and NOTHING else.

a) do a sync again, but do NOT change anything
(I just need you need to be currently in sync with github)

b) do NOT do another sync after that until I tell you, and certainly do NOT touch your SSS folder, i.e make no more edits until I tell you.

c) send me a zip file (link will do on dropbox) of what you think is your latest files.

d) wait until I sort it out... and do not change anything at all.
I'll try to do this, this evening
I will then tell you how to proceed.


what Im going to do is:
- get all the files from GitHub before you deleted them.
- copy over your 'latest files'
- sync to github

you will then be able to sync these from GitHub, and check that the changes are correct, and alter anything that is not.
... you can then correct anything that is not, and then sync this changes back.

what Im not going to do, is make any attempt at determining what is good n bad, old or new... Im just going to assume your latest version overrides everything else, but that it might not be correct.
the reason is, I dont follow this thread, so I really have no idea what you have been working on, or renaming etc, so I cant make any reasonable understanding

anyway... send me the zip file, and I will take a look later, and sort it out... and let you know when you can re-sync with the fixes.


#788

ok, going to do step 1 now (after writing this), I repost if I have synced


#789

I have synced.
(ps.. there ain't no sss folder... there ain't no folder at all in contribs anymore after I did the reset...)


#790

oh about the "emptying my sss folder" I meant to say I did a "reset-all", after which I saw it emptied the entire contribs-library on my computer..


#791

I've send you a link to dropbox with a zipped sss-folder (the one I copied from my contrib-folder).
This is the folder I'm using myself and this one contains all bugfixes and latest modules. (I'm sure about it as I've been using these all the time and they loaded correctly with the right codes on my computer)

and argh... I just knew I would screw this up somehow, which is also the reason I hessitated doing it... sorry for that man!

Again, I know how to code synthesizer-functions, but there it ends.. I don't have any deeper experience with computers..
I just try to write modules and make music, play games and watch some video's.. Have tried to use C++ a couple of times to write modules for synthedit, but never got that working.. I couldn't even get the tutorial to work.. :frowning:
So I'm afraid it's best to not let me do this difference-checking.. I'ld probably screw that up too. It's best to hold me as far away from github as you can, before I do even more damage..


#792

OK, so its done...

@SirSickSik, you should now do Axoloti->File -> Preferences -> Reset ALL, and allow it to do the delete directories
... this will give you whats up on the cloud, and mean your in sync.
(you will then need to add your contributor details on the Axoloti Community library as before)

you should also do this with your other computer, so we dont get in a mess from there either.
(but only put your 'contributor' details into the computer you use for editing)


so what is there now, is everything as of Sep 1 (your last commit) , but anything will the zip file (which has your 'latest versions' you supplied me replacing anything that previously existed.

as for checking, I think its quite simple....
- there may be files that you have deleted/renamed since sep 1 still in the library, you can delete these now if you wish.
(though, it doesn't look like this is the case, as I get no complaints for duplicate objects)
- if 'latest' didnt contain the latest changes, then they might be missing.

Ive taken a copy of what you had left after the last sync, just in case... but Im assuming the zip file you supplied was your latest n greatest.

anyway, so I would go thru and check, and after your changes do another sync, so that we all know the right versions are up in the cloud.

then id recommend:
a) try to sync regularly, so you know its working...
b) remember deleting a file locally, will mean at next sync, it will be deleted in the cloud
c) dont make changes on multiple computers, try to have one as 'master'
d) try not to copy files around, its easy to get confused about what is the latest version
e) try to avoid renaming/deleting things, this can get confusing ... better to get right first time.

anyway, hope everything should be sorted and ok now.


#793

fingers crossed! gonna do it now


#794

hmm, I still only get the folders I got before, missing the others I mentioned..
oh wait, they're in my sss folder, but they're not shown in the patcher yet..
I'll restart axoloti, maybe that helps
update: yes, they're there! next step..
entered prefix, user ID and password.
Hope I can keep it working this time XD


#795

ok, let's check this... is this one there?

NEW MODULE

OSC

"DX7"
a DX7 oscillator with 6 oscillators and 32 different FM-algorithms.
individual inputs for oscillator pitches, volumes and overall FM width
oversampling up to 4x


#796

NEW MODULES

OSC

"monodualSine"
an oscillator that has two internal generators to fade from the former to the next with each new gate to prevent clicks (holding the pitch for the former, fading out oscillator). Pitch-portamento can still be used before the oscillator, but if it's not finished before a new gate is played the former oscillator will be faded out dissonant/false..
With long fade-times and saw modulation it can be a bit violiny..

DEMUX

"demux12Chance"
12-output demultiplexer with 2 control modes:
-using "s" input (0-11) when "chance" switch is off
-using weighted randomisation for randomly selecting an output with each trigger/gate at the "i" input.

the parameters get automatically updated when you move one, making sure the total gets to 100%
the default inputs are "or-combined" with the outputs, so these are thru-connectors for overriding the chance/s-controlled demux. Eg. force one of the outputs to generate a trigger using a button. This module can be nicely used for the tonnetzSequencer as you can focus the triggers on particular transitions.

DELAY
"crossmorph"
uses two delay-readouts and morph between these, during which it steps through different integer-multiplied timings based on the base-input. Doesn't need an external delay-write module, everything is in the same module.

DELAY
"fifthshifter"
this module uses a delayline and a 6dB filter to pitch up a fifth everything that is below the cutoff frequency and pitch down an octave everything that's above the cutoff frequency. This creates a lush aura of fifths based on the input signal.

FILTER

"AllBiqModes"
This filter is build up from 2 biquad allpass filters. Depending on how they're summed/subtracted (side knobs) a LP, HP (invert knob), BP, lowshelf and highshelf filter can be created


#797

all present except this one...

so I'm going to assume thats your issue :wink:

(also its fifthshifter not fifthshift)

anyway, i think your all set, so I'm out of here .... enjoy everyone :slight_smile:


#798

thanks TB!
of course also for the typo :wink:
well then.. maybe some more.. updating a module to the latest additions:

UPDATED MODULE

HARMONY

"tonnetzSeq"
the previous "only" had L,R and P motion, fifths, fourths and octaves, but I added N,S and "Q"(last one wasn't given a name on the website I used to figure out the transitions).
While the L,R and P motions and invertions only change 1 note, the N,S and Q change 2 notes and the fifth/fourth/octave change 3 notes.

Using the demux12Chance combined with the gatespreader module and rndPattF module should yeild very interesting semi-randomised/repeated progressions