Page 1 of 1

Euclidian Sequencer

Posted: Aug 7th, '14, 13:45
by lgranie
Hi,

Here the first version of an euclidian sequencer with 2 Lickogic, 1 Dilicktal and 1 Lcd.

16 tracks in 4 banks with individual note, swing and rythm_mode (POLY : ppqn = 6 (1/16th), SOLO : ppqn depends on nb_steps).
Sync / Master Midi.
Signal on Serial, Mid or USB.

To come :
Potentiometer motion capture (velocity/accent, note, roll...)
Accent and Roll (with euclidian algo)
Arpeggio

Regards,
Laurent.

ref :
http://en.wikipedia.org/wiki/Euclidean_Rhythm
http://archive.bridgesmathart.org/2005/ ... 005-47.pdf
https://ics-web.sns.ornl.gov/timing/Rep ... 20Note.pdf

Re: Euclidian Sequencer

Posted: Aug 30th, '14, 20:52
by e-licktronic
Dear Igranie,

What s a huge project you posted here :? :? !!!
Could you post a video about possibilities of your euclidien sequencer.
Just a question , why do you not use PotMux library? Is it because of the 7 bits value conversion ?
I will add new function like : Pot.Read7bits() or 8bits or 10bits in the next PotMux library update.
I will make a review on the web site home page.
Really good job ;)

Best regards,
e-licktronic

Re: Euclidian Sequencer

Posted: Sep 11th, '14, 11:50
by lgranie
Hi,
e-licktronic wrote: What s a huge project you posted here :? :? !!!
Thx you, I spend hours on this. I'm going crazy :p
e-licktronic wrote: Could you post a video about possibilities of your euclidien sequencer.
I will... I attach some pictures to begin (you will understand BLACK_BUTTON, etc...)
e-licktronic wrote: Just a question , why do you not use PotMux library? Is it because of the 7 bits value conversion ?
No, I think it is because there was a problem on initialization with the lcd.
And I'm looping only one time to read all pots. You're function loop on all pots anytime you read one pot.
Look at checkPotValues() and checkValuePotChange(byte *value, byte _value_pot, byte _precision, byte _plage)

Here's the version 0_6!
Changelog :
- uint8_t to byte to avoid out of memory
- add roll (euclidean algo)
- add accent (euclidean algo)
- update velo step by step (!play_pattern in PLAY ACCENT SCREEN) (maybe change step to pulse here to apply velo on pulse not step)
- 4 levels of velo (32, 64, 96, 127) visible on bitmap mode screen!

To come :
- Arpeggio
- anti bagotement (pot read => refresh screen)

Regards,
Laurent

Re: Euclidian Sequencer

Posted: Sep 12th, '14, 22:35
by e-licktronic
Dear Laurent,

it looks like a great project, maybe we will add this one on the project section cause i m sure it will interest some Diyer. Only Cv and Gate are missing now, but this one of the next board we are preparing.
I still not try but as soon as i can i do it of course.
Great job :o :o

Best regards,
e-licktronic

Re: Euclidian Sequencer

Posted: Oct 1st, '14, 11:16
by lgranie
ATTENTION : I'm working on the 0_8 version and I found a lot of bugs :/ ATTENTION

Hello,
e-licktronic wrote: it looks like a great project, maybe we will add this one on the project section cause i m sure it will interest some Diyer.
Thank you. Of course, you can add this project to your website. I will be glad.
e-licktronic wrote: Only Cv and Gate are missing now, but this one of the next board we are preparing.
Yes of course! I've already cv/gated my monotron ^^
I will wait for faders to think to another project : a synth.

Here is the version 0.7 !!! \o/
http://laurent.granie.free.fr/euclide_s ... de_0_7.zip

Changelog :
  • Add Arpeggio :
    - Choose between 11 scales (12 with MONO, ie. same note on every pulse)
    - Determine the number (<8) of notes you want to be played. (if ==0, then default MONO scale)
    - Play only up for now
  • Remove 4 levels of velo on every pulse (if pulse == nb_step == 32 on each inst => too much memory)
    Keep default = 100 and accent = 127
  • Use bitwise operation to store boolean (boolean is 8bits long and I store a lot of boolean ^^)
  • Change 'array'[current_bank][current_inst] to 'array'[current_inst] (win 2Ko on compiled binary size)
To come :
  • Arpeggio type : up, down, random...
  • A version with only 4 knobs (not 16, more memory saved) :
    - Use white buttons to change current_inst (no more bank)
    - Use the knobs horizontally
  • Buffering next pulse (midi_velo, midi_note) to be ready to play as soon as possible
  • Use EEPROM to store and restore current state
  • Try another solution for antibagotement with knobs :/
I add also some svg files that I used to make the "box" (lcd file is not correct :/).
I used this with Inkscape to generate a pdf and I send it to a website who printed it on plexiglass.
The final pdf is joint too.
Of course, you can add it to the corresponding board page.
http://laurent.granie.free.fr/euclide_s ... tronic.zip

Regards,
Laurent.

Re: Euclidian Sequencer

Posted: Feb 21st, '15, 08:34
by lgranie
Hello e-licktronicers,

Here is the version 0.8 \o/
http://laurent.granie.free.fr/euclide_s ... de_0_8.zip

Changelog :
  • Arpeggio use Euclid to compute the notes
  • Arpeggio type : up, down, up/down, down/up...
  • Only 8 knobs (not 16, more memory saved) :
    - Use white buttons to change current_inst (no more bank)
    - Use the knobs horizontally
  • Use EEPROM to store and restore current state. Each time you change inst, it is saved
  • Another solution for antibagotement with knobs
To come :
  • Follower : if A follows B, when B play an active step, A move one step
  • Chords, Chords progression, ...
  • Step resolution in POLY mode : 1/16, 1/8, 1/4, ... but keep the SOLO mode
  • Buffering next pulse (midi_velo, midi_note) to be ready to play as soon as possible
Have fun,
Laurent.

Re: Euclidian Sequencer

Posted: May 20th, '16, 12:11
by lgranie
Hi everyone,

Project is not dead.
Now he got is own page on github :
https://github.com/lgranie/euclidseq
and
https://github.com/lgranie/smoozpotmux

Regards,
Laurent.

Re: Euclidian Sequencer

Posted: Sep 16th, '19, 15:06
by cathpeti52
e-licktronic wrote:Dear Igranie,

What s a huge project you posted here :? :? !!!
Could you post a video about possibilities of your euclidien sequencer.
Just a question , why do you not use PotMux library assurance obsèques ? Is it because of the 7 bits value conversion ?
I will add new function like : Pot.Read7bits() or 8bits or 10bits in the next PotMux library update.
I will make a review on the web site home page.
Really good job ;)

Best regards,
e-licktronic
An update is really necessary, but we can still