• OPL Studio v2.2.0 Software & Maker Days 2024

    Maarten Janssen09/08/2024 at 11:59 0 comments

    The OPL Studio v2.2.0 software is now available! I held off releasing this version a little longer, because there was one additional improvement that I wanted to make specially for the Maker Days. The new software can be downloaded here.

    This release contains the MIDI CC mapper and auto save fearures that I talked about in the previous project update, but it also has an update on what was previously the Quad Sequencer. 

    Live Sequencer

    The Quad Sequencer was previously intended as a module that you could use for live playing with your OPL Studio sequences. It was functional, though it had some big limitations. There were only 4 slots available and there was no ability to switch a bunch of sequences at once. In the v2.2.0 software this has been changed and the Quad Sequencer had now become the live Sequencer. 

    There are now 2 banks of 6 sequences for you to play with. You can play sequences from one bank while you're preparing the sequences in the second bank and then cue the bank to start playing at the next transition. A bit like a DJ preparing the next record to play on a second turn table. 

    This update I wanted to add especially for the Maker Days!

    Maker Days 2024

    On September 14 and 15 it's Maker Days in Eindhoven, The Netherlands! If you're in the area be sure to come to the event on the Stadhuisplein where I will be present to show OPL Studio and my other projects such as the OPL2 Audio Board, OPL3 Duo!, my LED signs and indoor / outdoor thermometers. I'll have a limited number of kits available for purchase at the event, but in any case if you have the chance be sure to visit and say hi!

    I'll have OPL Studio set up with a MIDI keyboard so you can try it out for yourself, there will be an OPL2 setup to drum and play piano and you can listen to some awesome DOS game music played by an old XT PC through one of my OPL2 Audio Boards.

    This year I'm also participating in the Maker Night on Friday September 13 where I'll give a live demo of OPL Studio

  • Software Updates And Some Legs For OPL Studio

    Maarten Janssen08/18/2024 at 18:42 0 comments

    Time for some new updates. The v2.2.0 software is ready and contains two new features that I will talk a bit about today.

    MIDI CC Mapper

    The MIDI CC Mapper that I've been talking about for a long time is ready! You can use it to map MIDI controls to Synthesizer controls. By default OPL Studio maps volume, panning and modulation to channel volume, panning and vibrato. But now you can map additional controls for example to control the vibrato rate and depth, tremolo, or have direct control over OPL patch parameters. 

    The MIDI CC Mapper can be found in the Synthesizer Setup app. To add a new control simply click add and choose the MIDI control and the synthesizer control where it gets mapped to. To make your life a bit easier you can click on Sample MIDI, change the control and OPL Studio will detect it as the MIDI control to be mapped.

    With mappings for OPL parameters in place you can now also use your MIDI equipment in the patch editor to change parameter values.

    Auto Save

    In the last decade we've become used to applications that auto save our work. You type a note in a text editor like Sublime Text, you close the app and when you open it again a day later your note is still there, even though you didn't explicitly save it. This is really handy and it started to annoy me that OPL Studio didn't do this, especially while working on the MIDI mapper. Each time I changed something in the code OPL Studio would reboot and forget all of the changes I had made. This had to change!

    You now have the option to auto save your current session to the SD card. Each time you close one of the app modules OPL Studio will write your current session to the SD card. When OPL Studio restarts and it finds a previous session on the SD card it will restore the session and you can immediately continue where you left off. 

    Auto save is enabled by default, but can be disabled in the OPL Studio settings.


    Next Software Update

    The v2.2.0 software update that includes the MIDI CC Mapper and Auto Save feature will be available two weeks from now when I get back from holiday.

    3D Printable Stand

    The other day I was contacted by an OPL Studio user who wasn't happy that the unit was sitting flat on his desk. So what he did was design a stand that clips around the sides of OPL Studio to have it sit at an angle. He contacted me to share the model and I must say I'm not sure how I could've lived without it. The two legs fit snugly around the unit and it makes it really comfortable to use, plus it just makes the unit look nicer.

    You can download the STL for the stand here to give your OPL Studio some legs. You might as well want to flip the stylus holder when you're using this stand. You can do this by 3D printing the stylus holder model and mirroring it around the Y-axis in your slicer. You can find all parts for the OPL Studio enclosure on Printables.

  • OPL Studio v2.1.0 Software

    Maarten Janssen07/13/2024 at 08:57 0 comments

    Time for another software update! The new synthesizer code v2.0.0 that I introduced for the all-in-one hardware was a great improvement of what was there before, but it also contained some unfortunate bugs. The biggest issue being that it completely broke when putting OPL Studio in OPL2 only mode. This has now been fixed as well as v2.1.0 containing the long awaited support for pseudo 4-OP patches.

    Pseudo 4-OP Patches

    So what are pseudo 4-OP patches? They are like 4-OP patches, but using two 2-OP patches to produce a richer sound to emulate a 4-OP patch. Since we're emulating 4-OP patches it means that these kinds of instruments can be used both on OPL2 and OPL3 hardware. Back in the day this would be a great fit for example on older SoundBlaster cards or Adlib cards to enhance the audio. For example DOOM uses this trick with some of its instruments.

    IMO after playing around with pseudo 4-OP patches for a while they may even sound better that regular 4-OP patches! especially when playing with the finetune for the second voice you can get some beautiful sounds.

    Updated Patch Editor

    Supporting Pseudo 4-OP patches introduces some additional parameters that need to be exposed through the patch editor. So it has been updated to add the controls for transpose and finetune of the second voice. Finetune is now also available on regular 2-OP and 4-OP patches, by the way.

    There is now support for DMX instrument banks in the form of *.OP2 files, such as those used in DOOM, that include pseudo 4-OP instruments and the OPL Studio session files *.OPS also support pseudo 4-OP now.

    The new software can be downloaded from the OPL Studio release page https://github.com/DhrBaksteen/OPLStudio/releases

    And now back to those MIDI CC to synthesizer CC mappings!!

  • OPL Studio is now available on Tindie!

    Maarten Janssen05/30/2024 at 18:40 0 comments

    Just a short project update this time to announce that after more than year of struggling with bad hardware designs, mistakes and frustrations the new OPL Studio is now available in my Tindie store for everyone!

    The new units improve upon the existing OPL Studio design. I've taken into account the feedback and wishes that I've received from many users over time as well as my own wished to create the ultimate OPL2 MIDI synthesizer!

    The 'old' kits will also remain available for everyone who already owns an OPL3 Duo or OPL2 Audio Board and wants to expand its capabilities, or for those who want to customize OPL Studio to their own liking.

    Find out more on my Tindie page

  • The Home Stretch

    Maarten Janssen05/19/2024 at 12:47 0 comments

    Right now I'm putting together the first production units of the new OPL Studio. It's the final step and it can sometimes be frustrating since I'm extremely happy that finally units are working well and I'm almost able to share them with the rest of the world, but also it's where I find all the little problems that I want to fix before putting the new all-in-one OPL Studios in my Tindie store. 

    Now is the time when I figure out what is the best way to assemble each unit, what to look out for during assembly, what to test, and how to fix the inevitable mistaks that I'm going to make during assembly.

    Some parts turn out to be easier than expected. The ZIF connector for the LCD with all of its tiny pins was the most nerve wracking component at first. But after surprisingly few times I got the hang of soldering it and now I no longer break a sweat. 

    On the other hand, for the enclosure I've found lots of little mistakes that I needed to fix. I ended up redesigning most of the enclusure over the past couple of weeks. This resulted in an enclosure that's simpler to 3D print and wich is much sturdier than the design I had before. The LCD bezel was the final pice of the enclosure puzzle that I needed to solve, as it was too easy to come loose. It now clamps into the LCD mount so it won't come loose so easilly anymore.

    For now I'm putting together a small stock pile of units and awaiting a few more components that I ordered too few of, but then after a very, very long time the new all-in-one OPL Studio will be available!

    OPL Studio Software v2.0

    With the new hardware also comes new software. The OPL Studio software v2.0 is the first release to support the all-in-one as well as the existing kit versions of OPL Studio. No changes are needed, the software detects the hardware during start up and fully supports both models. 

    Support for the new hardware is not the only new thing in the 2.0 software. In this release all of the OPL3 synthesizer code has been rewritten. It no longer relies on my Arduino OPL2 library and that makes it much more flexible toward the future.

    This was a huge undertaking that I really underestimated. It has taken me several months and from a feature perspective the 2.0 software may look like nothing new has been added, but it lays the ground work for some very exciting new things coming soon!
    • DMX and WOPL instrument patches with support for pseudo 4-OP patches
    • Routing of any MIDI CC to any synthesizer parameter.
    • Patch effects like the macros from Adlib Tracker

    The new software is already available on GitHub. The OPL Studio website I will update next week.

  • The All In One hardware

    Maarten Janssen03/23/2024 at 14:43 0 comments

    The hardware for OPL Studio with integrated OPL3 Duo! is ready!!! It has taken many months with lots of frustrations and times where I just wanted to give up, but now it's finally here :)

    I've put together a quick video to show the first images of the all in one OPL Studio in action. It's playing a simple MIDI tune running an inbetween version of the old and upcoming re-write of the synthesizer code. The audio is a direct capture from the line out. You can hear some exagerated vibratos that I had hardcoded while experimenting with the new synth code, it does sound nice on this tune I think.

    The enclosure is also almost ready, so in a couple of weeks the new OPL Studio will be finally available from my Tindie shop!

  • The Good News Project Log

    Maarten Janssen02/14/2024 at 19:12 0 comments

    Finally I have good news to report on the all-in-one OPL Studio! 

    This design is like a night and day difference compared to previous prototypes. The audio is clear, the line out has a higher output level and the speaker out has a much, much lower noise floor. There is no more noise on the line out and on the speaker out there is only very slight noise from the LCD if you're listening through headphones and the OPLs are silent.

    There is light at the end of this very long tunnel now!

    Mistakes With The LCD

    Is it all good? No! Of course I did find more mistakes. The biggest one being the LCD connector. At one point during the design I had rotated the footprint, but I fell into 'a trap for young players' and I forgot to also reverse the order of the pins! So the LCD was dead. After realizing this I was a bit hesitant about fixing it, because it was tricky enough to solder the connector the first time and desoldering it and soldering it back after rotating was a good challenge! Also because there was no room. I had to solder the connector back at an angle and let it rest on some resistors and capacitors. To my surprise I managed to do it! 

    The LCD showed some signs of life, but still no clear image. It only showed a garbled mess of gray pixels. So I was sure that I messed up when soldering the connector. But to my surprise, when I added a connector for one of the old LCD modules, it was showing the same mess of pixels. This confused me and took me a while to figure out. It turned out to be the reset signal. On the kit design I had not used it, but for the all-in-ones I intended to use it. Turns out that I had not given the LCD controller enough time to properly reset. Problem solved after a simple software fix. Even the touch screen worked on the first try.

    The brightness is still a bit of an issue, because it doesn't work as it did on the old design. The screen is very dim, so that's still something I need to fix.

    Other Small and Easy Fixes

    There are other small things that need fixing. Transistor footprints that are not quite right, the MIDI status LED being too bright, the 3D printed LCD mount that needs some tweaking.

    All small thing that I will be working on in the next two weeks and get another few PCB prototypes made to check what should be the production version of OPL Studio. 

  • All-In-One Prototype Assembly

    Maarten Janssen02/06/2024 at 17:09 0 comments

    All-In-One Prototype

    All the parts to assemble the fist new All-In-One prototype have arrived and I have now put together the first board!

    The LCD connector was especially difficult and exciting cause of the teeny tiny pins and I wanted to be careful not to melt the plastic while soldering the part with hot air. There were a few bridges that I managed to fix with the soldering iron, some flux and carefully dabbing the excess solder with some desoldering braid. I'm happy with the result and it seems that at least there are no shorts.

    Of course I did make some mistakes when I ordered the components... :)

    • I ordered mono jack sockets instead of stereo ones
    • My BoM had the same Mouser part # for 10nF caps as I had for the 2200pF caps. Oops! I must've copy pasted the parts without updating the reference, so for now 0.1uF will have to do instead of 10nF
    • The shaft of the volume pot is too short, though I think this one is on Mouser for getting me the wrong part since I did order one with a 20mm shaft, but no worries for the prototype I'll just 3D print an extension for the shaft
    • My biggest mistake is with the two level shifters that I intended to use with the LCD. I must've forgotten to check the footprints, cause these parts aren't available as SOIC-16, what I used on the PCB. I ordered TSSOP-16s without checking and that will not fit! So for now I omitted the level shifters. They are probably not really needed since the breakout boards I was using before also don't have them. I used some tiny single strands of copper wire that I cut from a stripped wire to connect the data lines

    I haven't yet tested the board. I need to make some software changes to accomodate the different pinouts on this board. This is what I'll do during the course of this week and hopefully the prototype works as expected!

    MIDI Controller Update

    While I was waiting for the new PCBs and components I continued working on the MIDI and OPL controllers in the software. The audio part has been completely reworked to allow for exciting new features such as pseudo 4-OP instrument patches, patch effects and MIDI control mapping. 

    Right now the MIDI control mapping is finished, except for the UI. You can now map any incoming MIDI CC to a synthesizer control. For example map MIDI CC 54 to a software vibrato, software tremolo or patch parameter such as operator output level.

    Next up will be to implement support for pseudo 4-OP patches...

  • A New All-In-One Prototype

    Maarten Janssen01/14/2024 at 11:27 0 comments

    Now the sequencer has been updated and after a few day where I added additiona file support to the media player it's time to get back to the hardware of OPL Studio!

    The media player now supports DOSBox raw OPL (*.DRO), id Music Files (*.IMF) and Video Game Music (*.VGM)

    Another All-In-One Prototype

    Before my christmas holiday I spend a lot of time breadboarding parts of a new all-in-one design and experimenting with a previous prototype that has now become a Frankenstein setup with many loose wires, replaced components and failed experiments. The goal was to fix the issues that existed with the previous prototypes. Whether this is now the case I'll not comment about. I have been disappointed a few times before after getting excited about new PCBs.

    So another round of prototypes is now going to get manufactured where I made some drastic changes that I left out of previous prototypes:

    • The LCD screen is no longer a breakout module, but now attaches directly to the mainboard using a ribbon cable. All circuitry to drive the LCD is now also on the mainboard. This is scaring me the most since I couldn't breadboard this part
    • The little TDA2822 amplifier is also gone. Now there is an amplifier build out of discrete components
    • The status LEDs hadve moved left of the screen
    • The power button doubles as panic button
    • The line and speaker jacks are now 6.3mm jacks
    • There is a real volume knob now and the A and B rotary controls have moved for better looks and operation

    In The Mean Time: Software Refactoring

    While I wait for the new PCBs I will continue working on the next major update of the software. The code that handles MIDI and controls the OPL3 chips will be refactored to allow for some cool new tricks:

    • Pairing two 2-OP channels to make a pseudo 4-OP channel and support for OPL patch files duch as *.DMX that allow this
    • MIDI control mapping so you can map any MIDI control to an OPL Studio control. For example to have the volume slider control the output level of an OPL channel, to name something stupid
    • More advanced instrument patch effects like those used by various trackers to create more convincing drum sounds or to emulate the sound of the Loudness OPL2 music from games such as Fuzzy's World of Golf

  • New Sequencer Nearing Completion & All In One Update

    Maarten Janssen11/14/2023 at 13:57 0 comments

    The new sequencer is nearing completion. All functionality has been implemented and many bugs have already been fixed. The newest additions since the last log are:

    • A revert function that works as a rudimentary undo for any changes made to the sequence since it was opened.
    • The option to copy and paste sequences.
    • There is a transpose function to change the pitch of all notes or to shift all notes left or right in time.
    • The piano roll editor now has the controls to set the velocity and panning of new notes that are added by hand.
    • You can now also drag and drop events in the details panels. For example you can long press the volume graph to add a new volume event and you can drag it to change its position and value.
    • Many, many tweaks and bug fixes

    Drum sequences are still not using the new sequencer and I will definitely leave that until after the new software update. I now just want to release this thing after a few more days of testing to capture as many bugs as I can.

    Next to the sequencer update there will be a fun little secret hidden in the new software ;)

    Update On The All In One Units

    I have some good news on the all in one units this time. When using the line out the audio is now fine. No more excessive noise from the different components. The amplifier to the speaker out is still a problem, but I think I also have that mostly covered now. I've been working on a different amplifier design using a different chip that as far as I've been able to test sounds promising. I have a little test amplifier breakout board on the way to test my new design before I integrate it into the main PCB.

    For the LCD module I also have some new plans. So far I've been using complete modules for the LCD and touch panel that also include an SD card socket. The problem I'm having with these modules is that too often they are of questionable quality where some have brightness issues, some of them have misaligned touch screen panels, others have issues with adhesion of the different layers of the LCD and so on. This means that for every OPL Studio I've been shipping so far I've been hand picking the LCD modules to make sure they function correctly. This also means that I've been rejecting far too many modules (around 25%) and then I'm not even counting all modules that arrive broken due to aweful packaging done by vendors. Anyway, to get a better grip on LCD quality I will change to building the modules myself or rather I will use the loose LCD + touch panels that connect to the main PCB using a ribbon cable and I will build the interface myself. I have a few panels on the way to test this out.

    Finally the enclosure will also get an update, though it will keep the same dimensions and overall look as the current units.