English Version French Version


Created in January 2002


  • Two MIDI INs (one hardware, one software implemented)
  • Merged to one MIDI Out
  • Best Case Latency: 320 uS
  • Worst Case Latency: depends on the incoming data (bytes * 320 uS)
  • MIDI In Buffers: 2 * 64 Bytes (PIC18F: 2 * 256 Bytes)
  • Priorisation: First come, first serve; alternation when event is finished
  • Time Out: 200 mS (avoids hangups if MIDI cable is removed during transfer)
  • Optional Power On LED indicates that PIC is running
  • Optional Rx/Tx LEDs
  • Can run on every PIC16F87x at 20 MHz, or PIC18F452 at 40 MHz (10 MHz crystal)
  • Minimal Hardware solution with PIC16F88 available as well

Hardware Variants

PIC16F87x based: the initial version of the MIDImerger project was running on a PIC16F874. This chip is still supported (all PIC16F87x devices will work with the firmware), but if you are planning to build a new merger, and don't already own a spare PIC16F87x, the cheaper PIC16F88 variant is recommended instead.

PIC18F452 based: this is another variant for people who own a spare PIC18F452. There are two different .hex files: one which can be burned directly into the PIC, and another which can be downloaded via MIOS Bootstrap Loader the same way like you would do with MIOS (download has to be started within 2 seconds after power-on.

PIC16F88 based: this is the latest variant, which runs on a smaller PIC. An external crystal is not required, so that this solution is not only cheaper, but also easier to build.

The PIC18F452 based solution allows to upload the firmware via MIDI, which is nice if you don't own a PIC programmer and purchased a preburned chip from Mike or SmashTV.

For all other variants you either need a PIC programmer like MBHP_BURNER, or you can search in the MIDIbox Forum for somebody close to your location, who could burn the PIC for you.

Hardware Options

All LEDs (and the corresponding 220 Ohm resistors) are optional.

The 78(L)05 based PSU circuit is not required, if the merger should be used in an environment where a stable +5V supply is already available.

The optocoupler circuit(s) can be left out, if the MIDI Out signal is already available at TTL level, and supplied from the same power source (or at least, if the circuits are sharing the same ground connection). Two interconnection examples

Alternative Solutions

The MIDI Router project allows to merge and process 5 MIDI Inputs before they are forwarded to one or up to 5 MIDI outputs. In theory, more MBHP_IIC_MIDI modules could be added for even more IOs, but this would require some (small, but undocumented!) changes in the firmwares (e.g. MBHP_IIC_MIDI module: only 2 jumpers for address selection, an individual firmware for the remaining modules would be required...).


File Size Description
midimerger.pdf 9k MIDImerger Circuit for PIC16F87x
midimerger_pic18f.pdf 9k MIDImerger Circuit for PIC18F452
midimerger_pic16f88.pdf 9k MIDImerger Circuit for PIC16F88 (best price)
midimerger_pic16f88_to_core.pdf 9k Interconnection Examples for MIDImerger to MBHP_CORE
midimerger_v1_5.zip 22k MIDImerger Firmware for all hardware variants
PCB Layout
midimerger_pcb_v1.zip 3.1MB Mike has created a PCB layout for the old MIDImerger hardware, which is also available in his Shop.
Picture (thanks SMC!).
Note that it has been made for the DIP40 devices, a layout for the newer (and cheaper) PIC16F88 based circuit is not available yet.

Complete PIC16F88 variant built on a vectorboard.

Last update: 2024-05-08

Copyright 1998-2023, Thorsten Klose. All rights reserved.