Jump to content

Ideas on how to design/program MIDI driven LED meter bridge


hædwerkn
 Share

Recommended Posts

Hi all,

For several months now I've been thinking about doing a DIY MIDIBox to replicate an expensive and hard to find accessory for my Roland VS2400 audio workstation - the Roland MB-24 meter bridge.

The meter bridge is driven off MIDI data sent on channel 16. Roland rather conveniently published the actual MIDI spec used to drive the MB-24 in the back of one of their manuals (which I've inserted at the end of this post).

The MB-24 was originally designed for use with the V7200 digital mixing platform, so there are some features and functions that don't get used when connected (some of the section light, and the 9th and 10th digit in the scene/timecode display). What is required is about 370 LEDs and 8 7-seq displays ie. around 420 digital out controls.

Hardware-wise, I see myself needing:

1 core unit

2 DOUTx4 units for the meters and status lights... each board can control 256 LEDs in a 16x16 scan-switching arrangement. 2 will easily cover all the meter groups and other status lights.

1 DOUTx4 unit for the MTC/LED display output (actually only need 3/4s of it).

Sound right?

Software wise, I'm not really sure where to start. This would be my first foray into MIOS and assembler... I've done some PICAXE dev before, but I realise there's some serious work ahead. I suppose what I'm asking for are some ideas and examples of where to start.

The other thing I'm worried about is the speed at which MIOS and the DOUT units can refresh the matrix of LEDs... ideally I'd want the LEDs to run at 15-25fps without any noticeable scanning or interlacing. Can the OS process data that fast?

Would love to hear anyone's thoughts and ideas.

Cheers, Ben.

ROLAND VS-2400 - output spec for MB-24 Meter Bridge


[tt]Transmits the level meter value of VS-2400CD according to the value of DISPLAY SECTION (MIDI ch. is fixed to 16.)

Ignored when received.

    Status  Second  Third

    ------  ------  -----

    AFH      mmH    llH

    mm = Note No.          :  00H - 5BH (0 - 91)

    ll = Level Meter Value  :  00H - 7FH (0 - 127)

--------------------------------------------------------------------------

              Level meter and NOTE No.

--------------------------------------------------------------------------

Level Meter  Analog    Digital    Input      Track      FX        AUX/      Analog    Digital

Target      Input      Input      Mixer      Mixer      Return    DIR        Output    Output

---------------------------------------------------------------------------------------------------

Note        Level      Level      Level      Level      Level      Level      Level      Level

            Meter      Meter      Meter      Meter      Meter      Meter      Meter      Meter

Number      Channel    Channel    Channel    Channel    Channel    Channel    Channel    Channel

---------------------------------------------------------------------------------------------------

  0        Input  1  R-BUS 1    Input  1  Track  1  FxRtn 1L    AUX 1    Output 1    R-BUS 1

  1        Input  2  R-BUS 2    Input  2  Track  2  FxRtn 1R    AUX 2    Output 2    R-BUS 2

  2        Input  3  R-BUS 3    Input  3  Track  3  FxRtn 2L    AUX 3    Output 3    R-BUS 3

  3        Input  4  R-BUS 4    Input  4  Track  4  FxRtn 2R    AUX 4    Output 4    R-BUS 4

  4        Input  5  R-BUS 5    Input  5  Track  5  FxRtn 3L    AUX 5    Output 5    R-BUS 5

  5        Input  6  R-BUS 6    Input  6  Track  6  FxRtn 3R    AUX 6    Output 6    R-BUS 6

  6        Input  7  R-BUS 7    Input  7  Track  7  FxRtn 4L    AUX 7    Output 7    R-BUS 7

  7        Input  8  R-BUS 8    Input  8  Track  8  FxRtn 4R    AUX 8    Output 8    R-BUS 8

  8            -          -      Input  9  Track  9      -        DIR 1        -          -

  9            -          -      Input 10  Track 10      -        DIR 2        -          -

10            -          -      Input 11  Track 11      -        DIR 3        -          -

11            -          -      Input 12  Track 12      -        DIR 4        -          -

12            -          -      Input 13  Track 13      -        DIR 5        -          -

13            -          -      Input 14  Track 14      -        DIR 6        -          -

14            -          -      Input 15  Track 15      -        DIR 7        -          -

15            -          -      Input 16  Track 16      -        DIR 8        -          -

16            -      D.In  L      -      Track 17      -          -          -      D.Out  L

17            -      D.In  R      -      Track 18      -          -          -      D.Out  R

18            -          -          -      Track 19      -          -          -          -

19            -          -          -      Track 20      -          -          -          -

20            -          -          -      Track 21      -          -          -          -

21            -          -          -      Track 22      -          -          -          -

22            -          -          -      Track 23      -          -          -          -

23            -          -          -      Track 24      -          -          -          -

24            -          -          -          -          -          -          -          -

25            -          -          -          -          -          -          -          -

26            -          -          -          -          -          -          -          -

27            -          -          -          -          -          -          -          -

28            -          -          -          -          -          -          -          -

29            -          -          -          -          -          -          -          -

30            -          -          -          -          -          -          -          -

31            -          -          -          -          -          -          -          -

32        MONITOR L  MONITOR L  MONITOR L  MONITOR L  MONITOR L  MONITOR L  MONITOR L  MONITOR L

33        MONITOR R  MONITOR R  MONITOR R  MONITOR R  MONITOR R  MONITOR R  MONITOR R  MONITOR R

34        MASTER L  MASTER L  MASTER L  MASTER L  MASTER L  MASTER L  MASTER L  MASTER L

35        MASTER R  MASTER R  MASTER R  MASTER R  MASTER R  MASTER R  MASTER R  MASTER R

--------------------------------------------------------------------------

36

37

38

39

40 Channel Status 1ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

41 Channel Status 2ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

42 Channel Status 3ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

43 Channel Status 4ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

44 Channel Status 5ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

45 Channel Status 6ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

46 Channel Status 7ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

47 Channel Status 8ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

48 Channel Status 9ch      0:Off, 1:Play, 2:Bounce/Source, 3:Rec

49 Channel Status 10ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

50 Channel Status 11ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

51 Channel Status 12ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

52 Channel Status 13ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

53 Channel Status 14ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

54 Channel Status 15ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

55 Channel Status 16ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

56 Channel Status 17ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

57 Channel Status 18ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

58 Channel Status 19ch    0:Off, 1:Play, 2:Bounce/Source, 3:Rec

59 Channel Status 20ch 0:Off, 1:Play, 2:Bounce/Source, 3:Rec

60 Channel Status 21ch 0:Off, 1:Play, 2:Bounce/Source, 3:Rec

61 Channel Status 22ch 0:Off, 1:Play, 2:Bounce/Source, 3:Rec

62 Channel Status 23ch 0:Off, 1:Play, 2:Bounce/Source, 3:Rec

63 Channel Status 24ch 0:Off, 1:Play, 2:Bounce/Source, 3:Rec

64

65

66

67

68

69

70

71

72 SCALE 0:X1, 1:X1/2

73 LOCATION 1:PRE FADER, 2:POST FADER

74

75

76

77

78 8SEG.MODE 0:Measure/Beat, 1:Time Code, 2:Clock+Scene

79 OVER RANGE 0:0db

80 MASTER MUTE 0:OFF, 1:ON

81 PEAK HOLD TIME 0:OFF

82

83

84

85

86

87

88 CLOCK HOUR(*1) / MEAS. MSB (*2)

89 CLOCK MIN.(*1) / MEAS. LSB (*2)

90 CLOCK SEC.(*1) / BEAT (*2)

91 SCENE (*1) / TICK (*2)

92

(*1) When 8SEG.MODE is 2.

(*2) When 8SEG.MODE is 0.

---------------------------------

Level Meter Value and Level

---------------------------------

Value Level

0 0dB

1 -1dB

2 -2dB

:

127 -Infinite

[/tt]

5329_roland_mb24_small_jpg5170ea01f95489

5329_roland_mb24_small_jpg5170ea01f95489

Link to comment
Share on other sites

i was looking into this myself for another project, i was going to use the mackie hui support thats built into digital performer, as it uses the mackie hui system fine, the hui has a meterbridge and this is also driven by the channel levels.  i have emailed mackie about its implementation and im still waiting for the info to be sent, mackie are good like that they said they will and given time the tech guys will, they are just always busy so i will wait my turn.

now there is the stribe project that could be sued for this, ther eis info on that here and on ucapps tk did have a tinker with the kit and got it running really nice in max.

as for the set up yes to the core and douts, but then for the mtc display i think you would need another core and dout for that (unless im mistaken) as im sure that two apps cant share the same pic (knowing me im probably wrong) i dare say tk or nils will correct me on that one.

good thing to get is a gm5 unit also, that way you will have it running such.

pc/mac usb midi ---> usb gm5 ---> use J6 mi/mo 5 ---->core J11 mi/mo core (removing ic2) this way the midi is kept internal and its just the power and usb going to the bridge.

core ---> dout--->dout.

core2---> dout--->mtc display

l

l-->lcd display 20x4

this way you can have the midimon project and the meterbridge at the same time.

l

l--> lcd display

as for the led speeds i wouldnt worry about that, my mtc display and the lcd refresh when going to random time sequences is instant, i notice no delays at all.

tk or nils or stryd-one or one of the other members will also be able to offer some advice.

Link to comment
Share on other sites

One more for "interested also"

I'm looking at building/programming both ends of the link:

One end that reads the levels and outputs a MIDI data stream, and the receiving end that will turn that data stream into a bunch of flashing LEDs.

For my own purpose, of course I want to integrate this with MBMixer.

One app would be a real, flashy meter bridge.

Another would be (maybe) a Java app and a PC based meter bridge

a third possible app would be a Volume AGC circuit for television. (no LEDs needed)

I don't yet know if the link will be standard MIDI or CAN. I see need for very high bandwidth and possibly long distances for this app, especially if mated with MBMixer.

I just happen to have an 8X8 bi-color LED matrix on a pic, connected to this laptop right now.

So development is already "in progress", but I won't predict how soon until have something to show for it.

I'll probably just meter the outputs of MBMix for the proto work.

Until I have nailed down an exact MIDI protocol, I'll gladly consider any "standards" out there that would do what I need. The less standards we have, the more valuable they are.

LyleHaze

Link to comment
Share on other sites

one of the reasons for me getting this midimon project built was so that i could see what my sequencer (digital performer) was transmitting in hui mode) as the mackie hui meter bridge works off the midi signal from dp or other daw software.

once i can lock down what its using for that, if its a basic midi based info then i can think about maing a meterbridge unit.

theres plenty of time for that though ;)

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