• New Sponsor: ShipNerd, Ship Your Gear with Us... for less! Click Here.

Strymon Editors

Messages
1,416
BIG UPDATE:-
Strymon have released their own editor, Nixie into public beta, and I'd urge anyone who had been using my editors to move to Nixie - bar a couple of features (which are coming) it does everything my editors does but better and much faster. It's really slick!

http://www.strymon.net/nixie-public-beta/

UPDATE:-
Just a very clear note for anyone else reading this thread:-

The Editor is a Windows only application

It's been mentioned a good few times in the thread, but a few people have emailed and even installed it, and then come back asking for a Mac version.

There is no Mac version, and I personally will not be developing one, as it's beyond my capabilities.

NB This version now requires .Net 4.5 in addition to .Net 4

ANY issues or questions, email me @ brittleheadritchie@googlemail.com

The latest (self-updating) version can be found here:-
Strymon Editors v1.0.0.0

User Guide:-
Strymon Editors User Guide
Hey folks,

I've been waiting for Strymon to release a patch editor for Timeline etc for ages, and although we've now got a Librarian app, so far there is no idea on how long an editor will be, so I've decided to start one myself (my day job is a software dev).

The trickiest thing to getting a working editor that can changes patch values, is working out the Sysex data that is needed, and I think I've now solved how to reverse engineer the Sysex messages of each model, although it is a time-consuming process.

Sysex itself is not particularly difficult (see here for a great tutorial)
http://www.2writers.com/eddie/tutsysex.htm, and if you look at any of the patches shared on the Church Collective for example, the Sysex files allow the reverse engineering; what I have done is basically copy two identical patches ONLY tweak a single parameter (ideally each patch would have it's min and max value), and then save both out single syx files, and check the differences in a Hex editor; this essentially allows me to build up an address map for each of the Timeline parameters and be able to 'edit' these values using a GUI. So far I think (proof will be in the pudding) I have been able to isolate the correct bytes to change for the delay machine and the mix parameters.

As I'm a .Net guy, I'm going to be doing my prototype Editor in WPF, and I will by working through it methodically, each delay machine at a time (dTape, the dBucket) etc - some of the address map I'm pretty sure are on/off options that area very easy to see in Hex so some things will be easier and quicker than others :-

F0 00 01 55 12 01 62 01 0F 09 50 55 53 00 01 00 45 22 10 6D 0B 0C 0D 0E 0F 10 06 00 00 02 00 01 01 01 01 01 01 01 01 01 01 01 00 06 66 01 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 19 74 4A 25 12 13 14 15 16 17 18 00 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B

The bolded hex above appears to be the main set of bytes that change between patches above , which I believe is going to be the address map of the parameters for the Strymons (there is another very small part of the patch that changes at the end of the .syx file for the Name of the patch) - you can see a lot of the 00/01 entries which I think will be stuff like Persist (on/off)

I'm going to work on the prototype over the weekend, and obviously will be testing it with my own Timeline (latest firmware). I am obviously also doing this for my own purposes first and foremost, but if the editor works, I'd want to share it as I know there are a lot of other people that would like an editor also!

If anyone is interested in helping out, either from a coding aspect or testing, please let me know, i'm hopefull to show a working prototype being able to change and edit some basic common parameters (Mix, Delay Time and Repeats - i.e the most important by the end of the weekend)

Cheers
:idea
 
Last edited:

MogwaiBoy

Member
Messages
3,726
I can't help out but I really want to encourage you - thanks for doing this and best of luck! Looking forward to updates. I like your trial & error method for isolating and determining what changes what.
 
Messages
1,416
I can't help out but I really want to encourage you - thanks for doing this and best of luck! Looking forward to updates. I like your trial & error method for isolating and determining what changes what.
Cheers! The hardest thing will be the interaction between the different machines, so I'm just going to concentrate on dTape for the proof of concept, just to prove I can edit and save different dTape presets -albeit with a reduced parameter set to start with. Proving that will deal with thinks like Sysex checksum etc, so assuming the proof of concept doesn't brick my Timeline :crazyguy and the presets do what i've edited, it will be a good first step.

Of course I'm sure that once I've got half-way to completing it, Strymon will finally come out with a full-featured editor! :horse
 

Avatar_k83

Member
Messages
880
I can´t help either, but looking forward to trying it!! I´ve been waiting ages for Strymon to release an editor!
 
Messages
1,416
So far so good!

Managed to get all the delay common parameters mapped - which covers all the main parameters to start with:-
- Time
- Repeats
- Mix
- Filter
- Grit
- Speed
- Depth
- Tap Division
- Boost
- Persist
- EP On/Off

I've tested editing some presets based on the above by making hex edits to saved presets, and this is working grand, with no issues.

I've uploaded a wee video of the prototype GUI working with Time, Repeat and Mix, just to give an idea of how it might look and work:-


(note there is no complex UI interaction yet to show edited values (the LCD screen is just part of the background image!), but that will be easy enough to add once the core functions are working)

I should note that this is all predicated at the moment on using the Strymon Librarian as the interface to the pedals - all my editor is going to do is allow me to tweak patches that I can save as .syx and then upload into the pedal using the Librarian load one function.
 
Last edited:

Catch

Analog>Digital Converter
Gold Supporting Member
Messages
909
Wow, I'm totally impressed!

I would love a computer based editor for the Timeline (and BigSky)...you should of seen me last night trying to get off the ground after sitting crosslegged for two hours lost in programming patches...I'm broken!

The AxeEdit editor for the AxeFX II is pretty awesome, might be worth looking at and has been updated numerous times recently.
 
Messages
1,416
As I suspected, the SysEx Checksum is going to be an issue, as I'm pretty sure Strymon are using their own algorithm to calculate it, it's not the published Roland checksum. I've dropped Strymon support an email to see if they might disclose it, as brute forcing it will take a LOT of time. Axe Fx have published their algo, so hoping that Strymon will do the same.

What I'm looking at is the fact that the Librarian obviosuly calculates the checksum for the renaming functionality so it may shed some light on it if Strymon don't get back to me - and looking at Github librarian code, it looks like I might be able to figure it out...
 

Squeakys

Senior Member
Messages
316
It's cool that you are doing this, but ridiculous that you are having to.

I recently gave my Timeline and Mobius to a relative, and the lack of an editor has kept me from pulling the trigger on two new units to replace them.

I hated not having a computer editor, and I don't understand why, in this day and age, a company sells $450 dollar, multifunction pedals but does not include editing software.

Yes, having to bend down to my board to edit is that much of a PITA.
 
Messages
1,416
Awesome progress - appear to have the checksum issue resolved, after porting the Librarian code across.

I've now got some rudimentary presets saving and loading to my Timeline (via the Librarian of course) with varying combinations of changes to Mix, Repeats, Filter, Grit, Speed and Depth.

Time appears to be a multi-byte parameter (which makes sense as 128 values isn't precise enough for the time that can be stored) so it will take a bit longer to get fully nailed.

Getting the reading and writing of the .syx presets file with (so far anyway!) correct checksum that successfully saves to the pedal is a big step though, as after that it simply becomes a matter of adding support for each new parameter by figuring out its address map and value range, then mapping these back to the UI controls...

:aok
 
Last edited:

MrFlood

Member
Messages
90
gollumsulvslave,

Nice work. Looking great so far. I can't help other than give my opinion. I just wanted to say thanks for taking this on. I hope Strymon will support you with whatever you need.
 

bo13bo

Member
Messages
430
I don't understand why, in this day and age, a company sells $450 dollar, multifunction pedals but does not include editing software.
I can't grasp it either. Also why not have a USB port?

I think Strymon is just an odd bird. Try to get someone to sell you one of their pedals on sale and see what the dealers say. Heck I just bought a Big Sky of the net and the dealer said Strymon won't even let them sell pedals right off their website - I had to call in and place the order over the phone.

Hey Strymon, I love your gear (own Timeline and a Big Sky), but it's 2014. I mean next year we will have hoverboards and self lacing shoes...
 

rck

Silver Supporting Member
Messages
3,867
gollumsluvslave, YOU are awesome, sir!

I am dying for an editor for the Mobius as the controls on the pedal are not my favorite (so far I prefer the H9's pedal controls) and there are so many functions and machines contained within the Mobius, that an editor to me would be a no brainer.

If Strymon would show interest in an editor, I would've bought a Timeline, instead I go the H9 and I love their editor! Does it make the pedal, no, but having an editor, saves one a ton of time, brain expenditure and ease of back/neck pain.

I also believe an editor helps me to understand the functions of the pedal better.

Thank you for your time and effort and if anything I hope you receive all the help in the world from some folks (but esp. Strymon). I posted on their site about an editor and the reply was pretty standard (which I understand), "I will pass this on to our team" or something to that effect.

I am brand new to midi and sysex and don't have a Timeline. I don't know how much help I would be, but if you have any suggestions as to how I might, please advise.

off topic: I don't know the "pedal business" from their perspective, but I would love to know why they haven't released an EDITOR yet. I'm sure they have their reasons...
 

zwolf

Member
Messages
404
So awesome you're doing this! I'm pretty deep into midi, but don't know a thing about code or programming. But feel to PM me if I can be of any use doing some of the legwork in testing things out.
 

Avatar_k83

Member
Messages
880
I hated not having a computer editor, and I don't understand why, in this day and age, a company sells $450 dollar, multifunction pedals but does not include editing software.
I dont understand why!! Even Line6 had a GREAT editor for PODxt more than 10 years ago!
 
Messages
1,416
Hey folks,

Here's an updated vid showing load, save and editing of the main Timeline dials (barring Time)


Aplogies for the shaky-cam and quality, it's just my camera done quickly to give the idea; I don't like the sound of my spoken voice so not added any commentary! In case it's unclear what happens in the vid is as follows:-

1. Load of a bonafide Timeline preset saved from Librarian (Base.syx)
2. Various tweaking, showing LCD updates and Tooltips
3. Save of updated Preset to 'new.syx'
4. Reload of the 'base.syx' preset - shows the dials being reset
5. Load of the saved 'new.syx' preset showing the previous edits that were saved

Some things I've already implemented that improve things (at least for me):-

1. Updating the 'LCD' control on all dial moves
2. Tool Tips on each dial

What I've also noticed in doing this work is that the LED status that changes from Amber to Green on parameter edits, isn't the most accurate in the Timeline...

I loaded a preset with everything on the 6 dials set to min - 0 in the sysex binary data, and noticed that each dial has a bit of travel before the led changes to amber. Saving the patch on the Timeline once it has went to amber, them dumping out to sysex, showed the values for each of the dials as 03, which means that 01 and 02 values have been skipped by the physical controller; I'm now curious whether the Editor will be able to load presets to the Timeline that are more accurate than can be done via the dials (the range of data of each of the 6 dials I have implemented is 0-127, the physical interface does not seem to permit all values to be used - I've noticed this on Time before where it jumps milliseconds but never though much of it).

I'll need to do a fair bit more testing on that side of things to see if these 'skipped' values actually make any difference.

One other thing I thought I'd mention is that the code is structured in such a way that adding Mobius and BigSky after I've done the Timeline should be relatively trivial, and will more be a matter of creating new 'config' files that describe each machine (Type) and the parameter relationships which should drive the editor than doing much more coding- of course I'm sure there will be plenty of little gotchas and weirdness that will come up.

I'm hopeful I will get dTape fully complete tomorrow, adding the 'hidden' parameters to the UI and allowing them to be edited. Any suggestions on how people think these should be handled would be appreciated - my current thinking is to simply use the easiest/ most pragmatic control for each parameter - e.g. On/Off parameters will be buttons, DropDown lists for things with finite choices like TapDivision etc.

It's quite sad, but it's actually been a lit of fun and quite satisfying!
 
Last edited:

thiscalltoarms

more gadgets than Batman.
Platinum Supporting Member
Messages
8,149
Hey folks,

Here's an updated vid showing load, save and editing of the main Timeline dials (barring Time)



Aplogies for the shaky-cam and quality, it's just my camera done quickly to give the idea.

Some things I've already implemented that improve things (at least for me):-

1. Updating the 'LCD' control on all dial moves
2. Tool Tips on each dial

What I've also noticed in doing this work is that the LED status that changes from Amber to Green on parameter edits, isn't the most accurate in the Timeline...

I loaded a preset with everything on the 6 dials set to min - 0 in the sysex binary data, and noticed that each dial has a bit of travel before the led changes to amber. Saving the patch on the Timeline once it has went to amber, them dumping out to sysex, showed the values for each of the dials as 03, which means that 01 and 02 values have been skipped by the physical controller; I'm now curious whether the Editor will be able to load presets to the Timeline that are more accurate than can be done via the dials (the range of data of each of the 6 dials I have implemented is 0-127, the physical interface does not seem to permit all values to be used - I've noticed this on Time before where it jumps milliseconds but never though much of it).

I'll need to do a fair bit more testing on that side of things to see if these 'skipped' values actually make any difference.

One other thing I thought I'd mention is that the code is structured in such a way that adding Mobius and BigSky after I've done the Timeline should be relatively trivial, and will more be a matter of creating new 'config' files that describe each machine (Type) and the parameter relationships which should drive the editor than doing much more coding- of course I'm sure there will be plenty of little gotchas and weirdness that will come up.

I'm hopeful I will get dTape fully complete tomorrow, adding the 'hidden' parameters to the UI and allowing them to be edited. Any suggestions on how people think these should be handled would be appreciated - my current thinking is to simply use the easiest/ most pragmatic control for each parameter - e.g. On/Off parameters will be buttons, DropDown lists for things with finite choices like TapDivision etc.

It's quite sad, but it's actually been a lit of fun and quite satisfying!
You are like 50% my hero right now, 50% I want to buy you a brew. You are KILLING IT! Thanks for all your hard work, and I am glad this has been satisfying for you so far!

Tim
 
Messages
1,416
Thanks for the encouragement guys!

I suspected an editor might be of interest to other folks too.

I'm now quite happy that I've proved the concept, I'm probably going to spend more time working on a proper editor engine, which would allow other people to help add functionality - assuming they have some knowledge of xml.

How I am seeing this work is the Editor will have 3 xml files that it will load on startup (Timeline.xml, Mobius.xml and BigSky.xml), each xml file will contain a generic structure consisting of the Common Parameters and the 12 Types containing their specific Parameters (e.g. Ice and the Slice parameter).

This way, the editors will gain new functionality automatically simply by using an updated xml (e.g. to add the Ice machine, I wouldn't be doing new code, simply building the definition of the machine in xml)

The slowest part of this will be doing the Hex address mapping for each parameter, but I'm hopeful that I'll start to noticed patterns in how Strymon have done things across the 3 pedals (e.g. Specific Parameters for each Type are at the same address or in the same order).
 

Play by Tone

Member
Messages
913
If you set up a paypal donation link I'll chip in. I think its great you're making more progress in a day than Strymon has in a year. Kind of disappointing for them and complimentary to you!
 






Trending Topics

Top Bottom