Elektroid, a GNU/Linux transfer application for Elektron devices

ERROR:connector.c:1713:(connector_fill_card_elektron_devices): Cannot determine device number: Inappropriate ioctl for device

That message do not match the line in the master branch and looks like you’re using tag 1.3. Could you double check if you’re using the master branch or the 2.0 tag?

yes it’s 1.3 on info, don’t know how to install 2.0, i just succeed to install that…

Try downloading version 2.0 or performing a git clone https://github.com/dagargo/elektroid.git if you want to checkout the git project.

1 Like

sudo apt install automake libasound2-dev libgtk-3-dev libpulse-dev libsndfile1-dev libsamplerate0-dev libtool autopoint gettext
i run that, it worked but nothing changed, still on 1.3
i’m a complete newbie on linux

I think you’re running 1.3 from the Debian or Ubuntu package so we need to download the source code, compile it and install it.

First, I recommend you to uninstall the version installed with the package manager. Typically, sudo apt remove elektroid.

Then, clone the source code with git clone https://github.com/dagargo/elektroid.git. This should create an elektroid directory. Get in there.

Now, just compile it. You’ll need the dependencies but look that you’ve installed them already with the command you supplied. You’ll need then to run these commands.

autoreconf --install
./configure
make
sudo make install

These should prepare the source, compile it and install the binaries.

Finally, if you run elektroid -h you should see something like this.

$ elektroid -h
elektroid 2.0
Usage: elektroid [options]
Options:
  --local-directory, -l value
  --verbose, -v
  --help, -h

If you have further issues, send me a PM and we’ll sort it out.

2 Likes

Version 2.1 is almost ready. Other than a couple of bugfixes, Systakt support is added.

For anyone interested in this, please report bugs in this thread or more preferable here.

WRT the +Drive, as mentioned in this post, it’s possible to check if there is support for it at a filesystem level. Just check the README.md for more information about how to test it. Or ask here in case of doubt.

1 Like

Version 2.1 is just out. :tada:

Other than a few small improvements and bugfixes here and there, these are the most relevant additions.

  • Add support for Syntakt.
  • Add support for mp3 if the libsndfile version supports it.
  • Store device definitions in a JSON file. This file is installed as a resource but a copy in ~/.config/elektroid/devices.json will take precedence. This will hopefully make Elektroid releases independent of new products, making it more usable for people relying on distribution packages.
4 Likes

tytytyty! just discovered elektroid. im amazed at how smooth it runs!

1 Like

@DG2 great work with the application, GUI and instructions! I’ve tested it on Debian “testing” (Bookworm), Master branch from Github. Sometimes the GUI doesn’t start up at the first try, printing errors like the following:

ERROR:connector.c:2609:(connector_fill_card_elektron_devices): Cannot determine device number: Inappropriate ioctl for device

But i guess this is already known.

Tested only sample transfer on the AR MK2 and sound transfer on the A4 MK2, it worked flawlessly so far.

I’m not sure how much it will complicate development and if you could afford the time, but maybe Elektroid as a Flatpak would make sense? I guess it would attract people which are not into compiling. Maybe to much hassle.

2 Likes

Thank you! :blue_heart:

It hasn’t been reported but I’ve seen this error occasionally when the MIDI ports are already in use because Elektroid opens the MIDI ports exclusively. For the same reason, only one instance of Elektroid can be used with a given device at once.

Try killall -9 elektroid before restarting the GUI in case it helps and feel free to create a GitHub issue. BTW, run it with -vvv to produce a verbose ouput.

I’ll think about the Flatpack packaging but it’s already too much work.

One last thing. I’ve developed Overwitch (see Overwitch, a JACK client for Overbridge devices, AKA Overbridge for Linux), which is a Overbridge implementation for JACK. Version 1.0 is about to be released but AR MKII is the only device that has not been reported to work. Could you give it a try? It would be really great. TIA.

1 Like

Not needed to kill it yet, it just closed/killed itself with the error message, but no hung process.

I thought so. Maybe someday when everything else is finished.

I don’t have Jack installed because i don’t make music on the computer or at least don’t need real-time performance, so ALSA/Pulse is good enough. I’ll see if i get some time to fiddle around with it.

I’ve tried it, but Jack is so bitchy. I’ve tried Jack1 and 2, the server was running but all my audio applications freeze if i select Jack as backend. I guess it works with a distribution for audio like Ubuntu Studio or a proper configuration, but i don’t have the time and system at the moment to try it out, sorry.

1 Like

Yeah, JACK is not easy to configure properly. Don’t worry.

Thank you anyway.

1 Like

In case someone is interested here, the sds branch contains working code for MIDI Standard Sample Dump. For more information, see Open source support for TM-1 / TurboMIDI.

3 Likes

Not sure if this is a good idea but I’ve added support for Arturia MicroBrute (sequences) and Casio CZ-101 (programs). When MIDI SDS support was added, a lot of refactoring had opened the door to add new devices easily soI wanted to try to and started with some of the devices I already have.

sds branch has been merged into master together with the forementioned filesystems.

Any thoughts on this?

In case anyone wants to try version 2.2 before the release, I’ve pushed a few commits adding and improving some features.

Together with SDS upload and download, which adds support for Machinedrum and other SDS capable devices, these should add support to devices that need other sample formats than mono 48 kHz and can be mounted via USB or any type of memory card, such as Octatrack, current Akai samplers or Roland SP-404.

BTW, I discovered that samples in SDS SysEx format can be uploaded to the Digitakt and Model:Samples. As now it’s possible to upload a batch of SysEx files, all the Elektron sound packs made for the Machinedrum can easily be enjoyed on current devices.

Support for Elektron TM-1 is still in development.

4 Likes

What is the procedure for updating firmware with elektroid-cli? I own a digitakt and an analog4. Should I just issue

elektroid-cli upgrade <firmware-file.syx>

and the upgrade is automatic? do I need to do anything on the device itself other than turning it on?

There is no upgrade command in the CLI.

Considering that amidi is enough, although you’ll need to enter the device in upgrade mode manually, I wasn’t planning to add this feature.

Still, it would be quite easy to implement The command would take the form connector-upgrade.

For now, take a look at GNU/Linux: Best method for OS update - #13 by aMunchkinElfGraduate on upgrading over GNU/Linux.

Edit: I actually implemented this. :sweat_smile:

1 Like

This is embarrassing.

The command elektroid-cli upgrade <firmware-file.syx> should totally work. I totally forgot that I implemented this. :sweat_smile:

And, as you said, you don’t need to do anything on the device as it will switch automatically to the upgrade mode and the device will restart after that.

Sorry for the misunderstanding. :sweat_smile:

Edit: Actually, there is a missing parameter in the line you wrote, @personnealienee. This is from the README.

$ elektroid-cli upgrade Digitakt_OS1.30.syx 0

The last parameter is the device identifier, which is the first number in the output of this command.

$ elektroid-cli ld
0: hw:3,0,0 hw:3,0,0: Elektron Digitakt, Elektron Digitakt MIDI 1

Hopefully, there are no more mistakes. :pray:

5 Likes

great! thank you for clarification!

on an unrelated note — and I am sure you are being asked this a lot — but are there any plans to make Overwitch support Overbridge 1 devices like analog4 mk1? It has been immensely useful to be able to use it with Digitakt, but I still have to do overdubs for my analog4.