MIDIfilter/Processor

Created in April 2002


This is an older page which describes the PIC16F based MIDIfilter. In the meantime MIDI events can be processed on a much easier way by using the C wrapper of MIOS -> see this page.


This small but powerful application allows you to create a really full-customable MIDI filter and processor for just 10-20 Euros (or less, if you are able to get a cheaper PIC). Only disadvantage: some basic programming skills are required, because this circuit doesn't come with buttons and LCD fuer the configuration or with a SysEx dump mechanism. On the other hand, take this project as a chance to learn how to program microcontrollers, and don't hesitate to play with the code - enhance the routines and watch the results.

In fact, this project is a MIDI processing environment. The MIDI handler which analyses the incoming MIDI datastreams is already programmed, and it branches to several routines when a complete event like Note On or CC has been received. These routines can be changed without the knowledge, what the rest of the program is doing. You are able just to send out the received event, to change bytes within the event, to toggle output pins of the PIC or whatever you can imagine :)

Coding examples


Some words to the Hardware

Well, since all my MIDI applications are based on PIC processors, I just used this microcontroller once more for this project. My advantage: the code was ready for use in within one hour ;-) --- your advantage: many people are using the same processor and could give you support - regarding the hardware realisation, burner, software tips&tricks. Ok, there are a lot of cheaper PIC processors which are able for doing the same job, but their memory is limited (not good for enhancements) or they don't contain a flash memory, but only an one-time-programmable memory (OTP), or they are not available for quantities below 1000 :-/
So I decided to use the PIC16F874 again, the availability is great (worldwide!), it costs just 10 EUR (ca. US $10) and it is programmable with the MBHP_BURNER programmer.


How to change the Software

  • Download and unzip the source code
  • Download the free available MPLAB environment from the Microchip site
  • Start MPLAB after the installation
  • Open the filter.pjt project
  • Open the proc.inc file
  • Change it for your needs
  • Start "make project" or just press the F10 button
  • After that, a new main.hex file has been created
  • Burn the new code into the PIC (see the HowToProg page)
  • Test the program with MIDI-OX or your MIDI gear
  • See the PIClist for some further coding examples

Download

Schematic
File Size Description
midifilter.pdf 8k MIDIfilter Circuit
MBHP LINK see also the MIDIbox Hardware Platform
Source Code
filter_v1.4.zip 8k Source Code of MIDI Filter for PIC16F87x-20

This is an older page which describes the PIC16F based MIDIfilter. In the meantime MIDI events can be processed on a much easier way by using the C wrapper of MIOS -> see this page.




Last update: 2023-11-04

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