3 Gordon Drive, P.O.Box 1347 Rockland, Maine 04841 U.S.A.
Find Tools for Your Chip


Subscribe to our Newsletter

© 2004 Avocet Systems, Inc.
Call Us Today at 207-596-0080
Avocet Systems, Inc. : The Complete Solution for Embedded Systems Development Tools

BMD Frequently Asked Questions (FAQs)

What processors do you support with your BMDs?
What do I need to program Flash devices?
I'd like to see a detailed application note about working with the 68HC12 BMD.
I can't get my Flash programming to work.
My BMD will not work. I can't get it to sign on or do anything.
What does "Fatal Error from CFSC. BMD not responding" mean?
Can I change the DER register with my BMD?
The BMD stops on lines of code where no breakpoints were set.
The BMD won't hit breakpoints that are set in Source or assembly code.
Why do you call it a BMD when everyone else calls it a BDM?
Where can I find information about what your BMDs can actually do?
10 pin (Berg) connector diagram and information for CPU32 and 32+ BMD
10 pin (Berg) connector diagram and information for PPC 5xx and 8xx
16 pin connector diagram and information for PPC 4xx BMD
26 pin connector diagram and information for ColdFire BMD
6 pin connector diagram and information for 68HC12 BMD
When I try to start SG2 it gives me insufficient memory under WindowsNT
Will your BMDs work with 5v and 3.3v systems?
Example command files for processor set up (.cmd files)
How do I install a USB-BMD on Windows XP/2000?


What processors do you support with your BMDs?

  • Motorola PowerPC: 801, 821, 823, 850, 860, 505, 509
  • IBM PowerPC: 401GF, 403GA, 403GB, 403GC, 403GCX
  • CPU32: 68330, 68331, 68332, 68333, 68336, 68340, 68376
  • CPU32+: 68349, 68360
  • COLDFIRE: 5202, 5204, 5206, 5206E, 5307


What do I need to program Flash devices?

Flash support was added after version 3.0.0 of SourceGate was released. Therefore, flash programming will not work with version 3.0.0 or earlier. Click here to download the latest beta SourceGate which supports Flash programming.


I can't get my Flash programming to work.

Go to the Flash FAQ page for specific information on Flash programming.


My BMD will not work. I can't get it to sign on or do anything.

Several things could cause this. We will start with the most common problems.

  • BMDs are not standalone boxes like an emulator. You MUST be plugged into a target AND sufficient power applied.

  • Regarding sufficient power. The original version of the BMD was designed to only work with a 5V power source. We modified the design of the BMD to add a Maxim charge pump device that allows proper operation at either 3.3V or5V. The 3.3V voltage is "pumped up" to 5V internal to the BMD, so everything should work fine.

    Some things to keep in mind here. The BMD requires about 1A- 1.2A of current when powered on (for a very short time) while the inductor circuit on this charge pump stores up its energy. The current will then settle down to around 250mA during normal operation. Some Motorola evaluation boards (and other target boards) use an in-line resistor on the Vcc line to prevent over current conditions. Since the BMD draws its power from the debug port on the target board, the drop across this resistor will not allow the needed current to be supplied to the BMD. There are two solutions to this problem.

  • Short out the resistor.
  • Use the 10-pin adapter to connect a 5V external power source to the BMD. Keep in mind that a power supply capable of supplying at least 1.2A is required in both cases.
On new units that are coming out in the future this problem will be eliminated all together with an external Wall Wart.

  • Check the pin out on your debug port and verify connections back to the processor. Also, see the FAQ on the specific processor you are having problems.
  • Typically, a BMD is not a "Plug and play" box. To function on a target board there are several steps that must be taken to get the unit up and running. Aside from the connection and power problems already mentioned, you must set up the chip on your target board to function with a background mode debugger. Specific registers must be set up to allow access to memory and assure the unit is in proper operating modes. Watch dog timers typically need to be disabled and chip select registers need to be set. Click below do display example setup command files (.cmd) for specific BMDs

    To view these files simply click on the link. To download  the file click on the link then select "File" from the top menu bar and "Save as".
View example 1 command file for 68332
View example 2 command file for 68332
View example 3 command file for 68332
View example 1 command file for 68360
View example 1 command file for PPC 860 ADS Board
View example 1 command file for PPC 860
View example 1 command file for PPC 823
View example 1 command file for PPC 505
View example 2 command file for PPC 505
View example 1 command file for PPC 40x w/ SRAM
View example 1 command file for PPC 40x w/ DRAM
View example 1 command file for COLDFIRE 5204
View example 1 command file for 68HC12

Also see next question "What does 'Fatal Error from CFSC. BMD not responding' mean?"


What does "Fatal Error from CFSC. BMD not responding" mean?

The BMD is not responding to SourceGate. The following is a list of what might cause this.

  1. The BMD is simply a communications device which takes advantage of debug capability designed into the target system's processor. In order for the BMD to work, it MUST be connected to a target system which has a working processor installed.
  2. The BMD draws its power from the target system. The BMD draws approximately 250mA during normal operation, but may temporarily draw as much as 1A when power is first applied. Many target systems designers place a current-limiting resistor in the Vdd path, which can prevent the BMD from being able to draw enough current to operate properly. In many cases, the easiest solution is to bypass this resistor; however, if you do not wish to do this, HMI includes an adapter with the BMD which allows you to provide an external power source.
  3. Check the connections between the host computer, the RS-232 cable, and the BMD.
  4. Make sure that you specify the correct COM port in SourceGate's startup command. This is a common problem as many computers do not have their COM ports labeled. See "How do I change the SourceGate's communications parameters?" for more information.
  5. Try running at a different baud rate. It is rare, but we have seen a few cases where the a computer would not be able to communicate with the emulator at a specific baud rate. The allowable rates are 9600,19200,38400, 57600, and 115200.
  6. If you still can not establish communications with the BMD, contact HMI Technical Support.


Can I change the DER register with my BMD?

The DER register is specifically excluded from those registers presented to the user. Changing it MAY interfere with SourceGate's use of the register. In general, ALL debug type registers are hidden form the user as some are at times used by HMI's DLLs. This doesn't mean that all debug registers cannot be changed but shouldn't be unless totally necessary.


The BMD stops on lines of code where no breakpoints were set.

This problem was reported from a customer using the "Radio Parts Co. RPXLite board. The problem was the "debug monitor" already programmed into the FLASH of the board was enabling the "Register lock" mechanism of the MPC860 (See page 11-11, section 11.4.5 in the new MPC860 User's Manual).
You must add code to your application to write 0x55CCAA33 to the following registers:
TBSCRK, TBREFAK, TBREFBK, TBK, RTCSCK, RTCK, RTSECK, RTCALK, PISCRK, PITCK, SCCRK, PLPRCRK, and RSRK.

This change corrected several instances where the BMD would stop on lines of code where no breakpoints were set.


The BMD won't hit breakpoints that are set in Source or assembly code.

One possibility is where you are starting code execution from. If you have a breakpoint set in your source or assembly file, you MUST start program execution from a source or assembly window. You cannot start from the command window (using the "g" command) or from the emulator status window.


Why do you call it a BMD when everyone else calls it a BDM?

The units are "Background Mode Debuggers", hence BMD. It just isn't right to call them "Background Debug Mode" debuggers ?? (BDM or should be BDMD??), a bit redundant isn't it?


Where can I find specific information about what your BMDs can actually do?

Specific information about our BMD's capabilities can be found on our BMD Datasheets.


10 pin (Berg) connector diagram and information for CPU32 and 32+ BMD.

  • The RED wire on the connecting cable is pin 1.
  • All pins are 0.10" spaced
  • If the target board has an 8 pin BMD connection, then those pins connect to pins 3-10 on HMI's 10 pin Berg connector.
  • If 8 pin connection is used we cannot terminate bus cycle.
  • We recommend placing a pullup (4.7k works well) on on your target for DSCLK, DS, RESET and BERR.

10 pin (Berg) connector diagram and information for PPC 5xx and 8xx.

PPC BMD Connector

  • The RED wire on the connecting cable is pin 1
  • All pins are 0.10" spaced


16 pin connector diagram and information for PPC 4xx.

4xx BMD Connector

  • The RED wire on the connecting cable is pin 1
  • All pins are 0.10" spaced


26 pin connector diagram and information for COLDFIRE BMD.

COLDFIRE BMD Connector

  • The RED wire on the connecting cable is pin 1
  • All pins are 0.10" spaced


6 pin connector diagram and information for 68HC12 BMD.

68HC12 BMD Connector

  • The RED wire on the connecting cable is pin 1
  • All pins are 0.10" spaced

External Clips:

  • The Black clip connects to Ground for reduced noise effects.
  • The Violet clip connects to the E-Clock(ECLK/PE4 pin of the target's CPU) Note: You cannot turn off ECLOCK while using the BMD. The ECLK/PE4 pin must be used as the ECLK, and requires the NECLK bit(bit 4 of the PEAR register) be set to '0', and that either the IVIS bit(bit 3 of the MODE register) be set to '1', or the ESTR bit(bit 4 of the MODE register) be set to '0'. The HMI 68HC12 BMD will set the target CPU to the correct values at reset. If it is not possible to run in this configuration, the user can supply a separate clock of the same frequency.
  • The Orange clip should be attached to the target system's MODA signal.
  • The Red clip should be attached to the target system's MODB signal.


When I try to start SG2 it gives me insufficient memory under WindowsNT...

  • Download the latest Beta Version of SG2. We have not been able to duplicate this problem. However, in one case upgrading to our latest beta corrected the problem. This could mean one of two things; the disk or files were bad and simply downloading new files fixed the problem, or something got corrected by default on the beta software. Whichever, it corrected the problem. These files can be downloaded from our Software Downloads page.

  • SG2 is a Win31 application as seen by WinNT. Be sure NT is supplying sufficient memory allocation for Win31 applications.


Will your BMDs work with 5v and 3.3v systems?

  • The original version of the BMD was designed to only work with a 5V power source. We modified the design of the BMD to add a Maxim charge pump device that allows proper operation at either 3.3V or5V. The 3.3V voltage is "pumped up" to 5V internal to the BMD, so everything should work fine with either voltage.
  • Some things to keep in mind here. The BMD draws its power from the target system if not external source is introduced. The BMD requires about 1A- 1.2A of current when powered on (for a very short time) while the inductor circuit on this charge pump stores up its energy. The current will then settle down to around 250mA during normal operation. Some Motorola evaluation boards (and other target boards) use an in-line resistor on the Vcc line to prevent over current conditions. Since the BMD draws its power from the debug port on the target board, the drop across this resistor will not allow the needed current to be supplied to the BMD. There are two solutions to this problem.

    1. Short out the resistor.
    2. Use the 10-pin adapter to connect a 5V external power source to the BMD. Keep in mind that a power supply capable of supplying at least 1.2A is required in both cases.

    On new units that are coming out in the future this problem will be eliminated all together with an external Wall Wart.


Example command files for processor set up.

Typically a BMD is not a "Plug and play" box. To function on a target board there are several steps that must be taken to get the unit up and running. Aside from the connection and power problems already mentioned, you must set up the chip on your target board to function with a background mode debugger. Specific registers must be set up to allow access to memory and assure the unit is in proper operating modes. Watch dog timers typically need to be disabled and chip select registers need to be set. Click below do display example setup command files (.cmd) for specific BMDs.
To view these files simply click on the link. To download  the file click on the link then select "File" from the top menu bar and "Save as".
View example 1 command file for 68332
View example 2 command file for 68332
View example 3 command file for 68332
View example 1 command file for 68360
View example 1 command file for PPC 860 ADS Board
View example 1 command file for PPC 860
View example 1 command file for PPC 823
View example 1 command file for PPC 505
View example 2 command file for PPC 505
View example 1 command file for PPC 40x w/ SRAM
View example 1 command file for PPC 40x w/ DRAM
View example 1 command file for COLDFIRE 5204
View example 1 command file for 68HC12


How do I install a USB-BMD on Windows XP/2000?
  1. Put SourceGate II CD into CD Drive. The installer should start automatically. If not, go to your CD drive in Windows Explorer and double-click on Setup to start installer.

  2. Go through installer, selection the 32-bit install, and clicking on appropriate check marks for the processor you are using. When SourceGate completes it's install it will prompt you to restart. Click on Yes.

  3. After Windows XP has restarted, FIRST power up the BMD, AND THEN connect the USB connector to an open USB port on your PC.

  4. Windows will detect new hardware and start the "Found New Hardware Wizard". Select "Install the Software automatically" (the "Recommended" choice). Ignore the popup warning about Windows Logo testing by clicking on "Continue Anyway". Finish Hardware Wizard.

  5. Reboot, leaving BMD powered and connected to PC.

  6. Windows may again detect new hardware. If that is the case, Repeat Step 4, then Step 5.
Some customers have reported issues during installation on XP/2000 which we have not been able to duplicate after extensive testing. If you are having trouble running the USB-BMD after installation please consider the following:
  1. Try uninstalling SourceGate and reinstalling according to the steps above, but this time try installing into the default directory given during installation (C:\hmi\sg40132).

  2. If SourceGate seems to stop during initialization of the BMD, or if you receive a "there is no USB device connected..." error, please make sure both the BMD and target are powered up, and that the USB cable is connected to your PC as well as to the BMD.

  3. With the USB-BMD connected to the PC, with the BMD and target powered up do the following: a) Go to the Hardware Device Manager in Windows by right clicking on My Computer on your Desktop and selecting "Properties". b) Then click the "Hardware" tab and click the "Device Manager" button. c) In the main menu at the top of the window, select View->Devices by Type. d) Click on the plus sign next to "Universal Serial Bus Controllers to display all the USB devices on your machine. The HMI USB BMD should appear there, and there should NOT be a yellow exclamation mark next to it. If it does not appear there, double check that the BMD and target are powered up and the BMD is properly connect to the PC. If there is a yellow exclamation mark next to the HMI USB BMD, right click on the HMI USB device and select "Update Driver" and choose "Install the Software automatically" (the "Recommended" choice). Ignore the popup warning about Windows Logo testing by clicking on "Continue Anyway". Reboot after completing the installation.

  4. Try disconnecting any other USB devices (such as scanners, PDA cradles, etc) from your machine and rebooting.

  5. Try connecting the USB cable to a different USB port on your machine if one is available, preferrably into a known good port. Please note that the USB-BMD drivers are installed an a particular USB port, so anytime the USB-BMD is plugged into a USB port to which you have not installed the drivers, you will be prompted to do so.

  6. Confirm that USB support is enabled on your machine by entering your computer's BIOS and (this varies according to the BIOS vendor) setting the "USB Interface" field under "Peripheral Configuration" or "Advanced Setup" or "PCI Control" to enabled. Note that your BIOS may not offer any selection even though USB is supported on your machine. This is true of some current Dell machines for example.

  7. A customer reported being able to use the USB-BMD after changing his USB setting in his BIOS from USB 2 to USB 1. This step is a last resort as it may affect other USB devices on your machine.

    If SourceGate still does not start up correctly, please submit a support ticket to http://support.avocetsystems.com with the following information (in addition to the information requested on that page such as serial number, model number, etc):

    - Attach a copy of the "Setupx.txt" file from the SourceGate installation directory ("x" being the number of attempted installations).

    - Describe precisely what occured during each of the above steps, what error messages were encountered, etc