A pattern editor, in the "style" of a Tracker, for the Korg Electribe 2's (synth, sampler, hacktribe).

Overview

elfer

A pattern editor, in the "style" of a Tracker, for the Korg Electribe 2's (synth, sampler, hacktribe).

Status

This is very much a WORK-IN-PROGRESS, not too much works right now, except for reading a pattern in from the E2.

youtube demo video

Features

  • Display partial pattern in tracker UI
  • Switch patterns in tracker UI using E2 dial
  • Display full pattern (all 64 steps)
  • Edit pattern notes in tracker UI using keyboard
  • Edit pattern notes in tracker UI using E2 controls (Hacktribe only)
  • Send edited pattern back to E2
  • Stash/Load current pattern with app
  • display step on/off, velocity & gate in tracker UI
  • Send pattern to E2 current pattern, not save to pattern slot on E2
  • Button to reload current pattern from E2
  • load blank init pattern
  • save/load patterns to local files
  • export/import other file formats, eg. Sunvox
  • Edit step on-off, velocity & gate in tracker UI
  • Edit pattern parts, osc, ifx etc in Tracker UI
  • Edit instrument patchs in Tracker UI
  • read/write e2 all-samples file
  • sample editor
  • load/send samples to E2, once hacktribe supports this over Sysex
  • Playback pattern(s) from Tracker state (without sending to E2)
  • more?

Getting Started

I'm currently developing with Flutter beta channel.

Currently only works on Linux and Android.

Web and MacOS support maybe added in the future.

Usage

Currently Elfer is still very much Work-in-Progress and only suitable to use by advanced/brave users.

  • Connect E2 via USB to device running Elfer.
  • Start Elfer
  • Press Connect button in Elfer
  • It will take a few seconds for Pattern1 to load and display on Elfers Tracker Grid UI
  • Navigate the Tracker grid either via keyboard on device running Elfer or E2 panel controls - see below
  • Press Send TO E2 button to send changes to E2
  • For now loading changes from E2 to Elfer requires saving pattern on E2 then switch to another pattern, then back again
  • have fun!

Keyboard controls

  • Arrow keys to navigate grid
  • TAB to switch between grid and other UI controls

Panel Controls

NOTE: Using the E2's panel controls to navigate Elfer is ONLY possible when using the Hacktribe firmware.

!!IMPORTANT!!

Make sure you have your E2 Global Parameter settings (18/20) PTN. CHANGE LOCK sete to On. This is VITAL because Elfer uses the Select/Value knob to move between steps in a part and later on for other edit features, so if you don't have it set to On it will change between patterns on the E2 when you use it!

!!IMPORTANT!!

  • Select (aka Value) knob to move between steps in a part
  • Part buttons to move between parts
  • Keyboard Mode: then use pads to enter a new note for currently selected step (currently only edit first note only)
  • In Trigger Mode: the Buttons 1-4 will jump the grid to the matching section of steps, as happens on the E2 in StepEdit.

Touch Controls

One of the key points to Elfer is to make editing patterns on the E2 more efficient than the built-in StepEdit function on the E2, so there is not really any point in using touch controls on eg. Android devices so only touch controls are for basic, infrequently used operations: Connect/Disconnect, File Load/Save, Title edit, etc.

Debugging

Linux

NOTE: When developing on Linux, you need to disconnect prior to doing a hot-restart, otehrwise the Midi connection will lock up.


To check midi incoming via cli.

To list ports:

> aseqdump -l # will list ports
Port    Client name                      Port name
  0:0    System                           Timer
  0:1    System                           Announce
 14:0    Midi Through                     Midi Through Port-0
 32:0    electribe2 sampler               electribe2 sampler electribe2 s

To see incoming messages (using above port number):

aseqdump -p 32:0

Audio output on oscilloscope:

padsp xoscope
You might also like...

A Flutter based code editor

A Flutter based code editor

rich_code_editor A simple package that supports creating code editors in Flutter. Flutter version supported: Flutter 1.22.5 Getting Started There are

Dec 16, 2022

Rich text editor for Flutter

Rich text editor for Flutter

A rich text editor for Flutter FlutterQuill is a rich text editor and a Quill component for Flutter. This library is a WYSIWYG editor built for the mo

Jan 4, 2023

Megalinks is an android app where we provide free resources available for video editing, like Scenepacks, project files of the big editor, tutorials, etc...

Megalinks is an android app where we provide free resources available for video editing, like Scenepacks, project files of the big editor, tutorials, etc...

MegaLinks Megalinks is an android app where we provide free resources available for video editing, like Scenepacks, project files of the big editor, t

Jul 8, 2022

An online Dart editor with support for console, web, and Flutter apps

An online Dart editor with support for console, web, and Flutter apps

DartPad DartPad is a free, open-source online editor to help developers learn about Dart and Flutter. You can access it at dartpad.dev. What is it? Wh

Jan 4, 2023

Panache - 🎨 Flutter Material Theme editor

Panache - 🎨 Flutter Material Theme editor

🎨 Panache A Flutter Material Theme editor. Panache helps you to create beautiful Material themes for your Flutter applications. Customize widgets col

Jan 3, 2023

FLUTTER API: Video Editor allows trim, crop, rotate and scale video with a super flexible UI Design

FLUTTER API: Video Editor allows trim, crop, rotate and scale video with a super flexible UI Design

video_editor My other APIs Scroll Navigation Video Viewer Helpers Features Super flexible UI Design. Support actions: Crop Trim Scale Rotate Cover sel

Dec 26, 2022

A completely Responsive Image Editor App- Works on Android & iOS

A completely Responsive Image Editor App- Works on Android & iOS

Image Editor App Developed using Flutter with No Plugins (except for picking and saving images)

Dec 16, 2022

Umbra - visual editor for shaders in Flutter

Umbra Generated by the Very Good CLI 🤖 Umbra, visual editor for shaders in Flutter. Getting Started 🚀 This project contains 3 flavors: development s

Dec 14, 2022

Rich text editor for Flutter based on Delta format (Quill fork)

Visual Editor Visual Editor is a Rich Text editor for Flutter originally forked from Flutter Quill. The editor is built around the powerful Delta docu

Jan 7, 2023
Comments
  • some feedback

    some feedback

    first of all, awesome project. It kind of unites the polyend tracker-concept with the electribe. Also, elfer is interesting as it does not depend on hacktribe (but is compatible with). I suspect that only 1% of the technical electribe owners is going to risk flashing their device with experimental firmware. In that sense, the empowering factor of elfer is much bigger. Let me highlight my personal favorites:

    export/import other file formats, eg. Sunvox

    How about just import/export a midi file? Its the gold standard which most daw's and trackers can import/export (including sunvox), and is probably easier than generating some kind of daw-specific fileformat. This would be so awesome because one could edit/tweak/backup patterns and collaborate/remix patterns (with people without electribe). On top of that, it would allow a daw-to-electribe workflow: build a nice pattern/eq'ed mix in sunvox, and then in sunvox export the midifile + one sample with all used samples. (samples are retargeted by osc edit on electribe) I already do this (by loading the sample from SD), but it would be nice if the midifile could also be uploaded (thru elfer).

    sample editor

    launching a (configurable) '/usr/bin/audacity "%s"' systemcall would suffice for me (a diy sample editor can be quite a rabbithole).

    (idea) midi cc macros / piggybacking

    lets say my drums are on tracks 1,2,3 it would be nice if we could 'couple' certain params (group params). Possible UX: select some tracks (1,2,3 e.g.) then select a param (volume)..it will read out the current volume-values (70,90,100), basically the preferred maximums..then if you change the volume-knob of one of those tracks, elfer will automatically affect all selected track-volumes (1,2,3) basically interpolating between 0 and the preferred maximums (70,90,100). If you could add many macros you could literally create complete songs out of one pattern by just dialing some macro knobs.. To be fair, this might be a bit out of scope as it is more a midicontroller nicetohave.

    anyways just my few cents, I love your work!

    ps. are there binaries to test?

    opened by coderofsalvation 1
  • Hacktribe nrpn buttons encoders

    Hacktribe nrpn buttons encoders

    use brand new Hacktribe buttons/dials Midi NRPN messages for control. Currently: arrows, select dial: navigate steps within a part part buttons: change selected exit button: toggle current selected step on/off 1-4 buttons: select step page 1-4 when in edit mode keyboard button: enter edit mode, pads send notes to set note-1 of current selected step

    opened by maks 0
  • Pattern stashing, improve step editing

    Pattern stashing, improve step editing

    allow stashing current pattern on computer. improve step editing to turn steps on/off using arrow left/right, insert C-4 when turning a step on that doesn't have an existing note value. Allow using Tab to go out of step-grid editing to other controls, starting with Disconnect button. Can move through each control with Tab too. Improve step display: turned off steps are now in grey, show also step velocity & gate time, but they are not editable yet.

    opened by maks 0
  • Key nav

    Key nav

    for now use computer keyboard input for tracker input/editing. use keys simliar to M8: x: edit mode, combine with up/down arrow keys ot edit a steps note value, w: write pattern to E2 arrow keys: nav in step grid, shift+arrow keys: reserve for future screen nav

    also add editing of pattern name and display edit-mode state.

    also change to 2 pages for parts ui:

    image

    opened by maks 0
Owner
Maksim Lin
Android Developer, Flutter Developer & GDE
Maksim Lin
Json editor - A json editor on flutter

Features Support add comment; Support show errors for invalid json text; Pretty

Chan Young 12 Nov 18, 2022
Covid tracker - Covid Tracker app using Flutter

Covid Tracker Architecture The covid tracker app is used to demonstrate the use

Peter Haddad 26 Dec 3, 2022
An Instagram like text editor Flutter widget that helps you to change your text style.

TextEditor An instagram like text editor widget for flutter Show some ❤️ and star the repo to support the project Features Edit TextStyle object font

Mehdi Zarepour 68 Dec 16, 2022
camilo velandia 69 Dec 30, 2022
Neumorphic style - Example app with Flutter that displays a neumorphic style container

Flutter Neumorphic Style Example App Example app with Flutter that displays a ne

Piyush Nagpal 2 Mar 24, 2022
WYSIWYG editor for Flutter with a rich set of supported formatting options. (WIP)

✨ rich_editor WYSIWYG editor for Flutter with a rich set of supported formatting options. Based on https://github.com/dankito/RichTextEditor, but for

Festus Olusegun 116 Dec 27, 2022
A Flutter material theme editor

Flutter Theme ⚠️ WARNING: This app is still under development so please expect bugs and missing features in the app. ⚠️ Inspired by Panache, a Flutter

null 0 Jan 2, 2022
A lightweight HTML-Richtext editor for Flutter

Flutter HTML Editor Flutter HTML Editor is a simple HTML-based Richtext editor, which is able to edit and parse a selected set of HTML tags into a Flu

Herry 14 Oct 19, 2022
A Flutter package that provides a WYSIWYG editor backed by flutter_inappwebview and the Summernote library.

Flutter Html Editor - Enhanced Flutter HTML Editor Enhanced is a text editor for Android, iOS, and Web to help write WYSIWYG HTML code with the Summer

Tanay Neotia 200 Dec 31, 2022
🎨 Flutter Material Theme editor

?? Panache A Flutter Material Theme editor. Panache helps you to create beautiful Material themes for your Flutter applications. Customize widgets col

Erick Ghaumez 1.7k Dec 30, 2022