tago Posted July 12, 2016 Report Share Posted July 12, 2016 Imagine a typical LFO section of a synth. The idea is to place one or two buttons near that section to be able to toggle between LFO 1 and LFO 2. Would it be further possible to display a specific submenu on lcd with encoders for each/selected LFO? Quote Link to comment Share on other sites More sharing options...
Psykhaze Posted July 13, 2016 Report Share Posted July 13, 2016 (edited) Based upon some Standard control surface (SCS) , you can make some cool menu things if you are not afraid of programming. Toggle switches may be managed with DIN modules and LEDs with DOUT modules. Analog inputs by AINSER8 or AINSER64. You can then link your inputs/outputs in your MIOS application to corresponding display behaviour. But maybe MIDIO128 already offers some of what you need? Bests, JK Edited July 14, 2016 by Psykhaze Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 The hardware part (connecting buttons, leds and so on) is somewhat clear to me. I need to know more about software configuration/programming. Thank you for mentioning MIDIO128. MIDIbox NG vs MIDIO128 It seems you can more or less have the same hardware modules (e. g. SCS) and the main difference would be the software. With MIDIO128 there is patch saving, has Midibox NG patch management too? I'm struggling to understand the differences between both appilcations. Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 9 hours ago, Psykhaze said: You can then link your inputs/outputs in your MIOS application to corresponding display behaviour. So i can have LFO Section consisting two pots and nearby two buttons (or one toggle button) labeled "1" and "2" (or "1/2") to switch the group of pots between LFO1 and LFO2? The idea is to virtually double the pots. Take a look at the Dave Smith Pro 2 and its columns of buttons (radio buttons?) 1-4 for delay, lfo and osc sections Quote Link to comment Share on other sites More sharing options...
Psykhaze Posted July 14, 2016 Report Share Posted July 14, 2016 (edited) I might not give you the exact precise answers about MIOS32 programming you ask about because did not entered the MIOS32 thing deeply yet myself. In terms of global programming there are already some behaviours coded into MIOS32 Apps you can have some look to base upon . This "menu offset" thing is for sure already been coded in some way. i know global API functions but far to know a lot. Still need some hours reading code by my side. Bests, JK Edited July 14, 2016 by Psykhaze Quote Link to comment Share on other sites More sharing options...
Zam Posted July 14, 2016 Report Share Posted July 14, 2016 Hi I think reading the NG manual is a good start, what you need is part of NG possible configuration. I won't explain here because it's already well done by TK at the user manual and specificaly at .NGC configuration. As a start for your use case take a look at button toggle mode, radio group parameter and bank parameter, also .NGL configuration for everything related to labels. Best Zam Quote Link to comment Share on other sites More sharing options...
Phatline Posted July 14, 2016 Report Share Posted July 14, 2016 (edited) talking about your example: you have 3 LFO-Pots (AINs), and with your Buttons beside you switch thru the different LFOs "virtual pots" > for me it is nonsense to use Potentiometer in such case... clear a case of Encoder+Ledrings or a Display and a Encoder not only in this case, in all cases where you deal with Banks that share the same UI (different Envelopes, Filters) Presets (allmost all VSTis allmost all VirtualAnalog or Digital Synths, or modern Analog Synths) you will not be happy with pots... (außer du kennst das handling von einem LED-Ring-Encoder noch nicht???) back to your example... page or virtual-pot buttons or in midibox world "Bank"(to switch thru it) are known and describet as "Radio groups" ...that is possible with midibox ng. also take different encoders and group them to a Bank-group is possible...so yes...it is possible...with encoders... when having problem with Ledrings maybe a premade PCB can do the job (ok have to ask if someone has such a PCB, or wait to the next bulkorder): http://www.midibox.org/dokuwiki/doku.php?id=MB-LRE8x2CS_PCB you also could search for MB-Programma or was it MB-Programmer? in the Wiki or Forum Section... this would be a generic Synthcontroller thing... based on the MB-NG (Ledrings, Buttons and so on) ... there are not much reasons to use pots - except: have no patches presets shared-ui beeing blind, dont have the skillz time and power to make or organize LED-Rings PCBs (BUlk order) if you go LEDRING then your LFO thing is no problems.... search for "banks" in this section: http://ucapps.de/midibox_ng_manual_fs.html really you should read the manual ;) ... i also had to read it now... to answer your question... (since i use mios as toolbox to program my own "ngs mido128s programmers sequencers processors...") Edited July 14, 2016 by Phatline Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 (edited) 2 hours ago, Phatline said: for me it is nonsense to use Potentiometer in such case... clear a case of Encoder+Ledrings or a Display and a Encoder I debated pots vs encoders since forever with myself. Encoders are better in theory, but the winner is pots for me. They will also feel more oldschool/analog, if you know what i mean. Yes, led rings are absolutely nice to have, but it would be a monster of a project to build a full synth controller with 40-50 led rings. Another problem would be the frontpanel with hundreds of holes to drill. To overcome (or ease) the pot position problem when cycling through "banks" and presets, i would like to implement a little helper that shows the old value next to the current value in the display. The Novation Bass Station 2 has it's own solution for this problem (should be the two leds next to the 7 seg led display) Quote When you load the patch, knobs won't, obviously, correspond to the parameters that are used, but if you tweak the knob there are little LED arrows that show you whether the parameter is higher or lower than the value stored in the patch. Simmilar system to Korg ESX/EMX but better. What do you think? Edited July 14, 2016 by tago Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 (edited) Maybe i discard the banking thing and try to get more pots/sections on my front panel. But in any case, i would like to place 4 encoders under the 20x2 lcd display to have corresponding sub menus/parameters for each synth section. It has to be an universal synth controller, that's my goal. Edited July 14, 2016 by tago Quote Link to comment Share on other sites More sharing options...
Psykhaze Posted July 14, 2016 Report Share Posted July 14, 2016 (edited) @tago Please first read about all that you've been told. Your goal seem to be very close to MB-Programma project Have a look there , make your mind and then ask questions ;) Bests, Jerome Edited July 14, 2016 by Psykhaze Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 (edited) @Psykhaze Sorry, but i did read about MBProgramma earlier, but don't know how it could help besides portions of the software at later stages. At the moment i have a very different control surface, more oldschool than MBProgramma's spaceship stuff. One thing i would like is to have small OLEDs/LED or LCD displays for showing graphics of waveforms (e. g. oscillator, modulation). Why do you think it's the solution? Please keep my noobness in mind ;) Edited July 14, 2016 by tago Quote Link to comment Share on other sites More sharing options...
Psykhaze Posted July 14, 2016 Report Share Posted July 14, 2016 (edited) You're asking much at a time =) If you like to build a custom Interface instead of something already designed, you would have much programming to do and maybe MB-NG is the best point. Was telling about existing stuff. Your point about dealing with special parts could be understood , but you have much code to read , there's already much existing in current apps. Just to tell , wiki get a lot of informations on the hardware side of connecting these OLED parts. (as well as some others) Then what you can do with software is up to you. Just to make your work easier you should see if any exisitng thing couldn't be taken as base. And try to team up with peoples who have same focus, your point of generic synth controller is more or less even known. (eg MB-CV V2 / MB-Programma) Bests, JK Edited July 14, 2016 by Psykhaze Quote Link to comment Share on other sites More sharing options...
latigid on Posted July 14, 2016 Report Share Posted July 14, 2016 (edited) Keep in mind that Programma v0.2 will use illuminated encoders instead of LED rings. Less holes and more flexibility (colour coding for different sections, modulator polarity etc.) As far as a universal controller goes, you get dynamic labelling of encoder functions and "pages" for different synths, different patches etc. -- the ultimate solution! It's also a 4*4 grid, so you're free to mix and match with different types of boards, like in the Modulbox concepts Jerome is putting forward. This is intended as a MBCV control surface, but it too could be adapted: These are Standard Control Surface (SCS) boards which can have 1,2 or 4 OLEDs attached in various configurations (note the 6 buttons are now in the centre): Edited July 14, 2016 by latigid on 2 Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 29 minutes ago, Psykhaze said: Just to make your work easier you should see if any exisitng thing couldn't be taken as base. Absolutely, you're right. I'm trying to get an overview since days and maybe expecting too much. But as i know myself i have to fix a few decisions to move forward. Otherwise there is this ocean of possiblities where you will never arrive anywhere, procrastinating the project forever. (wacky phrasing!?) 39 minutes ago, Psykhaze said: You're asking much at a time =) Sorry, i know i have more questions than reasonable, that's my problem of having no idea what i'm doing ;) I appreciate every info i can get. Maybe other noob's will benefit from all this too. Quote Link to comment Share on other sites More sharing options...
Psykhaze Posted July 14, 2016 Report Share Posted July 14, 2016 Just now, tago said: Sorry, i know i have more questions than reasonable, that's my problem of having no idea what i'm doing ;) I appreciate every info i can get. Maybe other noob's will benefit from all this too. I had the same problem at the beginning =) Just try to take enough time to get your mind clear . A french saying says "Night brings advice" Bests, Jerome Quote Link to comment Share on other sites More sharing options...
tago Posted July 14, 2016 Author Report Share Posted July 14, 2016 (edited) Just now, latigid on said: This is intended as a MBCV control surface, but it too could be adapted: Looks intresting. Will have a look at MBCV too. Regarding OLEDs in NG manual it says: Quote Up to 12 OLEDs can be (natively) controlled by a MIOS32 based core, they are accessed via 4-wire serial interface. Sounds good. There should be no problem having a few waveform displays. Have to look into this later. Edited July 14, 2016 by tago Quote Link to comment Share on other sites More sharing options...
latigid on Posted July 14, 2016 Report Share Posted July 14, 2016 (edited) Max. 64 displays (128*64 graphical 0.96" OLED based on SSD1306) are possible with extra chip select lines (e.g. PCB shown below), each of the 2*5 connectors drives up to 4 displays. Edited July 14, 2016 by latigid on 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.