What IDE and BDM emulator for a coldfire MCF4207 EVM board? - Page 1
Forum section: electronics / general

author: marcopolo
author_rank: Regular Contributor
timestamp: September 26, 2015, 01:55:30 pm
content: Hi,I just bought a M5407C3 board.It is a Coldfire EVM board for the MCF5407 with a 26-Pin BDM connector.What is the best solution to develop and debug software (ASM and C) for this board?Thanks,Marc

author: ale500
author_rank: Frequent Contributor
timestamp: September 28, 2015, 09:41:40 am
content: You need a BDM adaptor. The best solution may be Lauterbach's tools but they are really expensive > 1000 $.You can still buy this:http://elmicro.com/de/cobraconnect.htmlbut you need a Parallel port ! for it...Some years ago I tried to do my own BDM adapter based on a Parallax Propeller. It worked: I could modify memory, registers, and take the processor to run... but it never started fetching... I may have forgotten to connect some pin (I went through all pins but something was still missing) but I never found out which one. It was for the MFC5206E.I can post the code and schematic if you want.

author: nctnico
author_rank: Super Contributor
timestamp: September 28, 2015, 10:14:15 am
content: PE Micro has a whole range of USB BDM adapters (these don't work on my new PC though so caveat emptor). Better contact their support to ask which adapter you need because their website is totally unclear on that.

author: marcopolo
author_rank: Regular Contributor
timestamp: September 28, 2015, 07:30:00 pm
content: Hi guys,Thanks for the information.I bought my EVM board for 10 €, I want to discover the Coldfire and maybe build a few boards with this MCU.But I'm not ready to spend a lot for that. For now, I see 2 solutions:- USBDM + GNU tools- GNU Tools with gdb target dbugWhat do you think?

author: nctnico
author_rank: Super Contributor
timestamp: September 28, 2015, 09:59:54 pm
content: The last time I looked at Coldfire I send the EVM board back and made the sales rep say sorryFreescale just isn't good with providing an easy programming solution for their non-ARM cores (assuming their ARM controllers all have JTAG).

author: legacy
author_rank: Super Contributor
timestamp: September 29, 2015, 01:28:27 am
content: Quote from: ale500 on September 28, 2015, 09:41:40 amyes, please, It could help me with MC68332

author: ale500
author_rank: Frequent Contributor
timestamp: September 29, 2015, 09:19:33 am
content: I have been looking for the code for hours... no dice. I can't believe I somehow delete it. But the original thread on the propeller forums is still active, with code and pictures. I still have the boardsThe MC68332 has a similar, better documented, BDM protocol. But they are not the same, the Coldfire's is an evolution, so to say.http://forums.parallax.com/discussion/129934/coldfire-bdm-with-the-propHappy coding !

author: marcopolo
author_rank: Regular Contributor
timestamp: September 29, 2015, 11:22:40 am
content: Quote from: nctnico on September 28, 2015, 09:59:54 pmLike you, I'm tired of trying to find solutions to develop with Freescale MCUI had the same problem with their dual-core DSPAnd the MCF4207 are very expensive ($40), not good for DIY projects.If someone is interested, the following are available for a swap:- Motorola MCF5407 DigitalDNA Evaluation Board like thishttp://www.ebay.fr/itm/Motorola-MCF5407-DigitalDNA-Evaluation-Board-/281662794819- DSPB56721AF DSP 24-Bit Dual-Core Qty:8 LQFP-80- DSPB56725AF DSP 24-Bit Dual-Core Qty:8 LQFP-80- XC56303PV80 DSP 24-Bit Qty:15- DSP56002PV66 DSP 24-Bit QTY: 40What I'm looking for is here (in French, sorry!):http://www.retronik.fr/marc/Annonces/Recherches.htmlMarc Added XC56303PV80 and DSP56002PV66.

author: legacy
author_rank: Super Contributor
timestamp: September 29, 2015, 03:00:53 pm
content: QuoteI can offer a DSP56001p.s. about DSP, you'd better switch to Blackfin, about MPU to PIC32 (the cheapest solution)

author: marcopolo
author_rank: Regular Contributor
timestamp: September 29, 2015, 03:36:48 pm
content: Hi,Sorry but I already have a DSP56001 eval board and I have had enough of the Motorola/Freescale DSP/MCU (except the 68K family of course!)About DSP, you're right. I have 3 EZKit Blackfin (BF533, BF561) and Sharc (21489) and I'm very happy withAbout MCU, for serious projects I'm using ARM Cortex-M3 or M4 from ST. I never tried PIC32, only dsPIC and PIC18.For the fun, I just bought a AT91SAM9260 evaluation kit. It is a 200Mhz ARM9 chip that you can buy for 3€ in AustriaMarc

author: legacy
author_rank: Super Contributor
timestamp: September 29, 2015, 08:10:53 pm
content: Quote from: ale500 on September 29, 2015, 09:19:33 amyep, I am still working on developing a board, based on MC68332 which is good because of its TPU, and I need the BDM, so thank youp.s.which CAD have you used? your PCB looks well done!have you completed the project? any photo of the final board?about the BDM for MC68332, have you really seen good documentation around?

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 12:25:37 am
content: Quote from: marcopolo on September 28, 2015, 07:30:00 pmdo you have a GDB-stub?I still have do fix the C code of mine, and it was used on MIPS

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 12:36:27 am
content: I have found, in the laboratory inventory, a strange cable called "USB BDM"Tomorrow I will post a few photos with details an I will try to find a P/NWhat is clear to me: I do not need it!

author: ale500
author_rank: Frequent Contributor
timestamp: September 30, 2015, 03:39:36 am
content: Sadly, I couldn't finish the project because I couldn't get the Coldfire to fetch instructions. It was for a university project, I just wanted a better version of what I did with 2 Propellers.I used Eagle to do the layout and many hours of hand-routing.Freescale 9(S)(X)12 uC use also a form of BDM but it is only 1 wire based...

author: andersm
author_rank: Super Contributor
timestamp: September 30, 2015, 05:08:25 am
content: Freescale used to have their own ColdFire USB TAP for CodeWarrior, but I believe it's discontinued. If it's still supported by the tools you could try looking for a second-hand one. There's also various relatedopen-source BDMprojects, though the various dongles you can find on eBay usually only support CFV1.

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 04:10:30 pm
content: Quote from: andersm on September 30, 2015, 05:08:25 amI have checked the lab inventory again and I have discovered thatit's an usb BDM cableit has 26pin flat cablecalled "UNIVELOP ColdFire BDM v1.1" (it's written on the PCB)the little manual says "Supported by CodeWarriror V6.3"supports target VCC from 3.3V to 5V

author: marcopolo
author_rank: Regular Contributor
timestamp: September 30, 2015, 04:39:50 pm
content: Quote from: legacy on September 30, 2015, 12:25:37 amNo, but you can use gdb without a gdbserver or a stub on the target.GDB can talk with the ROM monitor on the target board. It should work with 68K IDP and ColdFire EVM boards.

author: marcopolo
author_rank: Regular Contributor
timestamp: September 30, 2015, 04:47:53 pm
content: Quote from: andersm on September 30, 2015, 05:08:25 amYou're right, I could find a second-hand USB TAP, but I don't have CodeWarriorI saw the project usbdm. For the CFV4 support, you need a bdm to program the usbdm.I hope the usbdm from Ebay can program the usbdm for CFV4.

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 06:18:00 pm
content: Quote from: marcopolo on September 30, 2015, 04:39:50 pmTo run gdb on an embedded execution target, you can of course use a gdb backend with the gdb standard remote protocol or a similar protocolTwo common solutions:a gdb stub, you can download it in ram, or burn your flash with itan existing ROM monitor used as a gdb backend, but in this case you need to add an exception handler for breakpoints, and it must be linked to your applicationUnfortunately neither MON68K (IDP) nor DBUG32 (MC68332) areGDB-protocol compliant, not directlythey could through an "interface" that allows gdb to format and parse commands from/to MON68k/DBUG32from my point of view is more efficient to write a common gdb-stubedit:p.s.if you need the USB_BDM cable I was talking above, let me know before I put it on flea(e)bay

author: marcopolo
author_rank: Regular Contributor
timestamp: September 30, 2015, 06:38:33 pm
content: Please look at the gdb option "target"target cpu32bug devCPU32BUG monitor, running on a CPU32 (M68K) board.target dbug devdBUG ROM monitor for Motorola ColdFire.target rom68k devROM 68K monitor, running on an M68K IDP board.No need for an exception handler linked with the application for breakpoints (I think)Yes, it is more efficient with a stub but it's easier to begin with a rom monitor.

author: marcopolo
author_rank: Regular Contributor
timestamp: September 30, 2015, 07:11:55 pm
content: Quote from: legacy on September 30, 2015, 06:18:00 pmOnly if I find a CodeWarrior to use with it

author: andersm
author_rank: Super Contributor
timestamp: September 30, 2015, 07:20:24 pm
content: Quote from: marcopolo on September 30, 2015, 07:11:55 pmThere's afree, size-limited versionfor download.

author: marcopolo
author_rank: Regular Contributor
timestamp: September 30, 2015, 07:51:06 pm
content: Thanks for the information.128K is a bit short but I tried even so to generate a licence file on the Freescale website and the result is:The call to lmcrypt failed.java.lang.reflect.InvocationTargetExceptionorThe call to lmcrypt failed.(500)Internal Server Error

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 10:00:58 pm
content: Quote from: marcopolo on September 30, 2015, 06:38:33 pmgdb-7.3.1/gdb/NEWSQuote

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 10:07:37 pm
content: as expected, it's obsolete no more supported interfaceand old versions are a crap to be compiled: screw GNU!

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 10:12:04 pm
content: thisis the interface I was talking about, plus other stuff … it might be re-integrated into gdb

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 10:41:45 pm
content: Just a little OT,hereI have found pre-built toolchains and tools for m68k,blackfin, they are for Windows, so they may be useful for someone. I prefer linux.

author: legacy
author_rank: Super Contributor
timestamp: September 30, 2015, 11:13:15 pm
content: Code:version rom68k compiled by gcc-v4.4.5=========================================gdb-5.2.1 yes failsgdb-6.5a yes failsgdb-6.6a yesgdb-6.7a nogdb-6.8a nogdb-7.0.1a nogdb-7.3.1 no successso it seems gdb-v6.6a was the last one supporting rom68k, then they dropped

author: legacy
author_rank: Super Contributor
timestamp: October 01, 2015, 12:57:12 am
content: I switched to gcc-4.1.2, which achieved the purpose: gdb-6.6a compiled with successI also had to upgrade the IDP-ROM v2.2 to v3.0, because the old rom does not work with gdb-v6 (it might work with previous version, who knows?), and it has no support for CPU & ram probeCode:gdb v6.6, ready(gdb) set remotebaud 9600(gdb) target rom68k /dev/ttyS0Remote target rom68k connected to /dev/ttyS00x00000000 in ?? ()(gdb) x/3uh 0x9000000x900000:655356553565535(gdb) x/3uh 0x8000000x800000:1565520128(gdb) x/4xw $sp0x500:0x000000000xffffffff0x000000000xffffffff(gdb) x/3ub 0x8000000x800000:015255(gdb) x/3xb 0x8000000x800000:0x000x0f0xff(gdb) x/16xb 0x8000000x800000:0x000x0f0xff0xf00x000x800x000x080x800008:0x300x380x000x000x300x380x000x00(gdb)

author: marcopolo
author_rank: Regular Contributor
timestamp: October 06, 2015, 09:49:30 am
content: This is good newsThanks for informations about working versions of GCC/GDBMarc