Page 1 of 5

Cheaper alternative to PIC18F2550

PostPosted: Thu Apr 23, 2009 1:21 am
by dmitri
(Updated on 23/07/2011 with versions which improve handling of incoming MIDI messages)

(Updated on 21/04/2011 with versions which support switching to higher MIDI speeds to reduce latency when used in MegaDrum over USB only)

(Updated on 20/02/2011 with versions which support 2 MIDI interfaces. With 2 MIDI interfaces it is possible to use one to configure MegaDrum and another to be used by any MIDI software.)

First, this is an archive which includes firmware files for PIC18F2550/PIC18F2450(4/8/12/16/20MHz) and PIC18F14K50/PIC18F13K50:
PIC18F USB MIDI firmware.zip


PIC18F2450 is almost two times cheaper than PIC18F2550. It is pin compatible with PIC18F2550 so can be used as a direct replacement.
I've tested it and it works fine. I didn't try to program PIC18F2450 using ICSP cable but I think it can be programmed with it just as well.

Microchip also produce PIC18F14K50 and PIC18F13K50 which are more then two times cheaper than PIC18F2550. I've adapted the PIC18F2550 USB MIDI firmware for PIC18F14K50/PIC18F13K50. When tested they both work exactly like PIC18F2550/PIC18F2450.
This is the schematic:
PIC18F14K50 MIDI USB small.png

PIC18F14K50 MIDI USB.pdf


This is the source code:
PIC18F MIDI USB source.zip


I should point out that the part of the source code written by me is provided under GPL license.
It is sad I had to mention it since there already has been an incident of publishing/using this code under
other names without acknowledgement of/reference to the original author.


I didn't try to program PIC18F14K50/PIC18F13K50 using ICSP cable but it should work provided WinPic (or any other programmer) supports it. Make sure that pins 18 and 19 are not connected to D+/D- of USB when you program PIC18F14K50/PIC18F13K50 since these pins are used for both programming and USB.

Re: Cheaper alternative to PIC18F2550

PostPosted: Fri Apr 24, 2009 12:01 am
by dmitri
I've added firmware for PIC18F2450 in the first post of the topic and updated the source code.

Re: Cheaper alternative to PIC18F2550

PostPosted: Fri Apr 24, 2009 2:14 pm
by Ken Forgettable
So you expect this code will work for a Synthex v2.8 board with pin 26 of the 18F2550 tied to ground through a 47K resistor?

Re: Cheaper alternative to PIC18F2550

PostPosted: Fri Apr 24, 2009 2:55 pm
by dmitri
Ken Forgettable wrote:So you expect this code will work for a Synthex v2.8 board with pin 26 of the 18F2550 tied to ground through a 47K resistor?

If you're asking about PIC18F2450, yes, it will.

Re: Cheaper alternative to PIC18F2550

PostPosted: Fri Apr 24, 2009 10:12 pm
by dmitri
Added firmware for PIC18F13K50 which is even cheaper than PIC1814K50. I believe it is impossible to go any cheaper than this with USB MIDI (not taking in account SMD packaging or integrated solution as described in http://www.megadrum.info/forums/viewtopic.php?f=3&t=447 but it is SMD as well so not very DIY friendly).

Re: Cheaper alternative to PIC18F2550

PostPosted: Sat Apr 25, 2009 12:58 am
by Ken Forgettable
Yowsa! Missed this thread all together (but can't seem to find the nxp2148) :o

Re: Cheaper alternative to PIC18F2550

PostPosted: Thu Jan 21, 2010 7:28 pm
by dmitri
I should point out that the part of the source code written by me is provided under GPL license.
It is sad I had to mention it since there already has been an incident of publishing/using this code under
other names without acknowledgement/reference to the original author.

Re: Cheaper alternative to PIC18F2550

PostPosted: Fri Sep 17, 2010 3:28 pm
by silnangmarak
So then could you please compile the Firmware for PIC 18F4550 and make the necessary changes to the schematics also! I've no idea to do it myself.

Re: Cheaper alternative to PIC18F2550

PostPosted: Fri Sep 17, 2010 4:06 pm
by dmitri
Get PIC18F2550 or PIC18F2450. They are cheaper.

Re: Cheaper alternative to PIC18F2550

PostPosted: Sun Feb 20, 2011 9:27 pm
by dmitri
I just updated the first post with a new USB MIDI firmware version which supports 2 MIDI interfaces. With 2 MIDI interfaces it is possible to use one to configure MegaDrum with MegaDrumManager and another to be used by any other MIDI software.