KUI Posted January 19, 2013 Report Share Posted January 19, 2013 Hi TK, The problem was solved by switching to the mb gm5 usb driver. Thanks for all you do:) KUI Quote Link to comment Share on other sites More sharing options...
TK. Posted January 20, 2013 Author Report Share Posted January 20, 2013 Cool! :smile:I just have release a new version: MIDIbox NG V1.012 ~~~~~~~~~~~~~~~~~ o The application boots a little bit faster now o support for more than 2 LCDs. A documentation can be found under http://www.ucapps.de/midibox_ng_manual_lcd.html Have fun! :smile:Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
TK. Posted January 26, 2013 Author Report Share Posted January 26, 2013 A new version is available - it mainly relaxes previous limitations related to (G)LCDs, existing panels should work like before! MIDIbox NG V1.013 ~~~~~~~~~~~~~~~~~ o overworked LCD handling: there is no buffer limitation anymore, any LCD and GLCD size is accepted, which especially means that GLCD fonts are displayed correctly independent from the specified number of connected devices. o this change has freed some RAM which can be used for other purposes in future Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
TK. Posted January 27, 2013 Author Report Share Posted January 27, 2013 A new version is available - let's check if MBNG is fast enough to scan velocity keyboards as well :) MIDIbox NG V1.014 ~~~~~~~~~~~~~~~~~ o the keyboard handler of MIDIbox KB has been integrated. The configuration commands are identical "set kb..." as documented at the MIDIbox KB page: http://www.ucapps.de/midibox_kb.html o keyboard parameters are also stored in the .NGC file, and can be configured from there. o please note that the latency is 10 times higher than in the MIDIbox KB application! Each row is scanned in 320 uS (instead of 32 uS). This has to be considered in the velocity delay configuration. delay_slowest should be 100 (instead of 1000), and delay_fastest should be 5 (instead of 50) o DOGM and SSD1306 GLCDs: support for more than 12 displays via DOUT shift registers connected to J28 A typical keyboard configuration would be: KEYBOARD n=1 rows=8 dout_sr1=1 dout_sr2=2 din_sr1=1 din_sr2=2 din_inverted=0 break_inverted=0 din_key_offset=32 \ scan_velocity=1 scan_optimized=0 note_offset=28 midi_ports=1000100000001000 midi_chn=1 \ delay_fastest=5 delay_fastest_black_keys=0 delay_slowest=100 \ ain_pitchwheel_pin= 0 ain_pitchwheel_ctrl=128 ain_pitchwheel_min= 1 ain_pitchwheel_max=254 \ ain_modwheel_pin = 0 ain_modwheel_ctrl = 1 ain_modwheel_min = 1 ain_modwheel_max =254 \ ain_sustain_pin = 0 ain_sustain_ctrl = 64 ain_sustain_min = 1 ain_sustain_max =254 Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
John E. Finster Posted January 27, 2013 Report Share Posted January 27, 2013 DOGM and SSD1306 GLCDs: support for more than 12 displays via DOUT shift registers connected to J28 that´s fantastic :w00t: . i just ordered 8 additional ssd1306 yesterday, so i will be up to 16 now when they arrive. how many can be connected that way? Quote Link to comment Share on other sites More sharing options...
rvlt Posted January 27, 2013 Report Share Posted January 27, 2013 Great! I'm desparately waiting for another two LPCXpresso boards, I don't wont to rip apart my other controller again. But I will try this as soon as I get them, hopefully tomorrow... btw, provided that the keyboard extension works well, will you incorporate the calibration procedure for the mod/pitchwheel as well? Lars Quote Link to comment Share on other sites More sharing options...
TK. Posted January 27, 2013 Author Report Share Posted January 27, 2013 that´s fantastic :w00t: . i just ordered 8 additional ssd1306 yesterday, so i will be up to 16 now when they arrive. how many can be connected that way? Up to 64 SSD1306 displays are supported! :smile:The configuration is described at the bottom of this page: http://www.ucapps.de/midibox_ng_manual_lcd.html btw, provided that the keyboard extension works well, will you incorporate the calibration procedure for the mod/pitchwheel as well?Currently the same AIN driver is integrated like in MBKB, which means that the calibration works the same way. The calibration values are stored in the _min/_max parameters.Once I got the confirmation that the keyboard handling is acceptable (*), I will replace the AIN based pitch/modwheel by a more generic approach (EVENT_AIN resp. EVENT_AINSER) so that also the more accurate AINSER inputs can be used.(*) Acul already confirmed that the keyboard handler works fine at his side - he doesn't recognize any latency! :smile:Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
rvlt Posted January 27, 2013 Report Share Posted January 27, 2013 Ah, right, I just saw the config parameters in your configuration example. Perfect. Now if only DHL's latency would be less than 7 days... :rolleyes: Quote Link to comment Share on other sites More sharing options...
TK. Posted January 27, 2013 Author Report Share Posted January 27, 2013 Erratum: the keyboard won't be scanned if the parameters are loaded from the .NGC file. Workaround: enter one of the kb commands into MIOS Terminal which re-initializes the keyboard handler, such as: set kb 1 velocity on This issue will be fixed with v1.015 Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
TK. Posted January 29, 2013 Author Report Share Posted January 29, 2013 V1.015 is available: MIDIbox NG V1.015 ~~~~~~~~~~~~~~~~~ o support for GLCD_SSD1306_ROTATED o the ^txt and ^txt56 SysEx command now allows to map incoming characters to different cursor positions. An example can be found in cfg/templates/logictrl.ngc o independent from this map feature, ^txt and ^txt56 now also take lcd_pos=... and label=... into account to set the initial LCD and cursor position, at which the message will start. The label can be used to change the GLCD font before the characters will be print. An example can be found in cfg/templates/logictrl.ngc as well. Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
John E. Finster Posted January 29, 2013 Report Share Posted January 29, 2013 ouuh, i see a very exciting weekend coming up. probably even more than one..... :w00t: Thanks a lot, TK. Quote Link to comment Share on other sites More sharing options...
norbim1 Posted January 30, 2013 Report Share Posted January 30, 2013 Hi Thorsten, Great news about the KB handler integration. I'm currently planning to build an isomorphic keyboard whit MBKB. ( If somebody interested some theory can be found here: http://www.altkeyboards.com/instruments/isomorphic-keyboards. ) Because of the alternative "non standard" keyboard layouts, it needs a configurable key remapping function. I'm wondering if this would be possible in the future via the NG configuration files? Thanks, Norbert Quote Link to comment Share on other sites More sharing options...
rvlt Posted January 30, 2013 Report Share Posted January 30, 2013 I have another feature request: It would be great to use some of the onboard-ports of the LPC17 as additional I/Os with MB_NG. TK already confirmed that J10 will be available for standard digital inputs, and it would be really handy to use J5a/b or J28 as digital outputs as well. Today I realized that I need one (!) additional dout pin for connecting a LED, so instead of adding another DOUT board (or breadboard one), it would be much easier to simply use J5or J28 directly. ----- BTW can anybody confirm this: I have a 3-digit LED connected via two shift registers on a DOUTx4: SR1 D0-7 are connected to the segments SR2 D0-2 are connected to the commons (no resistors installed) so SR2 D3-7 are free, but I can't use them for connecting "normal" LEDs, right? Cheers Lars Quote Link to comment Share on other sites More sharing options...
TK. Posted January 30, 2013 Author Report Share Posted January 30, 2013 Hi Norbert, once more people successfully tested the keyboard scan with MBNG, I will go for the next step and make the MIDI event configurable via a new EVENT_KEYBOARD command, which works similar to MIDI_BUTTON or MIDI_DIN_MATRIX - this means, that mapping will be available as well. As a nice side effect this will also allow to map the velocity, e.g. to a curve defined in a MAP. :) @Lars: this will require some testing at my side. E.g. I've to check what happens if somebody connected a pot directly to J5.A0, and enables the output function by accident (e.g. while loading a certain .ngc file without knowing the content). In worst case this could damage the pin forever (but my hope is, that the internal impedance is high enough so that a short circuit protection is guaranteed) Your assumptions for the LED digits is correct, but they are not supported by the firmware yet! Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Nexus Posted January 31, 2013 Report Share Posted January 31, 2013 Hi Thorsten, is it possible to assign diffrent CCs or Notes to a Rotary Encoder (e.g. CC 10 when moved cw and CC 11 when moved acw) ? Quote Link to comment Share on other sites More sharing options...
TK. Posted January 31, 2013 Author Report Share Posted January 31, 2013 This could work with conditional events, see also the third example in this posting: But I haven't got much feedback on the proposed usage yet... and I'm unsure if there are more cases which have to be considered... Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Nexus Posted January 31, 2013 Report Share Posted January 31, 2013 I have tried the example, but unfortunately it does not work. The Encoder sends both CCs at the same time with vel. 1 when moved cw and both with vel. 127 when moved ccw. It seems the "if_equal" and "range" command has no effect in the EVENT_SENDER lines. I have played around with the "inc/dec" enc_modes but it does not work in my case. The Encoder should replace 2 buttons which must have different CCs or Notes. Quote Link to comment Share on other sites More sharing options...
TK. Posted February 1, 2013 Author Report Share Posted February 1, 2013 You missed the context! It's totally clear to me what you want to achieve, and if you read the linked posting again you will notice that I'm trying to cover multiple requests with a single method. The method isn't implemented yet, which means in other words: it doesn't work because it's still in the planning phase. In order to determine, if the proposed method is sufficient, I'm asking for feedback to find out, if other usecases would lead to an unwanted conflict which requires a different approach. Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
TK. Posted February 1, 2013 Author Report Share Posted February 1, 2013 A minor improvement which hopefully helps if you are facing issues with multiple connected LCDs: MIDIbox NG V1.016 ~~~~~~~~~~~~~~~~~ o LPC17: robustness of LCD driver has been improved Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
Nexus Posted February 3, 2013 Report Share Posted February 3, 2013 You missed the context! I have found a workaround with Bomes Midi Translator. For the Encoder I use the enc_mode=Inc01_Dec7F and Bomes translates it to 2 diffrent CCs. Now it works, but it would be great to see the planned feature for diffrent Notes/CCs with Encoders in the future. Quote Link to comment Share on other sites More sharing options...
TK. Posted February 5, 2013 Author Report Share Posted February 5, 2013 With the next version you will be able to send a separate event for Inc/Dec the following way: http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fconev_1.ngc Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
TK. Posted February 6, 2013 Author Report Share Posted February 6, 2013 Now available in V1.017: MIDIbox NG V1.017 ~~~~~~~~~~~~~~~~~ o it's now possible to use the same hw_id in multiple event definitions. This allows for example to send multiple MIDI events from a single control element (e.g. from a single button) o the fwd_id now forwards to the event(s) with the given hw_id (which is the same like the "normal id" if not explicitely specified) o implemented "conditional events". See the user manual (.NGC chapter) for details and examples. o the new meta event UpdateLcd allows to force a refresh of the complete LCD content. This is especially useful in conjunction with conditional events: whenever a source value has been changed (e.g. a button state), all events which have this value in their condition will print out the label if the specified condition matches. Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
KUI Posted February 7, 2013 Report Share Posted February 7, 2013 Hi TK I am having trouble compiling the latest ng release 1.017. I get a compile error saying that keyboard.mk does not exist. After looking through the repository in the modules section the keyboard module does not have a make file in the folder. Am I missing something? Thanks KUI Quote Link to comment Share on other sites More sharing options...
rvlt Posted February 8, 2013 Report Share Posted February 8, 2013 A new version is available - let's check if MBNG is fast enough to scan velocity keyboards as well :smile: Hey, I tried it with my keyboard yesterday and all I can say is it works perfectly. No noticeable latency difference compared to MB_KB or to the original keyboard controller. Cheers Lars Quote Link to comment Share on other sites More sharing options...
TK. Posted February 8, 2013 Author Report Share Posted February 8, 2013 Hi TK I am having trouble compiling the latest ng release 1.017. I get a compile error saying that keyboard.mk does not exist. After looking through the repository in the modules section the keyboard module does not have a make file in the folder. Am I missing something? Thanks KUI I forgot to commit this file - it's available now. I tried it with my keyboard yesterday and all I can say is it works perfectly. No noticeable latency difference compared to MB_KB or to the original keyboard controller. Great! :smile: I will release a new version with EVENT_KB (will allow to define a velocity curve via a map) + calibration for AINSER inputs tomorrow. Best Regards, Thorsten. 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.