Jump to content

MIDIbox FM V2.1 on STM32F4


Sauraen
 Share

Recommended Posts

ok , had some further reading about all your work on the quad genesis.

Impressive by the way. I had some misunderstandings about few things and was far from understanding everything ^^ .i think i'll get into just making an extended control surface for a double OPL3 (FM 1.4 module*2 driven by a STM32F4). Getting into a new synthesis hybrid module is maybe too much work for me. Working with VGM files isn't really my goal, i work alot with midi sequences or "on the fly" recorded sequences from my m-audio keyboard or my akai mpd32 MIDI interfaces.

I am more focused on the design of the control surface to work the FM sound "textures", and as you said maybe FM 1.4 is already a good "start" , as well as it is well documented and i realize that i'm far from knowing all that i need.

Big up again to all your work , i'll get you tuned with my work if you want.

regards,

JK
 

Edited by Psykhaze
Link to comment
Share on other sites

last but not least question : can i use serial registers (like DIN and DOUT modules) to plug 2*OLP3 in serial to a STM32F4 core> eg control 2*OLP3 chips from a single core?

found this mod http://www.midibox.org/dokuwiki/doku.php?id=opl3_module_modified and want to make a 4 stereo OUtputs FM synth > 4 YAC512 under my extended control surface.

thanks and good night

regards,

JK

Edited by Psykhaze
Link to comment
Share on other sites

Hi Psykhaze,

Glad you're finding things you like, and I hope my past and future work can help you!

I would definitely not recommend combining the OPL3 and OPN2, unless you want to just use MIDIbox hardware and the operating system (and my drivers for each chip) and write the application code entirely yourself.

What you're describing in terms of double OPL3 is exactly MIDIbox FM V2.1. You mention using shift registers to connect them to the STM32F4, but that isn't necessary, they're connected by a parallel interface to J10A and J10B. I made a little page for you here describing it: http://wiki.midibox.org/doku.php?id=midibox_fm_21 If you follow this, even if you end up using your own application code, you can still use my opl3 module drivers. But you should definitely consider just going with MIDIbox FM V2.1, most of your work will be done already.

You mention four stereo outputs. You can do that, but MIDIbox FM V2.1 is intended to have the four channels from the two chips each mixed, so that there are just four outputs (L, R, and two aux sends), and voices from either chip can play to all four of these. The idea is that it's almost like there's one super-OPL3 which has double the number of voices.

Would you like me to make a video going over the features of MIDIbox FM V2.1, so you can decide if you want to use that or make your own application?

Sauraen

Link to comment
Share on other sites

Here is a video (especially for @Psykhaze) showing off the OPL3 and the features of MIDIbox FM V2.1. I apologize for the phone audio quality, I was also recording a high-quality audio version to sync with the video, but that got corrupted.

 

Edited by Sauraen
  • Like 1
Link to comment
Share on other sites

Hi,
Just watched the entire video. A M A Z I N G !!
You just made what i wanted to hear from an OPL3 (relation between params and the final sound). You made the things clear about what you were talking about.

Must admit that in my "Step C" CS Design,i don't think if i really need the 18 op voices =D . The 2 voices+drums is ok to me .
If parameters are "too advanced" or if there is too much parameters you don't really use all of them at the end.
As you told many times in the video , with this 2 voices mode you already have access to crazy features of the OPL3 . And i'd like to use drum  + leads meanwhile =)

I now see clear in your Control Surface design. It has awesome features =) Especially the little drum sequencer and your chip D&B kicked my ass ^^
And you even did not went through your advanced blending interface (top right) ! Your advice has in the end really helped me trough my CS "Step C" Design.

Thanks again for doing this =)
Good night,
Jerome

Link to comment
Share on other sites

Sauraen: thanks for the video - outstanding work! It will probably help a lot of people to understand the OPL3 synthesis features a lot better. And you created a really awesome control surface, this is very difficult for FM synths!

Many greets,
Peter

Link to comment
Share on other sites

You're welcome, my pleasure! I guess I should have put up this video 2 years ago! ;)

I only wish my high-quality recording of the audio hadn't messed up, so you could actually hear what I was saying and the details of the patches.

And you're right, I only went over a single modulation connection, it supports up to 16 per voice. :) And I didn't talk about the features in the top left. Maybe I'll do another video soon.

Link to comment
Share on other sites

  • 3 months later...

Hi...i am anew user here. As per my case i have been going through the PIC18F code but like you, see the STM32F4 as the future. Seeing a working example would help a great deal to get me started on the platform. I know I'll have to write a new HW driver and adapt some/lot of the synth engine, but the YM2612 seems like a sub set of the OPL in a lot of ways.

pcb assy

Edited by CarlosJones
Link to comment
Share on other sites

On 8/13/2016 at 7:54 AM, CarlosJones said:

Hi...i am anew user here. As per my case i have been going through the PIC18F code but like you, see the STM32F4 as the future. Seeing a working example would help a great deal to get me started on the platform. I know I'll have to write a new HW driver and adapt some/lot of the synth engine, but the YM2612 seems like a sub set of the OPL in a lot of ways.

You want to make a OPL3 or OPN2 synth? If you're talking about the latter, no need to write code or change the synth engine!

You have three options:

  • MIDIbox Genesis Tracker, which is just a STM32 core and the Genesis board, and allows you to control all the sound chip registers via MIDI commands. No synth engine. Easy project. Beta code available, you'll be the guinea pig. :)
  • MIDIbox VGM Player, which is the core, the Genesis board, and a very small control surface (similar to Standard Control Surface but connected via DIN J8/9 not digital J10). Lets you play VGM files on the Genesis board(s) from an SD card. Release code already available (though not up-to-date, I will update it if you want to build this.)
  • MIDIbox Quad Genesis, the synth with the large front panel and hundreds of LEDs. Polyphonic multitimbral synthesizer with a synth engine focused on "sampling" VGM files. Software in progress, see the videos linked on that thread for more info.
Link to comment
Share on other sites

  • 3 years later...

Looking to start implementing something like MIDIbox FM V2.1 HW and SW with cntl SW sourface at the beginning. Not clear to me which connectors implement the interconnection between CORE and OPL3 board in case of 1 or two OPL3 chips.I guess documents are with PIC board.

Also i don't understand where to find code and compiling chain.

 

Any to help me ?

Many thanks

Bruno

 

Link to comment
Share on other sites

  • 1 month later...
On 9/18/2019 at 10:31 AM, melanb said:

Looking to start implementing something like MIDIbox FM V2.1 HW and SW with cntl SW sourface at the beginning. Not clear to me which connectors implement the interconnection between CORE and OPL3 board in case of 1 or two OPL3 chips.I guess documents are with PIC board.

Also i don't understand where to find code and compiling chain.

I'm sorry about the delay, I'm not really active here anymore.

The code is in /trunk/apps/synthesizers/midibox_fm_v2_1 and /trunk/modules/opl3. You should be able to use the opl3 module even if you want to write a completely new application layer.

I never properly documented MIDIbox FM V2.1 for others to build it. However, there is some information in these folders, including the pinout for connection to the core mentioned in Readme.txt and defined in opl3.h. Other than the OPL3 module, the rest of MIDIbox FM V2.1 is a MIDIbox NG compliant control surface and standard MIDI I/O modules.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...