Steps to load a MIDI file. My tips

Hi all. I’ve been interested in loading midi files, either self-generated or downloaded, and have
struggled to do so with complete success. Here are the steps I’ve taken to get workable results.

Linux reports the files I’m using are “Standard MIDI data (format 0) using 1 track at 1/96.”

  1. Save a blank pyramid project (Named ONE in this example)
  2. Remove the SD card from pyramid, and copy the MIDI file to the project folder, in this case called “PYRA_ONE.”
  3. Name the MIDI file in the following way: track04.mid
  4. Reinsert the SD in pyramid, and load the track by pressing 2nd and the save/load button.

Sometimes the above simply doesn’t work. I haven’t been able to figure out why. More often, the track is truncated to one bar. To fix that:

  1. Change the length of the track with the MIDI file on it.
  2. Save the track again, same name, then reload.

Any other tips?

1 Like

I tried this many times, never get the midi file on the track

any help please

thank you so much

it does work as above described

what and how exactly are you trying to load the midi-file?

What about just recording the midi file directly into the Pyramid?

Manually recording it runs the risk of timing issues and the all-too-common (for me) problem of my recordings into the Pyramid not starting exactly on 1. Or maybe the playback device’s clock has a little bit of drift relative to the squarp’s clock. Or maybe you don’t hit Stop on the Pyramid at exactly the right moment. Etc etc. All problems that are completely moot if you can just import the midi file directly.

Personally, even when the workflow described above is successful, it is a bit of a nightmare. Any process that involves completely powering off your device and leaving it off until the data has been transferred onto its SD card is pretty terrible. And you lose any descriptive information about what the MIDI file is by having to conform to the project’s internal naming scheme. This is ultimately a hack that lets you fool the Pyramid’s OS into thinking that it created the midi file itself.

Two vastly more friendly solutions:

  1. For the Pyramid to behave as a mass storage device, so we can drag & drop files onto its card simply by merit of it being attached to the PC via USB. I’m sure many of us are already powering it via powered USB hub connected to a computer, so this would be far less disruptive.
  • OR -
  1. Still require Pyramid power-down and SD card removal, but allowing us to dump multiple MIDI files into a common folder on the SD card, with arbitrary file names of our choosing (obviously respecting restrictions on special characters and standard filename conventions). Then having a simple file browser UI in the Pyramid to scroll through this internal MIDI library and import tracks/patterns into projects by simply copying the MIDI file into the project directory with whatever name PyraOS needs. Basically let PyraOS do the steps described above, with a simple UI that allowed browsing files in a library directory on the SD card. This UI could be as simple as the existing Load project UI.
3 Likes

Any process that involves completely powering off your device and leaving it off until the data has been transferred onto its SD card is pretty terrible.

AFAIK there’s no need to power off the Pyramid to remove and (re)insert an SD card. You just obviously wont be able to load or save anything while the SD card is missing.

1 Like

Oh interesting! That is good to know. And the sequencer remains functional without its SD card, and can seamlessly resume BAU storage behaviors after re-inserting? Well that does make it more friendly, to be sure. I don’t know if I can actually bring myself to attempt that while the Pyramid is running, but it’s good to know that it should work if I get too annoyed with power cycling.

I would still really love for a proper file-browsing & MIDI import workflow though.

SD cards are removable by design. As long as you don’t remove the card during a save operation there’s no actual damage you can do, and the Pyramid doesn’t auto-save anything so there’s no risk of accidentally doing so.

Actually there’s even a blurb about this in the manual (Pyramid Manual | Squarp instruments):

Please not remove the SD card while save/load menu is activated.

Which in other words means at other times it’s perfectly fine to remove it.

File-browsing would of course be nicer, but I’d think there’s practically zero chance something like that would be implemented at this point, it might not even be possible with the hardware in question (this was discussed in more detail at Simply cannot find USB DISK MODE - #5 by o_0)

I seem to recall this happening to me in the old Voyetra days and the way I overcame this problem was inserting a bar on the beginning of the entire song. In this a way you are basically guaranteed that all the hardware sorted out their sync and started correctly.

I have been sooo busy to get my studio back up-and-running, but this will be one of the first things I will test, as I have a whole lot of files I need to ‘pump’ into the pyramid.

Have a look at my findings on my blog. I believe I found a fool-proof way of loading midi files…

1 Like

So… to clarify - these steps are to convert an arbitrary MIDI file (such as a MIDI type 1 file) into a collection of Pyramid-compatible MIDI-0 files? Will this allow me to use the SD card method to load tracks 17+? I’ve only been able to get the Pyramid to recognize type 0 track files within the 1 - 16 range.

Side note - your intro stated these as part of your personal requirements / motivations:

  • I do not feel like getting another DAW installed onto my PC, just to do conversions.
  • I do not want to kill my PC with DAW’s from the “underground”

But then you proceed to describe a series of steps that sound a lot like installing some sort of questionable (read: “underground”) 80s - early 90’s sequencer DAW-before-DAWs-existed software using a DOS emulator.

Still though, if it consistently works this is cool. And it can do CC simultaneously with the pitch and note on/off? But not tempo?

I have not checked the tempo as yet. I believe it is possible, just not investigated :slight_smile:

There is also a limit of 64 tracks that you can export, so if more than 16 tracks I believe you will do it without a problem

The sequencer package, Voyetra, is a very powerful, but dos program. once it runs, it runs. It has also a no-nonsense interface not unlike Pyramid… It is actually uncannily so!

So if I have a device like the flashair wifi sd card and I edit a midi file on the card, which is attached to the pyramid, will the pyramid see the change to the midi file? Or do I have to rsync or reload it?

Making the pyramid a usb storage device and enabling hot syncing of midi ( if that does not exist ) would be dreamy in terms of super productive workflow.

Since you can load a project, and remove the sd card and still play the project, my understanding is that youd need to reload the project

Is the above written Voyetra ‘solution’ still the only way to import midi files? Or did firmware updates gives a better solution?

no, that post is I think 'misleading, it is just one persons idea on a way they found useful, and personally, id say its overly complex

you do not need any tools to import midi files on to the Pyramid
you simply copy the midi file to the Pyramid project (given a particular name)

Ive done this from various daws without issue. (see my posts below)

you need to be careful if you are using patterns - as some daws do not support type 1 midi,
this has been discussed in other posts.

the following is I thnkmy last post on this

note: this is an older post and improvements were made since that post, so you should try for yourself.

4 Likes

I can confirm this method works perfectly.

I used it to transfer midi scores from FL Studio to my Pyramid.

The simplest way is in each individual pattern, from the piano roll section, go to the drop down arrow on the top left, go to File/Export as MIDI file then save it to a folder under the project name, this just keeps it separate from other projects, seeing as each track will be named the same.

For example if you just allow it to save each midi file to the default “Scores” location that FL studio uses, you will start overwriting old track files.

You could actually save the files directly to the SD card, in the relevant project folder to save a step and if you want to avoid clutter on your computer.