Boss VF-1 CTRLR editor and AU/VST Plugin

Hello Everyone. In today’s blog post, I am going to showcase a VST and AU plugin I have written to control the Boss VF-1 hardware unit. I plan to release this in the near future, along with my TC Electronics M300 plugin and my Alesis MidiVerb II plugin.

First off, I am not connected with the companies mentioned above in any way, I am just a big fan of their work and vintage processors which have tons of character.

There are many debates over software versus hardware, in the box, out the box and hybrid. One of the most interesting takes on the debate is that these hardware boxes are like multi-effect DSP units. For example, Roland’s own plugin and algorithms in hardware form. As a result, we have unique spin on effects that were very carefully crafted to fit small chips in innovative ways leading to some classic sounds.

The downside is that in modern times, I am used to software interfaces, plugins. Fast an easy to get what you want, shaping sound with ease. I also don’t like having to keep bending over to dial in settings in my tiny hybrid set-up.

This is where the CRTLR project steps in. CTRLR allows you to build a GUI to interface with your Boss VF-1 hardware and best of all, you can program the plugin to taste through LUA. You can make it work how you want it to work with a modern DAW.

For example, when using the Boss VF-1 hardware, I hate having to remember which preset was used or what was dialled in. Using CTRLR, you can save the preset in your DAW where it automatically loads up when you load the project. You can live control the parameters of the Boss VF-1 and enable them to be automated in Logic.

The downsides are that you have to learn to program LUA and work out how to make the plugins work for you. Well, after several month of scripting and prototypes, I now have a good understanding of how to do this and I’m close to my first release.

The early version of the UF1 software to control a Boss VF-1 using default CTRLR dials and faders.
The early version of the UF1 software to control a Boss VF1 using default CTRLR dials and faders.

Plugin Versions

************************************************************************************
Version 1 (Alpha) – Small test group. Unreleased:

Hardware: For Mac and PC tested on a Mac Pro 2010, MacBook Pro 2017 (16GB)
Software: CTRLR cross platform. MacOS 10.14, Logic Pro 10.5, Audio Unit (native), VST (via BlueCat). Ableton via BlueCat.
Communication: 1 way –> Standalone or DAW Standalone or DAW via VST/Audio Unit to Boss VF-1 for one way control.
This version uses a sysex upload file in the user memory slots to call algorithms.
Featurs: DAW automation. Realtime operation. View all Boss VF-1 parameters for each Algorithm in one screen. Preset data saved and loads within and from DAW.
************************************************************************************

************************************************************************************
Version 2 (Alpha) – Status – In Development. Read blog comments below for progress updates.

Hardware: For Mac and PC tested on a Mac Pro 2010, MacBook Pro 2019, Mac Silicon.
Software: CTRLR and CTRLRX cross platform. MacOS 10.14, Logic Pro 10.5, Audio Unit (native), VST3 (via BlueCat). Cubase and Ableton.
Communication: 2 way –> Standalone or DAW to control Boss VF-1.
<— Boss VF-1 presets into the Standalone/VST3/Audio Unit
User slots are not needed in this version which means you can keep the Boss VF-1 set-up how you like it.
Features: DAW automation. Realtime operation. View all Boss VF-1 parameters for each Algorithm in one screen. Preset data saved and loads within and from DAW. Functions optimised for stability. Load presets from the Boss VF-1 which you can then save in your DAW (provided the DAW contains in-built preset saving).
Bugs:
1. Guitar Multi 1 SDD reports midi error from preset recall. Error message flashes on the Boss VF-1 screen from the standard preset call but the full preset is sent without any problems. I think this could be because I altered paramters and then switched bytes for testing or possibly due to being version 1.0 of the Boss VF-1 hardware.
************************************************************************************

Quotes:

X70 Comments: Dean

First day with the se-70 editor and I am blown away. Makes dialing in complex effect setups super quick. Super excited for the eventual plugin version. Thanks so much!

X70 Comments: Dean

First day with the se-70 editor and I am blown away. Makes dialing in complex effect setups super quick. Super excited for the eventual plugin version. Thanks so much!

When it is available, to obtain a copy, add a comment to the thread. I am not charging for the panel but I cannot make promises over functionality, updates and bugs. The panels are made in my free time but I recognise how useful they are. As a bonus, these classic boxes are really cheap rightStarting out can be hard and we all enjoy good music. By making them accessible to a modern workflow, it is also extends the life of these boxes which is great for the environment and but also because they sound great and have some unique fx and approaches. RSS is a good example. Not easy to pull off in a track but when it works, it can be really great. RSS is the psychoacoustic surround sound effect (in stereo) with left/right & up/down pan.

Writing these plugins take time. As you can see from the progress updates below. If you use the plugin and like the plugin, please feel free to send a gift, link/tweet (X), share links to my music or something else that can help. If you have old hardware that you are not using, please consider me. It is appreciated and it gives me chance to build more panels.

Finally: Please note that if you use these plugins, it is purely at your own risk. I write them for myself to enhance my music making experience and I update them when I want a new feature. I only test them on my own equipment (and a few of my musician friends).

For the next update (v2) will aim to include two way communication enhancements.
• Algorithm detection instead of sysex presets.
• Faders and dials load data from the inbuilt presets.
• Data flows – diagrams of how the FX are set up in the algorithm.
• More accurate LCD panel/preset renaming.

However this will be after I release the TC M300, Alesis MidiVerb II and finish work on the Boss SE-70.

[link] Coming soon…

If you like this software, use it regularly and want to support me in my future endeavours, please feel free to see me a gift at buymeacoffee.com by clicking here:

If you find a bug or have some general feedback, you are welcome to let me know by adding a comment to this page (link).

********************UPDATE********************

GUI Look and feel updated to reflect the design colour scheme of the original Boss VF-1.

********************UPDATE********************

********************UPDATE********************

After completing the bulk of the one way communication and GUI design, I’m now working on the Apple Logic Pro (DAW) Audio Unit compatbility. I thought I would run an experiment to see how many parameters I could keep active until the validation app falls over. I am impressed. It can take a lot more than I thought it could.

********************UPDATE********************

After a successful port to Apple Silicon and and Audio Unit in Logic, I created my first update video to showcase my current work.

Due to the unexpected popularity of the TOPD X70 editor for the Boss SE-70 and requests for the TOPD UF-1 editor for the Boss VF-1, I need to get organised! I am now organising the process through a form so that that my inbox can be organised

Your email will come through to my inbox and I will roll off the latest copy. It is important to allow monophreak@outlook.com as a safe address in your mail program because .zip files or links to one drive accounts are typically blocked..

Please remember that many months of hard work has gone into making these editors. You can read about my efforts in the blog pages and comments section. This takes up a lot of my time. If you use one of the editors and find it add values, please support me through a donation via BuyMeACoffee. Support either enables me to get more gear and make more panels or accpet a thanks for a job well done

If you’re interested in unavailable editors, please select and I will contact you if/when they are available.
CTRLR is cross platform and I will aim to compile versions for Windows ARM IF I can get access to a Windows ARM machine. It may take some time.
The use of this software means the acceptance of the following terms. This software and all accompanying files are provided “as is” without any warranty, express or implied. This includes, but is not limited to implied warranties of merchantability or fitness for a particular purpose. In no event shall I (monophreak) be liable for any damages whatsoever arising out of the use or inability of this product.

Finally, remember to get in touch if you have any ideas to enhance the editors. I have ideas including direct preset save/loading from sysex files, DAW integrations and more. I am open to ideas.

Mailing List

54 thoughts on “Boss VF-1 CTRLR editor and AU/VST Plugin

  1. monophreak says:

    Progress update: 1st January 2024 started the VF-1 control panel project. Create the AU/VST frame, background, mapped out locations and reviewed the amount of effects I could fit on the screen. Created overall structure.

    Progress update: 8th January 2024, wrote the global parameter for settings such as BPM, output.

    Progress update: 9th January 2024, wrote the preset system for User 1, User 2, Factory 1, Factory 2.

    Progress update: 11th January 2024, created the combo control bank to call the different algorithms, mapped into the panel.

    Progress update: 12th January 2024, updated the panel graphic design.

    Progress update: 13th – 31st January 2024, wrote faders and dials to control several of the effects inside the algorithms.

    Progress update: 2nd February 2024, exported the plugin and tested in Logic.

    Progress update: 3rd February 2024, decided on an overhaul. Ditched the tab system. I found artefacts when saving and reloading the CTRLR project. After Googling, panels turned out to be the perfect option. Mapped out panels and wrote LUA script to control panels.

    Progress update: 7th February 2024, ported the current set of algorithms to the new plugin.

    Progress update: 8th February 2024, wrote LUA to switch off send to midi panel properties so that only the current algorithm/preset will transmit data to the VF-1.

    Progress update: 12th February 2024, wrote LUA scripts to control buttons.

    Progress update: 20th February 2024, worked out all of the sysex code to control every parameter in every effect, for every algorithm in CTRLR sysex notation, ms ls z5 format.

    Progress update: 1st March 2024, started adding in new algorithms. Completed basic testing.

    Progress update: 3rd March 2024, made slight changes to the size of the plugin and tested on a 2017 Mac Pro laptop.

    Progress update: 6th March 2024, sent to friends for testing/feedback.

    Progress update: 13th March 2024, wrote more algorithms.

    Progress update: 16th March 2024, wrote more algorithms.

    Progress update: Paused project and moved onto SE-70. I paused the project to check the viability of a SE-70 CTRLR panel. I want hardware I can use in a similar fashion to a VST so needed to know if it was worth keeping or re-selling. I found the SE-70 a tough nut to crack but I like the challenge. After making great progress, I moved onto the SE-70 project for a short while but will come back to this one shortly.

    Reply
  2. monophreak says:

    Progress update: 28th March 2024, after all the work on the SE-70 panel, I realise there is a better way for the VF-1 CTRLR plugin to run. Therefore, I am going to finish off v1 (which is still really powerful) and then update it to v2 with better two way communication.

    Reply
  3. monophreak says:

    Progress update: 29th March 2024, reached a programming decision point. VF-1 often has a combination of rate and BPM in the same system exclusive code. This can be separated out into two dials/faders for ease of use. Doing this leads to the potential of two sysex presets being sent to the VF-1 when a DAW reloads. I need to write a script to turn off one of the split values while the other is active and possibly loop through this on start-up so values are detected before they are sent to the DAW. My plan is to add an extra value for ‘off’ along the lines of: Called when modulator value changes, run script, IF value = off then disable midi send to the DAW for fader, else keep the midi send active. Technically, if this runs within the panel, it should actually save within the preset. If this is the case, I will not need to loop through these values on start-up. I will then add in these conditions for V2 plugin so that upon algorithm detection, it switches off the unused fader. This will work more efficiently in v2 than v1. For v1, upon preset load – the algorithm variation (such as 1/8, 1/4, 1/2 bar variation) will initially load in for a preview but will need to be manually selected in the GUI to form the final preset. In v2, it will autodetect and switch off the unused fader/dial. The same script will be used across both versions.

    As an alternative, I could add a script to toggle between the two faders/dials. This will work if I can wildcard ‘%’/’*’ on part of the string to match the associated modulator. For example, ‘GuitarMulti1_Mod_PH_%’. The advantage of the ‘off’ is that it is a sysex within range +1 for off and saves space but the button is clearer. I will try out both and make a decision.

    Reply
  4. monophreak says:

    Progress update: 30th March 2024, successfully written two types of script. A toggle switch to load either the BPM dial or the Hz/Rate fader and a script (2) to de-activate BPM when the fader is active. When the fader is at full height, an extra ‘Off’ option has been added to the very top of the fader and this deactivates the fader, activating the BPM dial. Script 2 is a little less clear although highly function but crucially, it allows more space on a screen and therefore I am going to go with this one for now. I will think about dimming or hiding the dial when the fader is active.

    Reply
  5. monophreak says:

    Progress update: 30th March 2024, tested both scripts and both successful. Scripts need to be written to scale up accordingly. For this, the panel(v1)/algorithm(v2) needs to be detected and then all specific modulators need to be identified on the layer panel so that the enable/disable functionality applied to the rate/BPM split sysex. In LUA, tables are used instead of arrays and I need build a table for name, table for value and then key pair them to hopefully feed into my IF conditions.

    Reply
  6. monophreak says:

    Progress update: 31st March 2024, worked out the most efficient way to detect the algorithm. Well, that one was a toughie. v1 was more complicated due to the algorithm being connected to the preset. v2 will be 10x easier to write because I intend to get the VF-1 to tell me what algorithm is loaded. I noted a memory efficient solution for when I get to this stage. As of tomorrow, I should hopefully finish off the rest of the code for the rate/bpm activation.

    Reply
  7. monophreak says:

    Progress update: 1st April 2024, another real tough day getting my head around LUA. Thankfully, I managed to achieve my goal thanks to one of my oldest and best friend’s guidance and support. Essentially, the problem involved using LUA to build the equivalent of a multidimensional, key paired array but using LUA tables instead. The problem was compounded by the LUA console only outputting the last entry in a variable via a FOR loop, despite processing all of the data (which could be viewed in a table with correct record count). Translating a concept to a different language can be complicated sometimes. I wanted to achieve scalability. One script to cover a function used repeatedly. Anyhow, the main concept is ready and I just need a few more conditions before I start applying this script to the entire plugin.

    Reply
  8. monophreak says:

    Progress update: 1st April 2024, I should add that today is an important milestone in that it is the day where all of the key functional components of the panel have been written for v1. From this stage, it will be a case of finishing off adding in the algorithms.

    I have a big music project this month and will have to pause the project until next month. I am tempted to bounce out what I have so far (in VST/aU form) as a partially working demo/taster or whether I should wait and release the full project at a later date. If anyone is interested in a taster, please let me know in the bug report/feedback page.

    https://monophreak.com/boss-vf-1-ctrlr-au-vst-plugin-bug-report-feedback/

    Reply
  9. Koka says:

    Hi where I can download editors for VF-1 and SE 70 to test?

    Reply
    1. monophreak@outlook.com says:

      Hi Koka, it is so nice to receive a comment that isn’t spam! I have a standalone for the SE-70 available and the VF-1 was looking pretty good. I can’t remember where I got with this – I think it was fully DAW to box.

      Please let me know if you have a Mac or PC and I’ll compile the latest version.

      Reply
    1. monophreak@outlook.com says:

      Hi Brian, my apologies about the late reply. My MacBook Pro sadly broke down in November due to a bad data cable in the LCD. I had hope’d the problem may have been the backlight cable but it was something bigger. The screen fades to white as soon as I open the lid and then becomes un-useable. It is exactly like in this video: https://www.reddit.com/r/macbookpro/comments/1f4fxiy/screen_advice_gradually_turns_white/

      As a result, I have been in-between trying to find a fix, repair quotes and I have been researching the M4 Pro and learning how to build IRs to port my favourite plugin settings over. Sadly, looks like a write-off because I need a whole monitor replacement due to how these LCD panels have the cable attached.

      As a positive, Logic’s Impulse Response Utility is fantastic. I really need to add a blog article about this for porting over content to the M4 Pro. I haven’t really got into IRs before now but they are really useful.

      Another positive is that, when I am back up and running, I can test everything out on Sequoia. I have put an order in so hopefully will be back up and running in the new year. I have two Hyperbits homework to complete too.

      Reply
  10. Da Ripper says:

    Hi, … I’m on windows and I would like to use the Vf-1 and Se-70 editor. I just got both units and need a editor

    Reply
  11. monophreak says:

    It’s been a while but I am finally back on the Boss VF-1 project. I think the VF-1 project was the third project I wrote but by far the biggest of the three. After some of the magic of the VF-1, I bought the Boss SE-70 because one near me was going cheap. The Boss SE-70 project took over because the vibe instantly blew me away and it was by far more of a technical challenge than the Boss VF-1. If I was going to learn LUA, I wanted a toughie.

    Now that the standalone version of the Boss SE-70 is alive and well, I am going back to the Boss VF-1 project. Going back, I have to say – the VF-1 also has some real charm. While I’m not impressed by the AMP modelling, the other effects are absolutely stellar.

    Time wise, I can see I have already completed a lot of work on this. Many of the technical elements have been worked out including panels, knobs and faders for each algorithm with working send functionality from a DAW.

    I will need to reshape the GUI. When I worked on the Boss SE-70, I immediately changed the layout to get more in a smaller space and for the panel to fit better on the screen so that when it is contained inside a DAW window, it all fits.

    It’s a pain but I spent my day re-shaping the GUI. Next up, I need to look at some of the more advanced design elements from the Boss SE-70 project and see if I can map them into the VF-1 and save myself some time.

    Reply
  12. monophreak says:

    After a long day re-shaping everything and building new graphics in jknobman, the graphical user interface (GUI) is taking shape.

    The BOSS VF-1 has a tricky colour scheme. Tons of red with white text and black knobs and buttons. To make the panel authentic, I am going to go with this colour scheme because it is distinctive and when I eventually run it alongside the Boss SE-70 in a DAW, it will be clear to see which Boss I am controlling at that time.

    Reply
  13. monophreak says:

    Yesterday was a long day. I managed to redesign the LCD, head of the panel and global menu system. I am pleased with the overall look of this section. I then proceeded to start updating modulaters (faders and buttons) on the algorithms section. I think are a lot. I ended up laying the graphics on all of the main on/off switches. setting the midi outputs to 0/1s and realigning all of the titles and LCD panels per algorithm.

    Reply
  14. monophreak says:

    For today, I have spent the day replacing the generic sliders and dials with my own design. This includes updating all of the text to match the white on red from the original unit. It looks good.

    When completing activities like this, you really realise how deep this box (at 30 bit internal processing) can go. It makes me exciting about using some of these features inside the DAW. Particularly the RSS which is a (from what I beleive) a psycho acoustic, virtual surround sound complete with up/down azimuth controls. It means you can EQ/filter not only front to back and left to right but up and down.

    I haven’t seen anything like this particular implementation before and just one of the many gems inside this box.

    However, with so many algorithms and so manys layers deep, just sorting out the GUI alone is going to be a long haul but worth it because when it’s set, I can change the skin in a couple of seocnds and refine the look and feel.

    Reply
  15. monophreak says:

    Okay, so it’s very late. I have made great progress though and I think that by the end of tomorrow, I’ll have all the GUI elements in place.

    I’ll post a screenshot on this page.

    Reply
  16. monophreak says:

    This really is a long slog. Thankfully, only 8 more algorithms to go and the v1 project will have a full GUI overlay. I can see there are minor fixes needed with the panning but it will take a moment now that I have a specific theme element that transposes onto every single pan item.

    For tomorrow, I hope to start work on the preset switcher code so that either a single user bank or factory bank will be active.

    In case I forget, my eventual plan will be to move all of these elements into one single drop down menu to free up space for the assign matrix.

    Reply
  17. monophreak says:

    Finally, after a long haul, the graphical elements are in place and now pretty much aligned in their final positions. Only minor alterations will be needed at this stage.

    I can now proceed to start programming bytes with combined values (to go beyond a value of 128 from a single midi transmission per knob/fader) and add in elements such as the preset switch, midi lock (to prevent accidental changes to midi) and frequency to bpm switches.

    After these steps, I am going to look at the automation mapping. The first edition of the plugin sends data from the panel to the Boss VF-1 only. Since the Boss SE-70 project, I now have an understanding of automation parameters in Logic and will try and create a strategy for adding this into the plugin which extends the functionality from live control (for manually recording changes live) to something managed by the DAW.

    I know the problems from the Boss SE-70 project and so will try and overcome this (if possible) from the start.

    Reply
  18. monophreak says:

    It’s been a good day. I managed to program in important GUI functionality such as the preset switch, midi lock (to prevent accidental changes to midi) and frequency to BPM fader to dial switches. I’m going to see if I can fix the double bytes in the DAW version of the panel. It will be tough to complete this without two way communication so I may come back and update this when the standalone V2 panel is up and running.

    At this stage, I also appreciate the huge chunk of work completed on this project last year. When I started this project, I did not have any idea what it would take to make these panels come alive. Over a year in and I have a strong sense of direction and great understanding what to do in order to build this type of project. I also see why it’s quite rare to see CTRLR panels for areas with multiple algorithms. If I have programmed a synth, it would pretty much be what you see if what you get, a panel (maybe a few layers deep) to control all of the oscillator functions, LFOs, effect and typical features found on a synth. A effect units contains an absolute ton of algorithms which means you are completing the work, many times over. In my opinion, it really highlights the dedication and skill of the Boss/Roland team and why these boxes at current second hand prices, are an absolute bargain. The more I expore the Boss VF-1, the more I can see that this is a gem. While it did not grab me the same way as the Boss SE-70, there are some exceptionally well crafted algorithms inside this box but maybe not where you would expect to find them.

    Reply
  19. monophreak says:

    After a long and laborious day, I have managed to get all of the Boss VF-1 parameters inside the Audio Unit/VST. The plugin kept failing the audio unit validation process in Logic and it took a lot of working out as to why this was the case. I found a new program, “pluginval” which gave me a lot more information than the failed message from the audio unit plugin manager from Logic.

    I had to make some slight changes to my LUA code and double checked all of the parameter names for automation. I can see that this is going to be another area where this box shines. Using the RSS to pan over the top of my head, down and around using the Azimuth controls looks really good fun. Automation will take this to the next level, enabling consistency in a mix down.

    Reply
  20. monophreak says:

    Today, I downloaded the latest CTRLRX and ported to Apple Silicon for my friend to begin initial testing. I was really pleased to see this could be easily ported to Audio Units and VST3 for Apple Intel and Silicon and Windows ARM and Intel.

    It’s early days but I was impressed by the stability of the plugin. In case anyone is interested, I have added a video to the bottom of the blog post, showcasing current progress on the project.

    Reply
  21. monophreak says:

    After a really solid version 1, of the UF1 editor running in the DAW, I have turned my attentions to version 2. Getting data from the VF-1 was tricky to crack and involved a bit of Googling. I managed to work out the get preset sysex from the midi implementation manual but it just would not take. Eventually, I took the first part of the sysex and typed it into Google. To my surprise, it turned up a post from an old Sounddiver forum archive and involved a situation where a user was trying to load data into Sounddiver and it gave me the answer. In case anyone is interested, the answer (from 24 years ago) is here: https://sounddiver-users.yahoogroups.narkive.com/vpnl8dd1/wolfram-franke-interview and the solution? The Boss VF-1 needs to be on midi write mode in the panel. Yey! this worked like a charm.

    In order to avoid the need for this to be on all the time (in cases where the VF-1 encoder is broken or temperamental), I am going to work out all of the algorithm mapping and then enter factory presets from a call menu. There will be an algorithm or user preset toggle. The user preset toggle will pop up a message about the midi write page.

    In midi write mode, it would be nice and easy to load a preset, save it into a DAW inbuilt preset menu. On first run, I’ll build a bank of my presets in Logic and then switch to algorithm mode. If I want my preset, I’ll just use the dropdown in Logic.

    I can see that this will be a fantastic workflow and as a result, I believe I have cracked the most challenging part of the project.

    The next part will be a solid grind. I received a message of 255 bytes from the Boss. This means a lot of midi data which needs to be worked out and mapped into each and everyone of my faders and dials. It is possible that there are more than 255 bytes for some presets but I have not explored this yet.

    Analysing the midi will provide me with the information about double byte operators which I can then work out how to handle.

    At times like this, I wish I had opted for a simpler project but it will be worth it when I get to automate that fantastic RSS into my music.

    Reply
  22. monophreak says:

    I started work on the combo menu system for the user and factory presets yesterday. I already worked out how to call the presets but I wanted to obtain the full algorithm and preset settings to map into the panels. Using CTRLRs checksum system, I wrote the commands using Roland logic to load the preset through a sysex call command to the Boss VF-1 in midi bulk mode. All looks great. I received midi back from the Boss VF-1.

    I managed to get nice 255 byte midi chunks back which I will start mapping into the dials and faders. To begin, I need to look at which sections of the midi code call the algorithms.

    Reply
  23. monophreak says:

    Over the week, I have been working out the algorithms. This part of the process always takes a long time but I think it will be worth it. While working on the RSS, I decided to dig deeper and pick up a Boss SX-700. Pending how I am feeling, I may either return the the X70 project or work on a new panel for the SX-700.

    Reply
  24. monophreak says:

    I now have a good technique for working out the full algorithms for panel mapping. I can see this will take longer than the Boss SE-70 due to how the Boss VF-1 sends out the data. For speed, I think I will look at a temporary development script which calls the current preset buffer routinely following a dial turn. This will provide me with a fast output of the full preset to quickly identify parameters.

    I am only four algorithms in at this stage but I am picking up speed. My plan will be to map everything out. Most things look logical at this stage. Output is consistenly 255 bytes on the V1.0 version of the software.

    I have already identified key parts of every algorithm including the name, the preset location and the algorithm identifier. As I go on, I’m sure I will work out more and more.

    I need to stress, this stage really is a long haul so but if I complete at least an algorithm a day, then I can be ready to start mapping everything into the panels next month. There are no two ways about it, this jobs require dedication. Time to grab a coffee!

    Reply
  25. monophreak says:

    Current progress, 7 out of 37 algorithms mapped. I also picked up a Boss GX-700. My thoughts are if I’m going to work out the Boss SX-700 midi for the RSS, it will may share midi sysex with the GX-700. Therefore, it makes sense to look at them both together.

    Reply
  26. monophreak says:

    9 out of 37 algorithms mapped. Feels like a long way to go. This type of software development is definitely not a fast process.

    Reply
  27. monophreak says:

    Progress is going well. Lucky 13 down and a few extras such as algorithm id and category id. While mapping out the bytes systematically, I beleive I now have the bytes for algorithm and category. I’m not 100% sure but I think I have it worked out at this stage. I have two algorithms that don’t quite fit the algorithm pattern, Reverb 1 which could have three calls depend on whats active but each are still unique and Delay + Chorus/Speaker Modelling which share the algorithm bytes but different category. Therefore, I’ll use the category as the detemrining factor. It could be an error in my sysex generation though so I will check when working on this specific part.

    The other thing I may need to come back to is the preset call from location is 255 bytes but the send from Sysex Librarian gets 410 bytes for an individual patch. If I am missing data then I’ll explore the 255 bytes + 155 bytes to see if there is a better get midi data call.

    Reply
  28. monophreak says:

    14 algorithms mapped out and I have written re-usable functions to handle the preset name (including options for editing), the category name and to load in preset on/off switch positions. I worked out how to handle the double byte sysex values containing preset settings.

    Reply
  29. monophreak says:

    I’m making great progress. For anyone following along, I have written all of the DAW to VF-1 communication including all functions to handle the core changes to sound. Every algorithm has been mapped in. The current work is on communication from the VF-1 to my software. If all goes well, I intend to be able to click on a user preset or factory preset and beam all of settings into the editor/plugin so that I can quickly store presets I have already built and cherish. I will then save them in my DAWs preset manager and save from here in the future.

    I have the v1 version for one way communication (working) and the v2 for two way communication. v1 is very stable and through my experiences of the CTRLR ide, I hope to maintain this stability for the v2 version.

    Reply
  30. monophreak says:

    After mapping out all of the algorithms, the next phase of the project is to work out which bytes control which knob or slider. I then work out the relationship between the bytes to calculate the correct value that matches my fader or dial with the one on the VF-1. Thankfully, I have now picked up a lot of experience in this area and provided I have sufficient bytes, it tends to go smoothly. Byte patterns tend to fall into similar types of mathematical equations.

    Reply
  31. monophreak says:

    15 out of 37 algorithms mapped. Phew! Steady progress but feels uphill at the moment. Persistence is the key.

    Reply
  32. monophreak says:

    Due to coming towards the end of the project, my thoughts are turning to the next box. Thanks to the kind people gifting me coffees, I have looked around at similar Boss boxes in this era (that share similar sysex coding) where I can use my expertise. The candidates are the SX-7000c GX-7000 or GP-100. I should be able to build editors and possible VSTS/AU for these boxes. SX-7000 looks like an amazing box for the enhanced RSS and the GP-100 looks pretty incredible for tone. GX-7000 looks decent for tone and possibly greater opportunity for plugin material. If anyone has a comment, please feel free to share.

    I am very thankful to everyone who has gifted me a coffee because it has created a new opportunity. It isn’t why I got into creating the software but it is highly appreciated and I can see how kindness can lead to greater things.

    Reply
  33. Monophreak says:

    16 out of 37 algorithms mapped. Fantastic night last night.

    I programmed in the first algorithm (2 Channel RSS) and it worked a treat. The second algorithm (10 Channel GEQ) was missing bytes. This is something I expected based on Sysex Librarian’s play button sending 410 bytes. After looking at the 155 bytes portion, I noticed the preset bytes were incremented by one value and the checksum decreased by one. As a result, I plugged this into my combo menu and to my surprise, it returned another 255 bytes which had all of the data. To make the function simpler, I spent a bit of time exploring the Librarian message and the manual and eventually found a trigger to call 410 bytes. In relation to handling, this is perfect because I can write a function to check midi length and store the longer 255 bytes as variable one and the shorted 155 bytes as variable two. I can then send the combined output to the main function that calls the algorithm interpreter to load values into the knobs and slider.

    This is great news because it is the final missing piece. Other elements are easy to identify but this area was different to the Boss SE-70 and needed some working out.

    Reply
  34. monophreak says:

    17 out of 37 algorithms mapped. Yes! managed to re-write the function that loads in the data from a preset and it worked! I used a variable to hold the 255 byte sysex message and another for the 155 byte message. I then run the call to switch preset when the 155 bytes come through being as it is the final part of the message. It worked a treat. I updated the paramter load function to accept two variables. All of the preset parameters from the second message were able to be mapped in and I completed the 10 Channel EQ preset.

    Today, I am going to revisit the fader/bpm switch which currently works very well but has a sysex ‘waiting’ call. Although it looks and works great, in the VST/AU version, I can’t see a waiting call would be a good strategy. Therefore, I may change this to an Time/BPM switch before moving onto the next algorithm. From my experience with the X70, I want maximum stability and this will be the best route.

    Reply
  35. monophreak says:

    Acoustic Multi ready. I ended up building new switches and functions for the fader/bpm and for the Compressor/Limiter toggles to make everything clean and quick in AU/VST mode. Tomorrow will be a big one, Bass Multi.

    Reply
  36. monophreak says:

    Challenging day today. After getting Bass Multi programmed in, I managed to corrupt the project and had to revert to the backup version from yesterday evening. Unfortunately, I lost a night and all work from the next day. These things happen. I was fortunate to save the scripts in an external folder and I could see that I called a function that had a copy/paste end at the beginning, leading into a function which must have caused the corruption. On top of that, after all of the dial spinning, my encoder is now regularly skipping. It won’t be an issue when I have the editor built but just hope it holds out long enough to get it all written. I’m sure it will. Ah well, tomorrow will be a better day.

    Reply
  37. monophreak says:

    18 out of 37 algorithms mapped. Back on track after having to rebuild from my backup. the most interesting part of the project today involved finding a way to send a paramter value of 400 from one modulator and using three bytes to unpack a value from the sysex message. I am pleased that I conquered both. This takes me another step closer to the finishing post.

    Reply
  38. monophreak says:

    19 algorithms out of 37. Over the half way mark for the mapping process. All of the mapped algorithms then need to be analysed and the bytes worked out. The worked out bytes then get programmed into the algorithm faders and dials, ranges checked and data output tested.

    I am currently working on Guitar Multi 1. It feels like a really big hurdle. The Mod FX aspect of the algorithm contains a switch for 11 effects which is pretty cool. However, they share the same byte range which means that any byte can reflect the settings of the active mod. It has to be used in conjunction with the switch settings.

    To make it more painful, the active bytes may only produce a sysex output based upon a set of conditions. For for Mod FX, Harmoniser, the Voice switch for mono will activate Pitch and Fine but everything else returns a blank bytes. Switching to Voice Mono (double) or Stereo activates Key and the Harmony 2 fader, level and delay time. It means that while working out, I need to save endless sysex dumps for endless configurations. It is like wading through mud. Time likes this, I do question why I do this. However, looking at the box in this depth tells me exactly while it is worthwhile. It is incredibly deep and versitle openng up a range or uniquely Roland style sounds and FX which are very cool. Half way mark is always a challenge. although in truth, it’s more like 80% at this stage because I have completed all of the DAW to box implementation. Plus, Guitar Multi 1 is the toughest of the algorithms to map. After this, everything else should be less complicated.

    I can feel that my poor Boss VF-1 dial is starting to give up. Thanksfully, after the software is written, it will no longer matter as I will not need the encoder anymore. Another reason while this software needs to be written.

    Reply
  39. monophreak says:

    20 algorithms out of 37 mapped. I have been working on algorithm Guitar Multi 1 for five days now which is not great for motivation. As a positive, the end is in sight and I only have to test the values, make minor fixes and create several scripts to control the switches. My goal for todays is to move onto Guitar Multi 2 which is lighter. The next big algorithms include Keyboard Muilt and Vocal Multi. I take solace in the fact that Guitar Multi 1 is the largest and the most difficult to map so hopefully the other large multis will not take so long to work out.

    Reply
  40. monophreak says:

    21 algorithms out of 37 mapped. Moving forward. A huge leap in the project. I finished the largest algorithm. It took ages because I decided to build individual scripts to control the activation of different features based upon the options selected.

    Originally, I had a function that worked well but caused slight hangs in VST/AU form. It cycled through the BPM and Faders to calculate a table of possible options for flicking between the BPM dial and the rate fader. If the value hit beyond a set figure from the byte, it then moved into the BPM value or vice versa. However, it needed a regular look-up on the value change. I reduced this to a user option to switch between BPM and Fader. When presets load, I set the switches to configure correctly. This off loaded 11 look-ups on Guitar Multi 1 (and any other algorithm) which improved the efficiency of the VST/AU and positively impacts on stabilty. On a modern computer, it shouldn’t be a problem but it was causing a delay so there may be something else going on with the IDE and JUCE handling. Therefore, better to go for a reliable experience than something a little more fancy. I did leave a number at the end of each Fader/BPM switch in case I want to come back and investigate this in the futre. Sadly, these decisions, tests and solutions take time which is why Guitar Multi 1 has taken so long. Plus, the clever reusing of bytes for the mod algorithm by Roland took ages to work out and my poor Boss VF-1 dial is really skipping now.

    Reply
  41. Monophreak says:

    22 algorithms out of 37 mapped. Making really good progress by programming in the mapped bytes to the dials and faders. I finished Isolator last night and I am going to move onto Keyboard Multi. Keyboard Multi and Vocal Multi are the remaining big algorithms. Getting this one bagged will be a large step forward but I imagine it may take me anywhere between one to three days to get this written. I am eager to get some semblance of a life back (away from programming) and therefore, want to rocket through as fast as I can.

    Reply
  42. Monophreak says:

    23 algorithms out of 37 mapped. I managed to complete about 60%of Keyboard Multi last night which is great news.

    Reply
  43. monophreak says:

    24 algorithms out of 37 mapped. Keyboard Multi programmed in and LoFi. Hopefully I will have a faster run with some of the smaller algorithms. The 20 multi-tap looks like the next long mapping. My thoughts are turning their attention to the plugin load feature. When the plugin loads, I want the plugin to either send sysex messages for values from the interface or have a refresh button to do something similar. The reason for this is that when I open and close a project, I want the settings to send automatically so I can pick up where I left off.

    I also want to keep the algorithm picker and I intend to load each from a factory reserved area which should work nicely.

    The best thing about writing a plugin is that I can really make it work in a way that promotes good workflows to save time. The Boss VF-1 is strange in that you have to put it into read/write mode using the dials to load data but with careful programming, I can bypass this for a lot of functionality and relocate this to the DAW. That way, if the encoder completely goes, it won’t matter.

    Reply
  44. monophreak says:

    25 algorithms out of 37 mapped. Mic Simulator programmed in. I feel like I have a good pace and while I’m ploughing through the algorithms, I am thinking about other features such as loading from a sysex file.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *