Raymond PMC10 Editor

last update: 2008.12.29

contents

general
raymond frequently asked questions
PMC10 frequently asked questions
PMC10 performance/response note
raymond version history
raymond known issues and caveats
PMC10 info on the web
PMC10 Manuals
tips
phantom power for the PMC10
credits

general >>

Raymond is an editor for the Digitech PMC10 MIDI foot controller. It works by receiving full memory dumps from a PMC10 (or opening a sysex file from disk), allowing you to modify the data and then sending the entire chunk back to the device (and/or saving to disk). Whenever you upload changes made by Raymond, no matter how small a change you've made, the entire dump is sent back to the device (modifying a patch and then doing an upload results in the upload of all patches, banks, sets, etc). It is assumed that you already know how the PMC10 operates and that you are familiar with concepts like enabling/disabling Sequence Mode in a bank (there's not much hand-holding happening here).

Raymond reads/writes raw binary sysex files (F0...F7). If you were to do a PMC10 memory dump and save it out as a file using a sysex utility like MIDI-Ox, the file would be identical to a file created by Raymond after having received a dump from the same device.

Creation and deletion of patches is done in the patch list on the Patches tab of a document window.
Creation and deletion of banks is done in the banks list of the Banks tab of a document window.
Sets are not created or deleted. There are always 5 sets, though they may be empty.

Edits of patches/banks/sets are initiated by selecting the item to be edited and then either pressing RETURN or double-clicking the item.
Editing of patches can be done in the patch list on the Patches tab or on the Banks tab in the patch list of a particular bank.
Editing of banks can be done in the banks list on the Banks tab or on the Sets tab in the bank list of a particular set. When adding patches to a bank, simply add each patch number on its own line in the patch list that is displayed in the bank edit dialog (do not enter the patch name).
Editing of sets is only done in the Sets tab. When adding banks to a set, simply add each bank number on its own line in the bank list that is displayed in the set edit dialog (do not enter the bank name).
Editing of global system data is done on the System tab by pressing the EDIT button in the lower right corner.

Pressing INSERT on a patch or bank position that is currently empty/unused will create a new patch or bank at that position (INSERT on a non-empty patch or bank has no effect). Pressing RETURN or double-clicking an empty/unused item position will also create an item at that position.
Pressing DELETE on a patch or bank will delete the data for it and turn it into an empty/unused patch or bank (DELETE on an empty/unused patch or bank has no effect). Banks and sets will be automatically updated if they contain a patch or bank that was deleted.

Pressing Shift+INSERT on a patch or bank position will shift all patches/banks from the current one to the end down one position and then create a new patch/bank at that position. If there is data in the very last position, it will be lost (ie patch 500/bank 99 will scroll off the end).
Pressing Shift+DELETE on a patch or bank position will delete the current one (whether it is empty/unused or non-empty/used) and then shift all the subsequent ones up one position (adding a new empty patch/bank at the end).

When using Shift+INSERT and Shift+DELETE, banks and sets are automatically updated to account for the new positions of patches and banks. The Shift+INSERT and Shift+DELETE commands will operate on both empty/unused and non-empty/used patches and banks.

When creating patches or banks, it is necessary to uncheck the "Hide empty banks and patches" option (as it is by default).

Patches, banks and sets can be copied, one at a time, by pressing Ctrl+C in either the patch, bank or set lists. They may be pasted into the patch, bank or set lists by pressing Ctrl+V. Only non-empty/used patches and banks can be copied. Any set can be copied.

Copying a bank or set does not copy the patches and banks that they reference. This means that if you copy a bank or set from one file to another, they might end up pointing to non-existent patches or banks (banks and sets copied/pasted within the same file will work as expected). Raymond will complain about possible data corruption stating that a bank or set references an invalid patch or bank. You can ignore those warnings while you either modify the pasted bank/set or copy in the missing patches/banks.

Raymond allows you to export plain text listings of patches and banks. The export commands are available in the File menu and in the context menus. There is no prompt for a filename to export to. It automatically creates a filename based on the name of the current file. For example, if you have a file named c:\xyz\myfile.syx then
patch table export will be written out as c:\xyz\myfile_Patches.txt
bank table export will be written out as c:\xyz\myfile_Banks.txt
bank layout export will be written out as c:\xyz\myfile_BankLayout.txt

Subsequent exports will overwrite the same file without prompting. You can open the text files in an application like Word or Excel and format the content to your heart's desire. The exported bank layout text file is best viewed with a fixed-width font like Courier (so that the columns line up correctly). For ease of import into a database, you can enable the "Tab-delimit exported tables" option (this option only affects the Export Bank Table and Export Patch Table commands). For better readability, you can enable the "Force mixed case patch and bank names in exports" option (affects all three export commands). Raymond will make an effort to only capitolize the start of words (since PMC10 patch and bank names have no lower case letters).

raymond frequently asked questions >>

Is it possible to use Raymond without the PMC10 remote control?
Will Raymond work on a Mac?
Why does Raymond fail to start on Windows 95 (frame error)?
What's with the MIDI Help fields in the Raymond options/preferences (or the MIDI Help button in the patch editor)?
What's with the MIDI Hex Calc button in the Raymond patch editor?
Where did Raymond's name come from?

Is it possible to use Raymond without the PMC10 remote control?
By default the PMC10 won't listen for sysex dumps unless the Device Channel parameter has been stored. If you have not reset the PMC10, and if there's a possibility that the Device Channel has been set to any value other than "none" by someone else, then you could try uploading a dump on every channel to see if it sticks. In Raymond, on the System Config page, click edit and then change the Device channel item. Try each value (1-16) and attempt to upload after each edit. Watch the PMC to see if it sticks. Without the remote, you will not be able to do dumps from the PMC to the computer (but uploads from the computer to the PMC will work, again, so long as the PMC is set to listen on a particular channel). Also, you will not be able to properly calibrate the external expression pedals - but you could do this by trial and error from Raymond (also on the System Configuration page). See PMC10 info on the web for links to articles that describe how to build a parallel port to PMC10 interface.

Will Raymond work on a Mac?
If you are using Windows emulation software on a Mac, you need to ensure that you have comctl32.dll version 4.71 or greater (see Why does Raymond fail to start on Windows 95?). If you can't send/receive MIDI in your Windows emulator, use a Mac sysex program to handle the dumps. Raymond reads/writes raw binary sysex files (not sysex saved in an SMF).
If you don't have a Windows emulator, then Raymond won't work for you. Try Unisyn by Mark of the Unicorn. It comes with a PMC10 profile.

Why does Raymond fail to start on Windows 95 (frame error)?
If you are using Windows 95 or Windows emulation software on a Mac, you need to ensure that you have comctl32.dll version 4.71 or greater. You can get the comctl32.dll update in Microsoft KnowledgeBase article Q186176.

What's with the MIDI Help fields in the Raymond options/preferences (or the MIDI Help button in the patch editor)?
The MIDI Help button will launch a Windows Help file of your choice. The file is specified in the options/preferences dialog. Set the full path of the .hlp file. You can also set a particular topic that should be opened. For example, if you use the Windows Help file that is distributed with Raymond you would input something like "C:\Program Files\Raymond\Miditech.hlp" and a topic of "Tables". Then when editing the MIDI strings of a patch, you can click on "MIDI Help" for a quick MIDI reference guide. If you don't close the Help window, Raymond will close it for you at exit.

What's with the MIDI Hex Calc button in the Raymond Patch editor?
The button will launch a small utility application. Subsequent presses of the button will bring it to the foreground if it is still running, otherwise Raymond will launch it again. If the app is still running when you exit Raymond, it will exit also. The executable is MIDIHexCalc.exe and should be located in the same directory as Raymond.exe.

Where did Raymond's name come from?
The first version of this app only did backups. It was originally called PMCBackup. My wife volunteered to put together a couple html pages for distributing it, but she balked at the name. She said it needed a better name, so who was I to argue? I described what it did and somehow we went from elephant-related names (due to the popular notion that elephants never forget) to the movie Rain Man in which Dustin Hoffman plays a character by the name of Raymond who has an uncanny ability to store and recall bits of mathematical information (card counting, etc).

PMC10 frequently asked questions >>

Why won't my PMC10 do a memory dump?
Why won't my PMC10 accept a dump I try to upload to it?
How much memory will the PMC10 have available after I upload a sysex dump?
Will Digitech repair my PMC10?
What was the last ROM version available for the PMC10?
Can I update my PMC10 ROM?
The buttons on my remote programmer have stopped working properly (they don't fire or they double-fire). What should I do?
Any known causes of PMC10 memory corruption?
What kind of battery does the PMC10 use?
After changing batteries and restoring a backup, I get the "All banks empty" message. What gives?
Can I buy a remote controller from Digitech?
I'm experiencing slow response with certain patches.
Can I make my own remote?
Will the remote controller for the Digitech DSP256 work with the PMC10?
Will the SR-1, the remote controller for the Digitech IPS-33b, work with the PMC10?
Any info on replacement switches?

Why won't my PMC10 do a memory dump?
  1. It's been reported that sparse population of the patch and bank lists sometimes seems to cause problems. Keeping patches and banks grouped together seems to help with dumps (that is, don't add patches leaving gaps of empty/unused patch slots). (courtesy of Miko Biffle via Chris Muir).
  2. Many, if not all, PMC10s will lock up when trying to start a memory dump if there is less than about 14KB of memory free in the device. If you have more exact numbers please let me know. Note that dumps to the PMC10 will still be successful even though after a certain point, you can no longer dump from the PMC10 back to the PC. When using Raymond, once your .syx file is larger than about 30KB, you may start to experience failures trying to dump the file back to the PC after you've uploaded it to the PMC10.

Why won't my PMC10 accept a dump I try to upload to it?
  1. If your PMC10 has recently been reset, make sure that you set the PMC Channel to some value other than none. The PMC10 will only transmit and receive PMC10 SysEx data when the PMC10 Channel is set to a value 1-16 (not none).
  2. Sometimes if the data you've created in Raymond is larger than some size, the PMC10 will fail to accept it when you try to upload.
  3. It might be that Raymond is sending the dump too quickly for the PMC10 to process it. Try adjusting the delay and buffer settings in the MIDI Settings group of the Raymond Preferences Dialog (default is 60ms wait between each 256 byte buffer).
  4. Some MIDI port drivers don't handle sysex properly (for example, the Turtle Beach Multisound Windows NT 4.0 drivers made by Sonic Foundry).
How much memory will the PMC10 have available after I upload a sysex dump?
Here's a formula for roughly determining the available memory after a sysex upload:

32767 - (fileSize * .65) = PMC10 available memory

where fileSize is the size in bytes of the sysex file or the number of bytes that is transmitted by Raymond during the upload.

Will Digitech repair my PMC10?
According to a post by Gary Lehmann on the Looper's Delight mailing list on Sep 4 2001, Digitech repair in Sandy, Utah will refurbish PMC10s for $85. Most parts, but not all, are available for the job.

What was the last ROM version available for the PMC10?
2.1. You can identify the version by holding down the 7 footswitch when powering up (see next question if you don't have 2.1). The original Digitech eprom is an AM27c512. If you're burning your own copy, an M27c512 works and probably any 27C512 will as well. (courtesy of Claude Voit)

Can I update my PMC10 ROM?
Last I heard (summer of 2001 courtesy of John Cooper), yes for about $35.00. Contact Digitech customer support. They'll direct you to the parts department at Harman International. You'll be looking for part number 72-3070-10V2.10 PMC10 EPROM Software.

If you can burn your own EPROM, then you can download a 2.1 image from the files section of the PMC10 Yahoo group.

Another option is to purchase through a third-party.

The buttons on my remote programmer have stopped working properly (they don't fire or they double-fire). What should I do?
This is usually the result of dirty contacts inside the remote.

One solution is provided by Claude Voit:
  1. Get some graphite paint that is used by TV repairmen to re-shield TV tubes (I used leftovers from a graphite spray can that was used to shield the control cavity of my electric guitars)
  2. Open the remote with care
  3. With a towel or q-tips and some 90% alcohol, clean the contact surface of the rubber buttons and the pcb
  4. Spray some graphite on a piece of paper
  5. Take a little stick and apply some paint on each of the recessed discs that are inside the rubber buttons
  6. Repeat after it dries
  7. Close the remote
Another solution and additional info is provided by Gary ("talisman1111"):
The best way I've found to refurbish the hand-held programmer is to use a good contact cleaner-conductivity enhancer. The best I've found is Caig's Deoxit D5. You can buy it directly from their website.

Be sure to get the stuff that's a 5% solution, and not the full strength stuff, which is harder to use correctly. If you don't already have some of this you should get some. It's by far the best electronic cleaner I've found...spray it in scratchy pots, clean your cable connectors, ribbon connectors, you name it. And of course, it works a treat on these programmers.

After you've removed the back of the programmer and removed the four screws that hold the circuit board in, you can remove it and separate it from the rubber push-button pads.

Never clean the contacts on the board with anything abrasive,including erasers and scouring pads...this only removes the plating on the contacts, roughens them (which then wears out the conductive pads on the buttons faster) , and makes the unit more likely to deteriorate in the future. Likewise, never clean the conductive pads inside the rubber pushbuttons with any cleaners or liquids, as this will likely only contaminate them and hasten their demise.

Use a small soft clean brush (like a cheapie artist's brush) to completely remove any dust or particulate debris that has accumulated inside the buttons and on these pads. You can also use clean compressed air, like the canned air you can buy to clean computer keyboards, to finish up the job. Make sure to hold the can level when you spray, so you don't spray the pads with the freezing cold liquid.

I spray a little (it doesn't take much) of the Deoxit on a piece of old, clean t-shirt material (or any fairly lintless cloth) and carefully polish the contact area of the circuit board with the Deoxit, then wipe it off with a clean cloth. I will usually repeat this process once or twice. The Deoxit D5 has the cleaner and contact enhancer suspended in a fast-evaporating carrier that will leave just the right amount of protection behind. Use the cloth, don't just spray the board!

Reassemble the unit, and if it hasn't been too damaged by any previous cleaning methods, you will be rewarded with a nicely-working programmer. These units aren't hermetically sealed, so debris will eventually find it's way back in, the contacts will tarnish and you'll need to do this again. I clean mine maybe once or twice a year, and it works as well now as it did when it was new (14 years ago).
Any known causes of PMC10 memory corruption?
One scenario is a failing battery. Ed Drake reports that he was having some memory corruption issues and changing the battery solved those problems (see next question).

What kind of battery does the PMC10 use?
The battery is an Eveready/Energizer Industrial EN133A 4.5V, and they were used in older computers and cameras and run about $12 a piece. The battery will eventually need replacing. They can last up to 10 years, they average 5 or 6. Alternative types are A21, A133, 523, PX21, EN133A, PC133A, A21PX, 3LR50, 3MR50, Varta V21PX, RX21 and RPX21. Some sources of batteries follow. (thanks to Bernhard Wagner.)
After changing batteries and restoring a backup, I get the "All banks empty" message. What gives?
If you change batteries and then restore a backup, you might get the "All banks empty" message when you press Inc/Dec. Then you're stuck in a some mode and the display goes blank after awhile. It seems that the problem is some flag is reset and the pmc "thinks" there are no banks although you can see them when you Select/Change banks.
The workaround is to select Set 1 or 2 with Select/Set and you'll be back in business. (courtesy of Claude Voit)

Can I buy a remote controller from Digitech?
No (as of 1999).

Can I make my own remote?
Certainly. Here are the schematics. Also, check out these parallel port to PMC10 cable instructions.

Will the remote controller for the Digitech DSP256 work with the PMC10?
Yes. It has the same form factor as the PMC10 remote, but the button labels will be incorrect, so you'll need to refer to the PMC10 manual to see what the buttons really do.

Will the SR-1, the remote controller for the Digitech IPS-33b work with the PMC10?
Yes per Gary Lehmann.

Any info on replacement switches?
The buttons used in the PMC-10 are made by OMRON and their part number is B3F5000. This is what they consider the long-life version of this part. They also make a better high-reliability one with gold contacts: part number B3F5001.

You can order these from Mouser (part number 653-B3F-5000) or Digikey (part number SW800-ND).
(Courtesy of Gary "talisman1111")

It also looks like they might be available directly from the Digitech Factory Outlet Store, along with the black plastic footswitches too. In the switches section, it looks like the 44-0032 light touch switch is the one used in the PMC. In the misc section, it looks like the 24-0019-B black actuator will work in the PMC. This has not been confirmed though!

PMC10 response / performance note >>

The earlier a patch is in the list of all available patches, the faster it is recalled and sent when you press the pedal. The more patches there are in your unit, the longer it takes for the ones at the end of the list to "fire" when called upon.

If you don't have many patches in your unit then this doesn't become a problem. However, if you have it loaded with lots of patches, the ones at the end of the list will exhibit a noticeable delay between the pedal being pressed, and the midi data actually being sent.

The moral: keep your patch list as short and compact as possible (weed out those old, unused patches and eliminate any dead spaces in the list) and place any time-critical patches at the very front of the list. Put your least time-critical patches at the end of the list. (Courtesy of Gary "talisman1111")

raymond version history >>

Version 2.5.1 - 2007/09/08
- Added Export to XML command (to support mTroll)
- Fixed update check

Version 2.5.0 - 2004/10/31
- Displays controller names in some windows
- Reordered expression pedal flags so that Enable/Disable is first (duh)
- In patch editor, pressing either Test String button causes update of string windows
- MIDIHexCalc remembers state of auto-copy setting
- Fixed premature exit if last loaded file no longer exists
- Updated contact and download URLs
- Added Windows XP Theme support

Version 2.4.3 - 2002/09/18
- Fixed command-line processing so that files can be opened from Windows Explorer
- Added option to automatically reload the last opened file at startup (command-line specified file takes precedence)
- Made Bank/Sequence Dialog larger
- Renamed Upload and Download menu items (Upload to PMC10, Download from PMC10)
- MIDI Technical Reference help file now included in distribution thanks to Jim Johnson

Version 2.4.2 - 2002/03/31
- Added low-level midi buffer settings
- Fixed context menus in config and hex views
- Reorganized preferences dialog

Version 2.4.1 - 2002/02/09
- Made byte sequence descriptions in patch MIDI strings optional
- Added delete, insert, shift+delete and shift+insert to menus

Version 2.4.0 - 2001/11/04
- Added export bank table to text file
- Added export patch table to text file
- Added export bank layout to text file
- Made MIDI string edit fields more forgiving of blank lines
- Fixed failure of Alt+W to open the Window menu when in the Config view
- Added recycle on save option

Version 2.3.2 - 2001/09/30
- Fixed incorrect data parse error that would occur if a sequence mode bank was encountered that contained more than 100 steps
- Fixed file drag and drop
- Fixed crash that sometimes occurred when doing uploads of more than 20KB and the PMC10 MIDI out was connected to the computer MIDI in
- Fixed display of asterisk in file titles
- Prevented patch list position reset after data modification

Version 2.3.1 - 2001/09/19
- Fixed last minute flicker 'optimization' that resulted in invalid screen states after Delete and Paste

Version 2.3.0 - 2001/09/15
- Added copy/paste support
- Added a separate utility for building hex command strings
- Changed the way INSERT and DELETE operate
- Added Shift+INSERT and Shift+DELETE operations
- Added comments in the patch MIDI strings windows that describe the hex commands
- Reworked the Bank and Set edit dialogs
- Added this html file

Version 2.2.0 - 2000/06/16
- Vastly improved data integrity checks and error messages
- Changed default file extension from .sys to .syx so that files aren't hidden under default Windows Explorer configurations
- Added small token help window
- Fixed corrupt download problem experienced on Win98

Version 2.1.1 - 2000/02/19
- Fixed bug that caused patches to disappear after a patch was deleted if there were more than 127 patches
- Allow tab key to skip over Sequence Mode in Bank View
- Added more string validation when naming patches and banks
- Allow creation of patch on selected unused patch slot (when "Display unused banks and patches" is enabled)
- Made patch editor more vip* friendly
- Made display of hex dump faster
- Fixed saving and displaying of redundant program change filter setting
*vip = visually impaired person

Version 2.0.7 - 1999/09/15
- Patch, Bank, Set and Configuration editors
- INSERT key creates patches and banks
- DELETE key removes patches and banks
- ENTER key or double-click edits Patches, Banks and Sets
- lots of other minor changes

Version 1.0.0 - 1999/02/21
- First Release
- Read-only viewing of Banks, Patches and System data

raymond known issues and caveats >>

PMC10 info on the web >>

PMC10 Users Yahoo Group
Raymond PMC10 Editor
The latest version of this document can be found here
An old version of a PMC10 user manual at Digitech in pdf format
PMC10 parallel port interface instructions prepared by Bernhard Wagner
A good MIDI documentation source
Schematics for the PMC10

PMC10 Manuals >>

There are at least three user documents that Digitech produced for the PMC10 that I'm aware of: The manual available at Digitech's website is a pdf of PMC10 Rev 1.

tips >>

phantom power for the PMC10 >>

If you have anything in your rack that is capable of sending phantom power via a MIDI cable (like a Mesa/Boogie Triaxis or some Rocktron equipment), you might want to power your PMC10 using that.

Unfortunately, the PMC10 only has a 5 pin MIDI out connector - phantom power usually requires a 7 pin connector. Rocktron sells a 7 pin to 5 pin + barrel adapter MIDI cable (RDMH900 5 to 7 Pin MIDI Cable).

The problem with this cable is that the barrel plug is female, so you need to either hack it up and replace it with a male adapter or jury-rig an adapter. I did the later using the following parts from Radio Shack:

(2) 2731717 Adaptaplug-N (this was a tad too small but haven't bothered to swap it out)
(1) 2731740 Adaptaplug power cord (which I cut to a very short length)

There are a lot of phantom power solutions out on the web. John Sheehan has written an article about supplying phantom power to MIDI pedalboards in MIDI Phantom Power 101.

credits >>