Jump to content

MIDI Booster Pack

Recommended Posts

Store Links:
The MIDI BoosterPack
The MIDI Standalone

MIDI BoosterPack Kit

This is a second version of my SoundPad booster pack, but I am calling it MIDI booster pack this time because it is meant to be used as a MIDI experimenter's board.

What's new?
MIDI out
Opto isolator can be SMDIP or SOIC
Got rid of all expansion headers (the new board is intended to be used with 2553 only.)

Intended uses? How about this:
MIDI controller (4 digital/analog inputs accessible via 6 pin header, can connect pots or switches, keep in mind that 1.3 has cap/resistor attached to it on the LP board.)
MIDI arpeggiator
MIDI delay/echo
Mapping MIDI channels/notes
Just use your imagination :smile:


Link to post
Share on other sites
  • 1 month later...
  • Replies 70
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

OK, so you have the latest board (schematic above.)   You only need one opto, 6N or HCPL. Since HCPLs (SOIC) are hard to get, you have the option to use 6N (DIP and MDIP.) If you get DIP, you have

I just opened a thread on Stelarisiti for this boosterpack. Check it out here.   Thanks again Rob for this wonderful boostepack

New version, available in few days.   MIDI In MIDI Out 2ch DAC (no output filter) Memory 2 potentiometers and a switch (with RC debouncer) Partially assembled (MIDI parts only)  

Posted Images

Here are few example applications for this booster pack:

MIDI Controller - connect photo cell/LDR or joystick to analog inputs and use it to control pitch with one axis/light stream and volume/filter with the other.

MIDI Arpeggiator - receive note, repeat 3 times with different notes. Think Jean Michelle Jarre.

MIDI Echo - receive note, repeat decreasing velocity

MIDI Monitor - display on LCD what's going on, good for troubleshooting.

MIDI Splitter - receive notes on one channel, send on two different depending on octave. Left keys can control bass, right lead.

MIDI Filter - get rid of those unwanted MIDI messages.

Many more :)

Link to post
Share on other sites
Thanks Rog. :thumbup:

Who's Rog? :)


I was working on turning this booster pack into a MIDI Monitor when I realized that one more thing should be included on the board (actually two, SPI/LCD connection would be useful,) SD card. The card could be very useful for turning this booster pack into a MIDI Player.

Link to post
Share on other sites
  • 4 weeks later...

Here's the fully assembled board, with SMDIP opto and optional DAC.








Two 5-pin 180 DIN sockets

OK1 or OK2 - 6N138/6N139/HCPL0700/HCPL0701

IC2 - 74LVC1G07DBV

D1 - 1N4148/1N914 SMD

R1 - 220 0805

R2 - 270 0805

R7 - 68 0805

R8 - 68 0805


optional DAC

IC1 - MCP4822SN

C1 - 10uF/6.3V B (can be 1u - 10u)

C2 - 0.1uF 0805

C3 - 4n7 0805 (C3 and C4 are filter caps, so they can be anything from 1n - 10n)

C4 - 4n7 0805

C5 - 2u2/10V B (C5 and C6 can be 1u - 4u7)

C6 - 2u2/10V B

R3 - 22k 0805 (can be larger)

R4 - 22k 0805 (can be larger)

R5 - 1k 0805

R6 - 1k 0805

Link to post
Share on other sites
  • 2 weeks later...

Hi Rob


I'm having difficulty getting even a simple test working with the Midi booster and I wonder if you can help.


Your midi arpeggiator and harmonizer compile, load and run fine through CCS. I seem to get no signal from midi out though when I send a note to midi in. What would you suggest I check?


Ideally I'd like to be able to print some debug messages via USB to a terminal emulator on the computer so I can start picking things apart. I found oPossum's nice compact printf function (link below), but I haven't succeeded in getting it to coexist with your midi code.




Apologies for the rather noobish questions. If I can get a wee bit of help, I think I can start figuring a few more things out.





Link to post
Share on other sites

Can you receive MIDI?


First thing, make sure your RXD/TXD jumpers are removed from J3.


Load the harmonizer and put a break point in midi.c at line 24 handleMIDI...

#pragma vector=USCIAB0RX_VECTOR
__interrupt void USCI0RX_ISR(void) {


Send MIDI, your debug session should pause at the break point.

Remove break point and put it on line 29 sendMIDI...

#pragma vector=USCIAB0TX_VECTOR
__interrupt void USCI0TX_ISR(void) {
sendMIDI(); // done sending previous byte, see if there's anything else to send

Send MIDI, your debug session should pause at the break point.

Remove break point and put a LED in MIDI OUT socket, anode to pin 4, cathode to pin 5.

When sending MIDI, the LED should be blinking.


Let me know the results.


BTW, I have improved my arpeggiator code, but I need to test it before posting it, will do that next week.

Link to post
Share on other sites

Thanks Rob


I had indeed neglected to remove the TXD and RXD jumpers from J3, so I removed those.


I think for a brief moment I succeeded in having it pause on the breakpoint on line 24 of midi.c. It paused immediately from the MIDI clock transmitted from my drum machine. So I disabled the clock, but then for some reason since then I haven't been able to repeat receiving any kind of MIDI.


I've tried:


- midi output from different sources

- testing the output from each source with a usb midi interface and midi monitor software

- checking the midi cables

- checking the DIN socket connections for continuity

- swapping in a new 2553

- creating a fresh CCS project

- testing the 6N139 for a short between collector and emitter


hmm :think:

Link to post
Share on other sites

You have to specify MIDI channel, 0 = channel 1, 1 = channel 2, etc.

char channel = 0;

Drum machine would most likely be sending on channel 10.


I guess you can start testing from the beginning.

Connect pin 5 of the MIDI IN to ground and pin 4 to Vcc (+3.6V,) you should see ~5mA current.

Connect your volt meter to P1.1 and do above, you should see changes, ~5mA.

If that works, that means MIDI IN hardware is OK.


To test MIDI OUT, connect your volt meter to pin 4 and GND, you should see +3.6V.

Remove 2553 chip from the board.

Connect your amp meter to pin 4 and 5 of MIDI OUT, then connect P1.2 to Vcc, you should see changes.

If that works, MIDI OUT is OK.

Link to post
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.

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.

  • Create New...