Zynseq - A native step sequencer

A big pile of large animal skulls?

Oops!
image

I was either writing or deleting ā€œFalseā€ when something shiny took my fancyā€¦ Thanks for the detailed report - I found and fixed it quickly and have updated feature/stepseq branch. All within my lunch break. Now, where did I put that hammerā€¦

2 Likes

Thank you very much too :wink:

But tell me, isnā€™t Sunday a rest day ?

1 Like

I watched a film last night called, ā€œPiā€ (a bit disturbing). Maybe the hammer was to quash some bugs!

No rest for the wicked, and riban doubly so.

Following feedback from last nightā€™s ZynthClub about where patterns are positioned within songs I have made a change to feature/stepseq branch to implement similar behaviour as pattern editor (and other enhancements):

  • Click and drag to position when adding pattern in song editor
  • Press and hold in song editor now opens pattern editor without having to release (like long press) but only for touch / mouse, not for encoder which is still bold press due to long press used for other purpose.
  • Fixes unable to open pattern editor if horizontally scrolled
  • Can now scroll left beyond first pattern (assuming not at zero)
  • Some small optimisations

Enjoy

4 Likes

There may be an interface to light the buttons in the APC in the recent update to feature/stepseq branch :wink:. I canā€™t test this but it may work like this:

  • In song editor, select Edit Pads
  • Select Tracks and set to 64
  • Select Trigger and for each track set the note number: G#3, C3, E2, G#1, C1, E0, G#-1, C-1, A3, etc.
  • Set MIDI channel for all tracks as desired
  • Select *ZynPad" view
  • Select Trigger channel and set to the output channel of the APC
  • Select Tally channel and set to input channel of the APC

The functionality is a bit feature poor and may not even work but it is a start.

Other changes in this update:

  • Fix segfault when playing notes rapidly
  • Added click and drag on track titles to scroll vertically in song editor
  • Adding tracks to song now sets track group and channel
  • Added tempo to ZynPad menu

I havenā€™t done much QA on this update. I wanted to merge master into this branch to see the new features (and report bugs :wink:) but that is what you are for my pretties.

1 Like

Yes! I was just having trouble with this last night! Thank you!

Wait a momentā€¦

Am I f :face_with_monocle: rgetting something?

Give me an evening, Iā€™ll get it up hereā€¦

@riban, master of sequencers, if your development branch is synced with master, i would merge when you want. Simply tell me when ā€¦

I suppose we have to look a good place for the map files and so on ā€¦ what do you think about using this:

/zynthian/zynthian-data/zynseq

and this for the ā€œuserā€ data, like patterns, songs, etc.:

/zynthian/zynthian-my-data/zynseq

Regards,

Ok, looks like the :face_with_monocle: will have to wait, because:

  • I still canā€™t access the pattern editor.
  • The directory /zynthian/zynthian-my-data/sequences does not exist.

@riban Do I need to create this directory?

@Jtunes youā€™ve done what I did and missed This Instruction

2 Likes

I will make changes to the file locations as suggested in the next update. @jofemodo how do we apply those changes to the file system and deploy the system files like scales?

1 Like

Hi @riban!

This is normally done via the zynthian-data repository, sometimes combined with some initialization code on the update_zynthian_sys.sh / update_zynthian_data.sh.

Please, do the changes in the development branch and make a pull request (or create a branch) on the zynthian-data repo adding the needed directories and files. The subdirectory inside zynthian-my-data must be created from one of the update scripts. I will do that if you give me the required details:

  • directory structure to create
  • if needed, the initial files to copy inside (normally from zynthian-data)

Regards!

1 Like

@riban I followed your update instructions, and they worked!
But now I have another problem. Often I will leave the ZynPads running and go edit the engine parameters. When I go back to the ZynPad screen, all the MIDI output stops, even though the ZynPads are still green and the little blue underscore is on in the corner


Does anyone know what might be wrong?

That is odd. It is certainly possible to stop the transport whilst a sequence is looping which will give similar behaviour but the blue underscore shows MIDI clock is still being received. If you can figure out a workflow that triggers this condition I can take a look.

Itā€™s actually a simple workflow.

  • Start some ZynPad playing.
  • Exit to the Main menu.
  • Enter the Step Sequencer again.

That should do it.

Thanks! I have found the issue and it should be resolved in the next updated. It is related to an issue I am still struggling with: how to handle clock, transport, song / pattern position and play state as we change between the various editors and players. It is tricky because the clock is not entirely within our control but hopefully we will get thereā€¦

2 Likes

I have committed the changes to features/stepseq that use the new file locations and adjusted the code so it does not error if it canā€™t find the files. It also creates directories as required, e.g. to store user data. I do not have write permission on zynthian-data repo so will need to fork and PR to add the extra data files required.

Changes in this update:

  • Load and save data
  • PoC on-screen keyboard shown when saving data allowing naming of save file
  • PoC file selector shown when loading file
  • Fixes error if expected data files are missing so you should be able to use this without changing your files structure (with reduced functionality)
  • More consistent title font size

Note: File location for sequence data has changed so any existing data will not be available unless you move your .zynseq file to /zynthian/zynthian-my-data/zynseq/.

[Edit] The QWERTY on-screen keyboard is loaded from arrays which could be loaded from a file to provide different layouts but I just had a play and think a single encoder for letter selection and A-Z layout may work better for encoder input. Currently you can use the BACK encoder to move the selection up / down and the SELECT encoder to move the selection left / right and the SELECT switch to select a key. Also, having lowercase letters and numbers + shift to show uppercase and symbols is similar to how a computer keyboard works (so familiar) but not actually the best workflow where people may wish to have uppercase letters and numbers showing by default. Have a play and let me know what you think.

6 Likes

Amazing. does the QWERTY bit also concern the possible naming of presets ? (risking the pack of hounds again here)

1 Like

Not yet. This is something I needed (wanted) for the sequencer and forms a proof of concept design / technology preview for wider use. There are some technical arguments to be hadā€¦