Psykhaze

"Step C" CS Design for MBFM with Base PCB

43 posts in this topic

Hi everybody,

After spending my weekend on reading and brainstorming about the MBFM , I have some ideas i would like to share =)

First , i will talk about the Pros and Cons of the MBFM "V2.1" on STM32F4 made by Sauraen and Evolution of Control Surfaces.

By studying the way Sauraen worked about FM synthesis and especially in his try to make MBFM evolve, i learnt much.
Pros : His Control Surface is visual , advanced and you have quite quick access to parameters when you understood the thing . Driven by the new CORE32 , much fonctionnalities are available.
Cons : His Control Surface is Messy and unoptimized at first sight . By making the design on his way "too quickly" and without documenting "well", Community isn't aware of all this amazing work . PCB design is still "modular"

Many may not understand, but i think the STM32F4 Core is kinda useless here. CORE8 (with PIC) is well know and understood by the community,and has made its proofs on the "Driving Synthesis OPL3" thing.
Do we really need the "overpower" of a STM32F4 ? I think the new CORE32 is more designed to support "heavyweight" applications and UI like RGB BLM, Sequencer etc...
Driving 2 OPL3 modules with 2 CORE8 sounds good enough to me. Lightweight is great =)
Edit : Due to some good advices , now Really Considering using CORE32 in a second version base PCB , "horsepower" is sometimes useful =)

MBSID has evolved with a Control Surface from Step A to C . I think the current MBFM (1.4) Control surface is like a "Step B" .
With MB-6582 , Wilba made a full compact All-In-One version of the "Step C" surface of MBSID : Well Designed PCB in 2 parts (Base PCB and Control Surface), designed to fit in a small case, "costless" Components and DIY friendly , Easy Assembly. 
Everything you need to build the "sweet designed Synth" you ever dreamt of.

I want to Build a full featured, nice to look and easy to use MBFM synth.
I brainstormed a bit , and i thought that reusing Wilba design could be a start
Based upon a screenshot of the frontpanel of the MB-6582 in frontpanel designer soft, i made a Control Surface Design "Step C" alike for the MBFM synth with some Photoshop copy/pastes.
Then i opened the MB-6582 Base PCB and incorported good-sized OPL3 modules instead of the SIDs. I let you see.

Some improvements could be made on the FrontPanel, like a shape for waveforms instead of numbers. But i think i didn't forgot too much.

Waiting fo some advices before going further into that work =)
Regards,

JK

Concept.jpg

frontpanel.jpg

BasePCB.jpg

Edited by Psykhaze

Share this post


Link to post
Share on other sites

Yeah, I like the idea of a MBFM in a MB6582 form factor a lot!

(but it would probably need quite some modifications to the firmware (two cores, different display and ui). But then, nothing is impossible! You might find it easier to work with the "heavyweight" platform instead, if you are no PIC ASM guru :-D)

Many greets!
Peter

Share this post


Link to post
Share on other sites

Good evening !
Sure that there would be quite some changes to do to the firmware, but i like challenges , even if i am not a PIC ASM guru :D
I am used to deal with x86-64 ASM, so i think i could deal with some PIC assembly.
Ok it will take some time, but with maybe some luck i might be helped =)
Thank for your interest =)
regards,
JK

Share this post


Link to post
Share on other sites

It's a commendable idea and I wish you the best of luck!

There are a few points to consider though. When Wilba first designed the MB-6582 (as far as I know) companies such as Ponoko/Formulor didn't exist or weren't well established. Your options for cases were limited to alu front panels from Schaeffer/FPE and a 40cm deep rack case -- quite impractical. Now there are good alternatives to make plastic cases, see for example the Mutable Instruments DIY stuff, sammichSID/FM, Sonic Potions LXR, Yocto etc. etc. Even complete folded metal cases (BLM, TubeOhm Ambika) are possible with minimal cost and effort. For me, it's important to design to maximise playability and longevity, which might otherwise be wasted on a device which sits half-finished, broken or unwanted in the corner. 

The best way forward is (I think) to design all of the parts from the beginning, so how the front panel works with the case, the connectors, heat management etc. I would propose sandwich-type connectors over the SIL ribbons used in the MB-6582. Much more durable and you can take the thing apart if needed. You can still use an angled case, just the IO will need panel mount or another PCB. Think about modular blocks, like OPL3 and Core8 sub-boards that plug into a CS. It's cheaper to buy multiple copies of PCBs rather than large ones and can make troubleshooting easier. Shift registers could be placed on the CS PCB (e.g. SEQ) or like a backpack as I did for my MBCV concept.

 

Something that a 32-bit Core might be useful for is display options. Part of the mystery of FM synthesis is how all of the operators/modulators interact to create your sound. If there were graphical representations of waveforms/levels/routing I think that would be a great contribution. E.g. look at the SSD1306 0.96" OLEDs in use in MBCV/Programma with SPI drivers already well integrated into MIOS32.

Share this post


Link to post
Share on other sites

@Latigid on : That's a question of taste, but plastic case are really not my thing. I often recase my audio hardware in wood and steel. More durable to me, and the good things deserve the best :p I plan into casing my 2 MB-6582 and this future MBFM with a TR-9090 in 2 aluminium rectangular (no angled) cases with wood sides .
And you're right, playability and longevity are important to me too.That's why i stuck with components used in the MB-6582 Design. Sandwich connector sounds ok for connections between CS and Base PCB , i like them too.
I am really into building an MB-6582-alike design, but MBFM adapted. Graphical representation for waveforms/routing could be done in engraving, even if i must admit graphical OLED  would be totally geek ^^

That is a choice (maybe not the best) , but i really think i'll go with 2 CORE8 chained , each one driving an OLP3 modified (5V version). I prefer building a robust AIO design than a modular on this one (maybe with some options).Modular design sounds ok to me for experiments and prototyping, not for a "final" build.
Much work for the CS PCB and MIOS code expected (especially with this new UI), Maybe less for the Base PCB, as well as Wilba as even considered a lot of things into his design.
I already have a good base with the MB-6582 CS PCB design too.

In order to make my "Step C" design easier to understand, i've made a parrallel with TK Ctrlr Interfaces for MBFM. I let you see.
By the way,may i open a wiki page for this project?
Any advices welcome,
regards,

JK

UI-design.jpg

Edited by Psykhaze

Share this post


Link to post
Share on other sites
2 hours ago, latigid on said:

design all of the parts from the beginning, so how the front panel works with the case, the connectors, heat management etc.

Something that a 32-bit Core might be useful for is display options. Part of the mystery of FM synthesis is how all of the operators/modulators interact to create your sound. If there were graphical representations of waveforms/levels/routing I think that would be a great contribution.

agree!

Share this post


Link to post
Share on other sites

Where could i find the waveforms shapes or routing diagrams ?

Share this post


Link to post
Share on other sites

Ok great thanks =)
I'll import my photoshop layout in illustrator in order to make a good sized DWG/DXF : this will be my base for components placements in Eagle for CS PCB and source for HPGL engraving in FrontPanel Designer.
While in illustrator , I'll import waveforms / routing algos and will shape the paths , this way it could be exported in DWG/DXF or in any graphical form.
I have a doubt regarding engraving "place" for routing algos (quite "big" graphics) , maybe some display could be done on the 4x20 LCD? I think the waveforms should be engraved on the frontpanel.

I've downloaded the 1.9h MIOS8 and MBFM 1.4 "bios" . Checked the source. Sounds not too hard, even i am still new to this Assembly. Few questions are lasting , want to be sure:
-  MBFM MIOS 1.4 is intended to run on a PIC18F4685 . So the source has much things already done in it with this PIC. And Wilba used these ones on MB-6582.
Is this still the right PIC for this project? (I do not intend to whole re-think everything)
- I found a PIC18FXX2 programming ref manual at http://ww1.microchip.com/downloads/en/DeviceDoc/39564c.pdf .
Is the instruction set detailed ok for this PIC ?

- Not related to MIOS, Is there any way i can access MB-6582 Eagle Files to take it as a start for my PCB design ?
- Can I open a wiki page for this project?

Thanks in advance for your answers,
Best regards,
JK

Edited by Psykhaze

Share this post


Link to post
Share on other sites

Regarding graphical displays: If you want to go totally nerdy, take the below-linked 256x64px OLED from Newhaven with 16 grey (blue) levels. It totally rocks and we now have a driver for the 32 bit MIOS :). It also fits perfectly into a 4x20 conventional LCD cutout, so this is a great candidate for a MB6582-case-clone. Be aware though, that for all kinds of funny display effects (like in the video linked), CPU is eaten for breakfast :-). Highly recommended therefore: go for the new core! You will just have more horsepower available and are futureproof. But these are only my 5 cents, if your mind is set, just follow your path! :-)  https://youtu.be/gK0AkkID3hA

Many greets and enjoy!

Peter

 

Share this post


Link to post
Share on other sites
Just now, Psykhaze said:

Ok great thanks =)
I'll import my photoshop layout in illustrator in order to make a good sized DWG/DXF : this will be my base for components placements in Eagle for CS PCB and source for HPGL engraving in FrontPanel Designer.
While in illustrator , I'll import waveforms / routing algos and will shape the paths , this way it could be exported in DWG/DXF or in any graphical form.
I have a doubt regarding engraving "place" for routing algos (quite "big" graphics) , maybe some display could be done on the 4x20 LCD? I think the waveforms should be engraved on the frontpanel.

The waveforms are already depicted on the CLCD, it's just a bit ugly. :)

 

Just now, Psykhaze said:

I've downloaded the 1.9h MIOS8 and MBFM 1.4 "bios" . Checked the source. Sounds not too hard, even i am still new to this Assembly. Few questions are lasting , want to be sure:
-  MBFM MIOS 1.4 is intended to run on a PIC18F4685 . So the source has much things already done in it with this PIC. And Wilba used these ones on MB-6582.
Is this still the right PIC for this project? (I do not intend to whole re-think everything)

TK. would be the one to ask, but I think the PICs are interchangeable in the Core, so just use the recommended one.

 

Just now, Psykhaze said:

- I found a PIC18FXX2 programming ref manual at http://ww1.microchip.com/downloads/en/DeviceDoc/39564c.pdf .
Is the instruction set detailed ok for this PIC ?

How deep are you going? I think all of the routines are available in MIOS and could be reused (up to you however). 

 

Just now, Psykhaze said:

- Not related to MIOS, Is there any way i can access MB-6582 Eagle Files to take it as a start for my PCB design ?

I think the PCBs were designed in KiCAD, and the layouts aren't publicly available. Did you decide to follow the MB-6582 form exactly? Are you using a PacTec case?

 

Just now, Psykhaze said:


- Can I open a wiki page for this project?

Thanks in advance for your answers,
Best regards,
JK

I think you need an admin to create a wiki account for you.

Share this post


Link to post
Share on other sites
Just now, Hawkeye said:

Regarding graphical displays: If you want to go totally nerdy, take the below-linked 256x64px OLED from Newhaven with 16 grey (blue) levels. It totally rocks and we now have a driver for the 32 bit MIOS :). It also fits perfectly into a 4x20 conventional LCD cutout, so this is a great candidate for a MB6582-case-clone. Be aware though, that for all kinds of funny display effects (like in the video linked), CPU is eaten for breakfast :-). Highly recommended therefore: go for the new core! You will just have more horsepower available and are futureproof. But these are only my 5 cents, if your mind is set, just follow your path! :-)  https://youtu.be/gK0AkkID3hA

Hmm , that screen turns me on :D . Sure it should rock !! I am not against using a core32, really!
Just for some reasons  (that is a choice) i will stick with a 2xPIC design for my MBFM prototype / build .

Anyway, in order to be useful to everybody, I will try to make 2 Base PCB versions, one 2xPIC-based (my initial project), and one including the new core32 following Saurean work. This way it should fit to everybody ?
The CS would be intended to fit both of these PCB.
I do not intend to keep my work closed-source and will share here all my files.

Just now, latigid on said:

The waveforms are already depicted on the CLCD, it's just a bit ugly. :)

How deep are you going? I think all of the routines are available in MIOS and could be reused (up to you however). 

I think the PCBs were designed in KiCAD, and the layouts aren't publicly available. Did you decide to follow the MB-6582 form exactly? Are you using a PacTec case?

I think you need an admin to create a wiki account for you.

In my opinion, the best for the waveforms is to be engraved in the front panel =)

I do not intend to go deeper than necessary, but hawkeye told about kinda "hard" mods to make to the source and PIC ASM, so i was gathering as much information as necessary =)
Very good news is there is not much assembly to deal with , i've just quick reviewed the source, didn't spent hours on it yet =)

If MB-6582 PCBs not publicly available, i'll start upon with eagle files already provided (core8 + ehanced 5V OLP3)
The things i like in the MB-6582 are the form factor , the CS design , the scalar design of Base PCB and Power sect / Output placement (MIDI plugs, ON/OFF switch and jacks 6.35) 
That's why i kept this in the design rules. And programming a bit is kind of game for me =) 

To explain my goal, i will make a 4 synths liveset (with SEQ, but later and this time with a core32) . I will not Use the PacTec Case
In the same aluminium rectangular case with wooden sides,2x MB-6582 (one right to the other,in lenght) 
In another case of the same size , a TR-9090 and this future MBFM Synth . As well as TR-9090 PCBs form factor is very MB-6582 likely , i kept the idea of the form factor and keeping this old screen and CS design to keep the "harmony"
Hope this should explain some of my "weird" choices

If i could get a wiki account it could be nice, wait for an admin to confirm it =)
Best regards,
JK

Share this post


Link to post
Share on other sites

Ok , I've finished shaping Waveforms / Envelopes / Routing from the manual , i let you see.
Attached with the jpeg preview , the corresponding dxf file with 3 layers zipped.
I'm going for a sleep, see you tomorrow everybody =)
JK

FM-Routing-Waveforms-envelopes.jpg

FM-Routing-Waveforms-envelopes.zip

Share this post


Link to post
Share on other sites

I'd try properly programming the PIC18 before deciding which core you're going to use. I submitted a patch for MBSID, and I'm a very experienced, multi-platform, assembly coder for a living. Whilst it wasn't hard, issues like there being no conventional memory, segmentation, and the restricted instruction set made it a pretty unpleasant experience.  Certainly, the MBSID software was incredibly low on spare "memory", which made it much more difficult to make any modifications. If the same is true for MBFM, then you may find your modification options very limited.

Share this post


Link to post
Share on other sites
Quote

If i could get a wiki account it could be nice, wait for an admin to confirm it =)

Just write a forum message to SmashTV or Shuriken. They should be able to create an account, i dunno my way around the wiki ;-)

Many greets and keep up the spirit. In the end, everything is possible with MIDIbox, you just need a bit of preseverance, if you are doing something special... :-)

Peter

 

Share this post


Link to post
Share on other sites

I can see that you might want to start by modifying the existing PIC code so you don't have to write everything from scratch, but I'm not sure if it would be worth the labor. I would definitely recommend starting with STM32F4: MIOS32 and the toolchain are well-developed and easy to use, and you won't run out of CPU or RAM nearly as easily. You said this processor is overpowered and even "useless", but I can tell you that I first built MIDIbox FM V2.0 with the LPC17 core, and it lagged when playing large (30+ voice) MIDI files; this went away with the STM32F4 core, so it was just powerful enough! I have to admit it was heavyweight code, running the entire MIDIbox NG underneath as well as 16 modulation connections per voice; but still, none of this would have been possible on the PIC core.

Share this post


Link to post
Share on other sites

Hello all !
Thank for your advice Sauraen =) glad you answered, will probably need your advice on the synthesis part as well as you know very well the subject =)
Sounds like everybody telling me using the new core ^^ . I heard you guys ! and from yesterday i am really taking this seriously in my guidelines .
I often work like reverse-engineering , starting with the endpoint (Here the Control Surface) to go forward to the core (synthesis part) . 
So i'll summarize my roadmap in this project :

- First , the Frontpanel : With the UI designed on 'proportions' , in know where to Place Control surface components on the PCB, distance between them etc. as well as i got a MB-6582 CS PCB stuffed near me, i can take dimensions on it.
- From the Frontpanel , Count how much DIN and DOUT i would need , and how i would interconnect Control Surface to the Serial Registers .Would maybe need some pieces of advice on this part , as well as many of you experienced the thing much better more than me.
- Then , when interconnections from Control Surface to DIN/DOUT would be designed , I will go to CS PCB design. DIN and DOUT will be placed on base PCB. Interconnections between base PCB and CS PCB with sandwich connectors.
- After this , i will begin design Base PCB from 4 jacks output / MIDI I/O , and then add the 2x modified 5V OPL3 before . Will keep some place for a 5V power section for CORE and OPL3 modules near the power Switch.
- Then , the first challenge is coming . 2 versions of the Base PCB : First One with PICs, like in MB-6582 , and the other one including a STM32F4 core. 
- The difference between the 2 base PCB will be only the "Core" section :
On the first version,based upon existing MB-6582 design, the core will include 2xPIC18F4985 and 8 banksticks.
On the second version, the banksticks and the PICs will be removed and include the STM32F4 CORE section / SD card etc....
- Then I will go for Code with some modular design to go into the code before the PCB getting made.

This way i could stick to my "PIC challenge" and let other peoples make new crazy things with the new CORE32 with the second version Base PCB for example =)
And even if i don't get out of PIC code i would be able to "change my mind" and go for the new core this way. But i want to try the PIC challenge,i've made my mind ^^ .
But want to be helpful too, that's why i'll design the second version Base PCB.
Sounds OK to you?

Regards,

JK

Edited by Psykhaze

Share this post


Link to post
Share on other sites

Ok, got the FrontPanel with real sizes on DXF.
I incorporated waveforms for the "Operator" section, sounds good . Left the numbers for LFO/Drums waveforms as well i am not sure of the good waveforms to incorporate.
Gave a try to incorporate routing diagrams on the routing section . But not sure it will give something good with the scale. And i do find that it overloads the routing section layout.
Maybe better to display this on 4x20 LCD? i understand that waveforms would be ugly on the CLCD, but it should fit for routing diagrams?
DXF file zipped attached with Jpeg preview.

This Control Surface is made of 51 switchs , 88 LEDS (with a (3x8)x4= 32x3 steps Wavetable Sequencer Matrix) ,16 Rotary Encoders and a 4x20LCD,. Still need some piece of advice regarding interconnections with DIN/DOUT: Wich size for the global DIN and DOUT matrixes design?(LEDs,Switches) . Dedicated Shift register for encoders?

Before into going forward too quickly on the PCB thing and as well as my knowledge in Eagle is very basic , would anyone recommand me a better software for PCB design in windows ? (Open source and with few tuts would be much better =p )
I have a strong knowledge in the adobe CS suite, maybe i could work with illustrator and then export things in dxf to import it in PCB/CAD design soft?

i'll start to think about sections placement (I/Os,Power,OPL3x2, DIN/DOUT and CORE) on a MB-6582 sized Base PCB in order to deal with the 2 versions of this Base PCB.
When i'll have made my mind about how working on the PCB thing (>mostly the soft to use) , following to your advices, i'll start up CS PCB.

Regards,
JK

MBFMX2_frontpanel.jpg

MBFMX2_frontpanel.zip

Edited by Psykhaze

Share this post


Link to post
Share on other sites

@Sauraen I was wondering if you knew some about the 32 steps wavetable sequencer?
this is still a dark thing to me in here. Any link welcome =)
regards,
JK

Share this post


Link to post
Share on other sites

As far as i've seen from MB-6582 CS<>DIN/DOUT interconnections, I may need :

- (8 DOUT registers * 11 DOUT registers) = 88 LEDs matrix
- (8 DIN registers * 7 DINregisters)=56 switches Matrix (with 5 unallocated) 
Please tell me if not correct =)


How many shifts register may i need for encoders? i quite did not understood the interconnections to DIN.
Waiting for someone to confirm =)
Regards,

JK

Share this post


Link to post
Share on other sites

Hi again ,
in order to explain the 2 layouts versions of base PCB, i've made a good-sized draw based upon MB-6582 to explain the thing.
Hope it would help.
Regards,

JK

MBFMX2_BasePCB-V2.jpg

MBFMX2_BasePCB-V1.jpg

Share this post


Link to post
Share on other sites

Hi there,

regarding the shift registers: best to look at examples of matrix/time multiplexing code, used in projects like MIDIbox NG, SEQ, ...  Of course, this more easily understandable C code can be converted to MIOS8 assembly and it would be a good first skilltest to do that and build a prototype on veroboard :-). You will find corresponding code in the MB6582 sources to drive e.g. the 8x8 LED mod matrix.

Using that matrix approach, you will require far less shift registers, and that's how it was done by Wilba on the MB6582 and the MBSEQ...
As a general rule of thumb, you can realize an 8x8 matrix with two shift registers (8x8 pins). There are other configurations possible, of course, but at least for LED output matrices, this is recommended, as using bigger matrices, the relative "on cycle time" (load cycle) will be very short and would require certain types of LEDs or drivers...

If you don't want to go the matrix route, your calculation is correct, you need one shift register input/output pin per led or switch. And two input pins per encoder. So that's quite a few of shift register ICs...

Many greets,
Peter
 

Share this post


Link to post
Share on other sites

@Hawkeye: Thank you for your answer about shift registers and matrixes .
I am planning to buy 2 Cores8 kits , a STM32F4 Board  and a second OPL3 Board from SmashTV and some DIN/DOUT IC. Will send him a PM. By the way I was given an access to wiki. Thanks !!
I will try to fill it as much as possible when the design will be more "stable".
I plan from buying a bunch of 50+/100+ new YMF262/YAC512 too . Found supplier . This way,in a near future, i would be able to provide some of these key components to the build.If some interested tell me.
I think you're right about the veroboard prototype of the CS.I will do that. That will allow me to troubleshoot everything before making a "dead PCB" xD
Moreover than i have the desired LCD + switches,1N48,encoders and LED here. Just miss some wires, a veroboard and smashTV kits. But buying is planned for june, i should work the others parts while ^^.

Once Again , thank you all for your interest .
You may find i am like a bounded head , but in the end i find all your advices very useful and try to apply most of design notes provided trough all your comments.really.
I do not want to flood the forum in any way, i am just working much on this these days. I ask much questions that i often answer by myself while doing some researches.Sorry.

I just think relating about this could be interesting .
Why ? First because relating about my design thoughts has helped me to improve really much the things in a short time by being corrected. I would have followed wrong ways in a deep form,loosing much time elseway.
I was thinking relating about the way you make a design,the questions you ask yourself, the way you correct it, and make it evolve could be interesting to others though.

I'll continue on making some interconnections diagrams for the Project , now that i get many much things better. ( Core interconnection , LEDs and switches matrixes to DIN/DOUT , Link between CORE8s/CORE32 and OPL3s 5V) . Will study MIOS Code of MBFM 1.4 and MB-6582. And MBFM User Manual . And this way i won't post every 5 minutes :D

Here are the questions i did not found an answer even after researching (my bad) , if someone could help... *cute dog eyes*
- Wich are the waveforms used in LFO and Drums ? (I think i may have forgotten some "waveforms" in the "drum section" of the CS,not sure) You can tell me with numbers based upon the jpeg up there with the 8 waveforms from the manual.
- Where can i find exhaustive informations about the 3x 32 steps CC wave sequencer function ?
- Is There any big mistake or any big function missing in the CS? I am human and could make mistakes or forget things ^^
- In order to fully understand code source , is this quick reference http://www.cl.cam.ac.uk/research/srg/han/Lambda/webdocs/PIC_Instruction_Reference-1.pdf OK for PIC 18F4685?
  I am not afraid of ASM,just need some knowledge with common PIC intructions.

Big thanks,
Regards,
JK

Edited by Psykhaze

Share this post


Link to post
Share on other sites

My MBFM knowledge is limited to a sammichFM, but I'm sure the routing is also depicted graphically on the CLCD.* As I said already, this is not very intuitive and would be great if there was a more graphical depiction on OLEDs of all waves/routing/levels etc. This is more a limitation of having one encoder and 4 buttons as a control surface, but I think even with the full v1 FM CS that TK. designed it's still tricky.

*It might be a good idea to first build basic Core/FM modules and see how the MIOS8 software works.

It's great that you're very motivated, and you will need that for a project like this. Expect many hours/months spent and probably one or more buggy PCBs the first time that you order. If you haven't done PCB design before it's a steep learning curve. If you don't have a professional version of EAGLE you'll have a lot of trouble designing a PCB this size. I'm not sure of a PCB design package that is free and allows for large boards.

You see straight away the benefit of 32-bit: only one Core. With two you need to work in CAN bus, MIDI implementation etc. In my opinion, it only makes sense to use the 8-bit Core for existing applications, or maybe when you need a good ADC. No one is going to stop you, and of course any new work is definitely encouraged, but from the start the technology is on the verge of obsolescence.

We have to look at history here: there are a lot of people who dream very big, only to run out of time, patience or money along the way. It's not to say that you'll be the same, only that if you make things easier for yourself they will have a much greater chance of success. 

There's no problem (in my view) in keeping the discussion running, it's really a good thing to see projects and ideas flying about. 

Share this post


Link to post
Share on other sites

I use KiCad for all my PCB designs (except at work, where I use Altium...) It's free and open source, and there's no size restriction, but it's even more poorly documented than Eagle. But once you get used to it, and you learn how to work around its limitations, there's not much you can't do with it.

You should definitely lay out the front panel as a matrix rather than each button/LED individually. I'm not sure how to program for that in PIC/MIOS, but in MIOS32 the BLM_X driver works very well.

I don't know anything about the wavetable; in fact, I was going to have a wavetable feature in MIDIbox FM V2.1 and then never got around to implementing it. I believe it's a sort of sequencer for control changes, but other than that I don't know.

The two LFOs in the OPL3 are sine wave LFOs (or some pseudo-sine-wave, it's hard to tell); there's no adjustable waveform, just 1-bit global adjustable depth. The drums don't have any other waveforms either; they're based on normal FM voices with a few changes.

I will again urge you to start with the MIOS32 version. You will have more than enough challenges as it is.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now