Jump to content

MIDIbox NG Release + Feedback


TK.

Recommended Posts

Hi

while waiting for the upcoming multi display informations :thumbsup: - i made a Standard Control Surface PCB. 

I Ordered a Prototype Yesterday. It should reach me in a cuple of days.

As soon its running i will publish it here. So SmashTV can sell them... (if he want to...) 

 

Cheers!

novski

Link to comment
Share on other sites

  • Replies 353
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Excellent!!!  :rofl:

 

Meanwhile we can at least output received messages via SysEx

@Koerby: I also added the ^# label terminator

And my given example wasn't working perfectly with v1.009 - a small bar was print in addition on a label which didn't output any character - this is fixed as well in v0.010

 

Now you can write: label="^clr1^#Osc1^clr2^#Shape:^OSC_Shp"

 

MIDIbox NG V1.010
~~~~~~~~~~~~~~~~~

   o SysEx: added ^cursor, ^txt and ^txt56 identifiers.
     They allow to send messages to the LCD via SysEx.
     A usage example can be found under cfg/templates/logictrl.ngc

   o Labels: ^# allows to terminate a label.
     E.g. "^label^#MyText" prints "MyText" directly after the specified ^label

 

 

Best Regards, Thorsten.

Link to comment
Share on other sites

Alternatively (the newbie solution - most simple wiring, no special PCBs required):

- 1 MBHP_CORE_LPC17 module

- a SD Card

- 4 MBHP_DINX4 modules

- an optional 2x20 LCD

 

Best Regards, Thorsten.

thank you! Thorsen.  I read on the forum that we must not use encoder detent. why not detent? are found in commerce encoder not detent?

thank!

Link to comment
Share on other sites

Hi Thorsten... another question:

 

Is it possible to send an additional midi event when I select a bank with a button?

 

Example:

EVENT_BUTTON id=  1  hw_id =  1  fwd_id=LED:1  fwd_to_lcd=1  type=Meta  meta=SetBank \ button_mode=OnOnly  range=  1:1  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_BUTTON id=  2  hw_id =  2  fwd_id=LED:2  fwd_to_lcd=1  type=Meta  meta=SetBank \ button_mode=OnOnly  range=  2:2  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_BUTTON id=  3  hw_id =  3  fwd_id=LED:3  fwd_to_lcd=1  type=Meta  meta=SetBank \  button_mode=OnOnly  range=  3:3  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_BUTTON id=  4  hw_id =  4  fwd_id=LED:4  fwd_to_lcd=1  type=Meta  meta=SetBank \ button_mode=OnOnly  range=  4:4  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

This works but now I want to send an additional cc=16 at chn=11 with:

range=0:0 for Button1

range=4:4 for Button2

range=8:8 for Button3

range=12:12 for Button4

 

So when select Bank1 an additional cc=16 chn=11 range=0:0 should be sent an so on...

 

I played around with the sender / receiver commands but nothing works correctly.

 

EVENT_BUTTON id=  1  hw_id =  1  fwd_id=SENDER:1  fwd_to_lcd=1  type=Meta  meta=SetBank  button_mode=OnOnly  range=  1:1  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_SENDER id=  1              fwd_id=LED:1     fwd_to_lcd=1  type=CC    chn=11  cc=  16     range=  0:0  offset=  0   ports=1000100000001000  lcd_pos=1:1:2  label="Sender%3i:   %e"
  
EVENT_BUTTON id=  2  hw_id =  2  fwd_id=SENDER:2  fwd_to_lcd=1  type=Meta  meta=SetBank  button_mode=OnOnly  range=  2:2  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_SENDER id=  2              fwd_id=LED:2     fwd_to_lcd=1  type=CC    chn=11  cc=  16     range=  4:4  offset=  0   ports=1000100000001000  lcd_pos=1:1:2  label="Sender%3i:   %e"

EVENT_BUTTON id=  3  hw_id =  3  fwd_id=SENDER:3  fwd_to_lcd=1  type=Meta  meta=SetBank  button_mode=OnOnly  range=  3:3  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_SENDER id=  3              fwd_id=LED:3     fwd_to_lcd=1  type=CC    chn=11  cc=  16     range=  8:8  offset=  0   ports=1000100000001000  lcd_pos=1:1:2  label="Sender%3i:   %e"

EVENT_BUTTON id=  4  hw_id =  4  fwd_id=SENDER:4  fwd_to_lcd=1  type=Meta  meta=SetBank  button_mode=OnOnly  range=  4:4  lcd_pos=1:17:1 label="Bnk%d" radio_group=1

EVENT_SENDER id=  4              fwd_id=LED:4     fwd_to_lcd=1  type=CC    chn=11  cc=  16     range=  12:12 offset= 0   ports=1000100000001000  lcd_pos=1:1:2  label="Sender%3i:   %e" 

This selects the banks correctly but not the LEDs and sends multiple times the cc=16 / chn=11 value with the range of the bank instead of the defined ranges...

 

Maybe i am thinking to complicated, but until now I found no solution.

Link to comment
Share on other sites

An interesting usecase which I haven't considered yet.

To make it as comfortable as possible, EVENT_SENDER (and EVENT_RECEIVER) can now be assigned to a radio_group as well.
This could also be helpful for other purposes in future! :smile:

 

MIDIbox NG V1.011
~~~~~~~~~~~~~~~~~

   o EVENT_SENDER and EVENT_RECEIVER can now also be assigned to a radio_group.
     This can not only be used in conjunction with BUTTON/LED radio groups, but also
     to distribute MIDI events to from receiver to multiple senders without
     forwarding chains (which then can be used for a different purpose)

   o the "sdcard_format" command allows to format the connected SD Card with FAT32
     from the MIOS Terminal

 

 

Take following test as an example configuration:

http://svnmios.midibox.org/filedetails.php?repname=svn.mios32&path=%2Ftrunk%2Fapps%2Fcontrollers%2Fmidibox_ng_v1%2Fcfg%2Ftests%2Fbnkledcc.ngc

 

Best Regards, Thorsten.

Link to comment
Share on other sites

Hi Thorsten,

 

thank you for your help... it works! :phone:

 

But there is one problem left with the LEDs. To explain it I must post the code:

 

EVENT_BUTTON id=  1  hw_id =  1  fwd_id=LED:1  fwd_to_lcd=1  radio_group=1  \
                                 type=Meta  meta=SetBank button_mode=OnOnly  range=  1:1  lcd_pos=1:1:1 label="%CBank %-3q"

EVENT_BUTTON id=  2  hw_id =  2  fwd_id=LED:2  fwd_to_lcd=1  radio_group=1  \
                                 type=Meta  meta=SetBank button_mode=OnOnly  range=  2:2  lcd_pos=1:1:1 label="%CBank %-3q"

EVENT_BUTTON id=  3  hw_id =  3  fwd_id=LED:3  fwd_to_lcd=1  radio_group=1  \
                                 type=Meta  meta=SetBank button_mode=OnOnly  range=  3:3  lcd_pos=1:1:1 label="%CBank %-3q"

EVENT_BUTTON id=  4  hw_id =  4  fwd_id=LED:4  fwd_to_lcd=1  radio_group=1  \
                                 type=Meta  meta=SetBank button_mode=OnOnly  range=  4:4  lcd_pos=1:1:1 label="%CBank %-3q"


MAP1 0 0 4 8 12
EVENT_SENDER id=  1   radio_group=1  type=CC  cc=16  range=map1  chn=11   ports=1110100000001000


# Bank 1
EVENT_BUTTON id=  5  hw_id=5  bank= 1  fwd_id=LED:5    type=CC	chn= 1  cc= 21  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  1/1  "
EVENT_BUTTON id=  6  hw_id=6  bank= 1  fwd_id=LED:6    type=CC	chn= 1  cc= 26  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  2/1  "
EVENT_BUTTON id=  7  hw_id=7  bank= 1  fwd_id=LED:7    type=CC  chn=11  cc= 16  range=  0:0    offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  1/1  "  radio_group=2
EVENT_BUTTON id=  8  hw_id=8  bank= 1  fwd_id=LED:8    type=CC  chn=11  cc= 16  range=  1:1    offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  2/1  "  radio_group=2

# Bank 2
EVENT_BUTTON id=  9  hw_id=5  bank= 2  fwd_id=LED:5    type=CC	chn= 2  cc= 21  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  3/1  "
EVENT_BUTTON id= 10  hw_id=6  bank= 2  fwd_id=LED:6    type=CC	chn= 2  cc= 26  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  4/1  "
EVENT_BUTTON id= 11  hw_id=7  bank= 2  fwd_id=LED:7    type=CC  chn=11  cc= 16  range=  4:4    offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  3/1  "  radio_group=3
EVENT_BUTTON id= 12  hw_id=8  bank= 2  fwd_id=LED:8    type=CC  chn=11  cc= 16  range=  5:5    offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  4/1  "  radio_group=3

# Bank 3
EVENT_BUTTON id= 13  hw_id=5  bank= 3  fwd_id=LED:5    type=CC	chn= 3  cc= 21  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  5/1  "
EVENT_BUTTON id= 14  hw_id=6  bank= 3  fwd_id=LED:6    type=CC	chn= 3  cc= 26  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  6/1  "
EVENT_BUTTON id= 15  hw_id=7  bank= 3  fwd_id=LED:7    type=CC  chn=11  cc= 16  range=  8:8    offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  5/1  "  radio_group=4
EVENT_BUTTON id= 16  hw_id=8  bank= 3  fwd_id=LED:8    type=CC  chn=11  cc= 16  range=  9:9    offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  6/1  "  radio_group=4

# Bank 4
EVENT_BUTTON id= 17  hw_id=5  bank= 4  fwd_id=LED:5    type=CC	chn= 4  cc= 21  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  7/1  "
EVENT_BUTTON id= 18  hw_id=6  bank= 4  fwd_id=LED:6    type=CC	chn= 4  cc= 26  range=  0:127  offset=  0  button_mode=OnOnly	ports=1110100000001000  lcd_pos=1:1:2  label="Play  -  Clip  8/1  "
EVENT_BUTTON id= 19  hw_id=7  bank= 4  fwd_id=LED:7    type=CC  chn=11  cc= 16  range= 12:12   offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  7/1  "  radio_group=5
EVENT_BUTTON id= 20  hw_id=8  bank= 4  fwd_id=LED:8    type=CC  chn=11  cc= 16  range= 13:13   offset=  0  button_mode=OnOnly   ports=1110100000001000  lcd_pos=1:1:2  label="Select - Clip  8/1  "  radio_group=5

When I press one of the four bankselect-buttons the correct cc-value will be sent like it should. Perfect!

 

As you can see in the code this cc-value is equal to the value of the 3rd button in each bank (the button with hw_id=7).

When I press this button (hw_id=7) the cc-value will be sent AND the LED (LED:7) will be selected / go on (all other LEDs off) in the corresponding radiogroup.

 

But when I press one of the bankselect-buttons the LED-Status would not be changed in the corresponding radiogroup.

 

It should be like I press the button (hw_id=7) after I select the bank so the LED-Status jumps to the correct LED:7 within the radiogroup.

 

BTW: Sorry for this complicated stuff but it wold be great you could help me angain... :rolleyes:

Link to comment
Share on other sites

Ok, I see two problems:

 

1) unrelated, but first: LED:5/6 are permanently active once BUTTON:5/6 has been pressed, because "button_mode=OnOnly" is specified.

The corresponding LED would turn off if you would use "button_mode=OnOff" (or just don't specify the button_mode

 

2) the radio grouping works correctly from my point of view.

E.g. use MBNG standalone (ensure that your DAW doesn't send feedback values), switch between the banks and select either BUTTON:7 or :8

Then switch again between the banks - you will notice that the bank will hold the selected value.

 

But if your DAW sends a feedback value, we've a conflict, because all buttons/LED EVENTs will receive the "cc=16 chn=11" value regardless of the bank selection (which is intended) - and this causes the effect, that button/LEDs of some banks will be deselected - only a single button/LED will be activated.

 

The only solution I see is to use different CCs (or channels) for the different radio groups

 

Best Regards, Thorsten.

Link to comment
Share on other sites

Hi Thorsten, I think you misunderstand me a little bit ;-)

The radio grouping works correctly - I try to explain what I want to do.

Normally when I press a bankselect-button no MIDI event will be sent = nothing happens in the DAW.

But when I select a bank the DAW should "jump" to the first clip of the selected bank and the corresponding LED:7 should turn on. Currently I additionally have to press the hw_id=7 button every time I change the bank to achieve this. BTW: The DAW sends no feedback in this case.

With the sender which listens to the radio group of the bankselect-buttons these buttons now send the correct MIDI event (like hw_id=7 button was pressed) to select the first clip in the DAW when the bank is changed - perfect!

But the LED:7 will not light up as when I press the hw_id=7 button. And because of the - correct working - radio group it remembers the last state of the LED wich is not correct in most cases and therefor more confusing than useful. Only LED:7 should turn on (and the others of the radio group off) when a bank was selected. That´s the problem.

Principally when I press a bankselect-button it should additionally "press" the hw_id=7 button - but with only one button press.
Maybe it´s possible to "combine" two commands (The bankselect and the "press" on button 7) at one button?

BTW: I can not use diffrent CCs or channels, because the sender sends only one CC / channel. And I have tried it with one radio group over multiple banks wich also does not work. Also other things like a fwd_id=LED:7 ln the EVENT_SENDER line - but nothnig works.

 

I understand if you can not help me if the solution is to time consuming - but if you have an idea it would be great.

 

Link to comment
Share on other sites

Hi Thorsten, please ignore my last post - now it works! :rolleyes:

 

Usually MIDI events will not be forwarded in the DAW (Ableton Live) (to avoid MIDI Feddback Loops?).

 

Now I have forwarded all incomming MIDI at chn 11 back to the MIDIBox - an it works!

 

But isnt this a Feedback-Loop? I wonder how this can work. The Box receives the same event as it sends.

Link to comment
Share on other sites

Yes, I can support the MAX7221 - now where we've generic configuration commands, it isn't a big problem for me to change the purpose of a DOUT_MATRIX by providing additional parameters.

 

regarding the possible MAX7221 support: do you already know which port of the LPC17 you will use for this? AFAIK it needs a DATA IN, LOAD/CS and CLK (besides 5V and Gnd).

 

I'm not in a hurry, just wondering how I do the internal wiring of my controller.

 

Cheers

Lars

Link to comment
Share on other sites

Hi All,

 

A little help if you can. Not being the greatest coder or even a noob. I cannot get my Software SAC to talk back to my mbng. I can move the faders in the DAW but not the other way around.

I have attached the simple file I am working with. Any thoughts or clues would be much appreciated.

 

RESET_HW


LCD "%C@(1:1:1)KUI FADER"






# on motorfader movements

EVENT_MF  id= 1   fwd_id=MF:1    type=NRPN  NRPN= 1 chn= 1  range=0:16383
EVENT_MF  id= 2   fwd_id=MF:2    type=NRPN  NRPN= 2 chn= 1  range=0:16383
EVENT_MF  id= 3   fwd_id=MF:3    type=NRPN  NRPN= 3 chn= 1  range=0:16383
EVENT_MF  id= 4   fwd_id=MF:4    type=NRPN  NRPN= 4 chn= 1  range=0:16383
EVENT_MF  id= 5   fwd_id=MF:5    type=NRPN  NRPN= 5 chn= 1  range=0:16383
EVENT_MF  id= 6   fwd_id=MF:6    type=NRPN  NRPN= 6 chn= 1  range=0:16383
EVENT_MF  id= 7   fwd_id=MF:7    type=NRPN  NRPN= 7 chn= 1  range=0:16383
EVENT_MF  id= 8   fwd_id=MF:8    type=NRPN  NRPN= 8 chn= 1  range=0:16383
EVENT_MF  id= 9   fwd_id=MF:9    type=NRPN  NRPN= 1 chn= 2  range=0:16383
EVENT_MF  id= 10  fwd_id=MF:10 type=NRPN  NRPN= 2 chn= 2  range=0:16383
EVENT_MF  id= 11  fwd_id=MF:11 type=NRPN  NRPN= 3 chn= 2  range=0:16383
EVENT_MF  id= 12  fwd_id=MF:12 type=NRPN  NRPN= 4 chn= 2  range=0:16383
EVENT_MF  id= 13  fwd_id=MF:13 type=NRPN  NRPN= 5 chn= 2  range=0:16383
EVENT_MF  id= 14  fwd_id=MF:14 type=NRPN  NRPN= 6 chn= 2  range=0:16383
EVENT_MF  id= 15  fwd_id=MF:15 type=NRPN  NRPN= 7 chn= 2  range=0:16383
EVENT_MF  id= 16  fwd_id=MF:16 type=NRPN  NRPN= 8 chn= 2  range=0:16383


# MF hardware (has to be configured for Motormix protocol!)

MF n=  1   enabled=1  midi_in_port=IN3   midi_out_port=OUT3  chn=1  ts_first_button_id=0 config_port=USB2
MF n=  2   enabled=1  midi_in_port=IN4   midi_out_port=OUT4  chn=2  ts_first_button_id=0 config_port=USB2
MF n=  3   enabled=0  midi_in_port=0x00  midi_out_port=0x00  chn=1  ts_first_button_id=0 config_port=0x00
MF n=  4   enabled=0  midi_in_port=0x00  midi_out_port=0x00  chn=1  ts_first_button_id=0 config_port=0x00

 

 

Thanks

 

KUI

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...

×
×
  • Create New...