USBDM - Version 4.10.2 (RS08/HCS08/HCS12/CFV1/Kinetis BDM)

cancel
Showing results for 
Search instead for 
Did you mean: 

USBDM - Version 4.10.2 (RS08/HCS08/HCS12/CFV1/Kinetis BDM)

5,732 Views
Senior Contributor V

Dear All,

USBDM has been updated to V4.10.2

Please post any queries on this version in a separate thread - I really can't cope with this new-fangled setup!

Documentation available at: SourceForge

Applications available at: SourceForge

Source code is available at: GitHub eventually.

bye

Note

  • Please note that these design are different from the Freescale OSBDM-JM60 design which was proceeding independently while I was doing the above designs.

History

V4.10.2 (October 2012) -

This is intended as a interim release to support Codewarrior 10.3 Beta.

It has not been extensively tested.

Use only if you wish to experiment with CW10.3 or one of the following changes is of interest.

  •   Updated installer for Codewarrior 10.3 Beta
  •   Changed to shared DLLs build for wxWidgets
  •   Support added for Kinetis KLxx devices
  •   Updated libusbx version (& changed to static linkage)
  •    Bug Fixes
    • Firmware fixes for an output glitch on USBDM_JMxx_CLD & CLC.
    • Kinetis & CFV1 targets now correctly support RAM only targets (again)


V4.10.0 (September 2012) -

  • Improved Kinetis ARM-JTAG interface speed.
  • Added support for Kinetis ARM-SWD interfaces (requires different hardware). ARM-SWD is much faster than ARM-JTAG. For reference, programming a file to Kinetis flash using Codewarrior 10.2:
OSJTAG (build30_rev21)Tower K-401m 20s53s   
USBDM-JTAG (4.10.0)Tower K-4047s23s
USBDM-SWD (4.10.0)USBDM-SWD21s 17s

  • ARM interfaces (JTAG & SWD) are now provided by USBDM interface DLL. This means that the ARM API is now uniform with the RS08, HCS08, HCS12 and CFV1 interfaces. A compatibility DLL is provided for legacy use.
  • Simple ARM-SWD interface hardware designs are provided.
  • Bug fixes
    • Alignment error in programming code for some S12 targets
    • Corrected load addresses for ELF files for HCS08/HCS12



31 Replies

17 Views
Contributor I

Dear  pgo,

I downloaded the file "usbdm-firmware-master/USBDM_CF_JMxxCLD",but there is not .s19 in it. pls check it and reply.

B.R.,

JF


0 Kudos

17 Views
Senior Contributor V

Hi JF,

If you are referring to the GIT repository then you should find a .sx file. A lot of the Freescale tools produce S19 files with this extension.

In any case, if you want the release files rather than source code then you should use the installer version on Sourceforge.

bye

0 Kudos

17 Views
Contributor I

Dear PGO,

I have tried to debug/program MC9S12XDG128 with TBDML using the latest version of Code Warrior for HC's. When USBDM device have tried to erase flash memory, there was the following error: " Error while loading diagnostic algorithm to target system. The chip may be secured, or the derivative selected may be wrong.". Since derivative was selected correctly, I tried to unsecure the chip by clicking on "Unsecure" in Code Warrior menu. The script seemed to run well, I have selected 8 MHz bus clock, since I am using 8MHz crystal, but after that operation I was still receiving the same error. I am sure, that all connections are fine, and I have signals MODA, MODB pulled down to ground, so considering the MODC/BKGD pin is pulled up to VCC, chip should be in special single chip mode, and USBDM should work fine.


Here is the log from command line. Could you suggest me what to do, please.



Text Upload - Free Content Hosting

0 Kudos

17 Views
Senior Contributor V

Hi Pawel,

Could you try programming the device with your file using the stand-alone USBDM programmer.  Make sure you select the unsecure option.

Try again with Codewarrior and let me know the result.

Thanks

0 Kudos

17 Views
Contributor I

Thank you very much for the advice. First I have updated the USBDM firmware to be able to use the newest HCS12 Flash Programmer, then I program flash memory with some simple program compiled with CodeWarrior. Now it works fine both with Flash Programmer and Code Warrior.

Kind regards :smileyhappy:

0 Kudos

17 Views
Contributor I

Dear pgo

Thank you for your great job. I'm wondering whether I can use the usbdm with IAR. Can I just choose the PE MICRO‘s driver in IAR to let it work with USBDM? I'm planning to make my own USBDM now, so I want to make sure I can make it work with IAR, not only Codewarrior. If it does not, guess someday I can try to make some contributions like you too.:smileyblush:

cheers

0 Kudos

17 Views
Senior Contributor V

Sorry but USBDM does not work with IAR.

AFAIK there is no information available on the interface used.  If you know of any material I will be happy to consider adding some support,

bye

0 Kudos

17 Views
Contributor I

Dear Pgo,

    Does  the USBDM not support the MPC55xx/MPC56xx devices?

0 Kudos

17 Views
Senior Contributor V

Sorry Jiang, USBDM does not support MPC55 devices.

I had a look at these and concluded it would be  a great deal of work to implement the required functions due to the complexity and variety of the debug interface.

bye

0 Kudos

17 Views
Contributor I

Dear pgo,

     Thanks for your reply.

0 Kudos

17 Views
Senior Contributor II

Dear pgo,

I found an issue with USBDM in CW10.3b debugger for ColdFire+ (if I remember there's the same issue with CW10.2), D2 to D7 and A0 to A3 registers are always read zero, so this is not very convenient in some cases.

regards,

Emmanuel

0 Kudos

17 Views
Senior Contributor V

Hi Emmanuel,

I had thought this only occurred in 10.3 Beta.

In any case it is a bug in Codewarrior rather than USBDM I believe.  It also occurs for OSBDM.  I have reported it to Freescale previously so it should hopefully be fixed soon.

If you turn on the log you can see that USBDM GDI layer is being asked to read non-existent registers.

bye

0 Kudos

17 Views
Senior Contributor II

Hi pgo,

This issue seems to be still there with CW10.3

pgo a écrit:

Hi Emmanuel,

I had thought this only occurred in 10.3 Beta.

In any case it is a bug in Codewarrior rather than USBDM I believe.  It also occurs for OSBDM.  I have reported it to Freescale previously so it should hopefully be fixed soon.

If you turn on the log you can see that USBDM GDI layer is being asked to read non-existent registers.

bye

0 Kudos

17 Views
Senior Contributor V

Hi Emmanuel,

Yes it is still present in 10.3.

Nothing much I can do about it.  You can try posting a bug report as I did during the 10.3Beta and see if you get any further.

Note however that USBDM is not supported by Freescale so it may well be ignored even though the error is in Codewarrior.

Sorry!

bye

0 Kudos

17 Views
Senior Contributor II

true, USBDM is not supported by Freescale, but OSBDM is supported. I tried with a TWR-MCF51JF board and there's the same problem.

0 Kudos

17 Views
Senior Contributor V

Hi Emmanuel,

If you have an independent check, as you have indicated, then I suggest you submit a service request.

That is what I did previously quoting the OSBDM-JM60 failure.

bye

0 Kudos

17 Views
Senior Contributor II

Hi pgo,

it's already done :smileyhappy:

0 Kudos

17 Views
Contributor II

Dear pgo:

Thanks for your excellent work on the USBDM.

I work a whole day and night to test the new USBDM 4.10.2 version,

because I want to teaching my students learning K10 and KL25 in next

year, I just prepare the hardware and usbdm for them.

The hardware is a K10 board and USBDM CF/DSC/kinetis version.

Firstly, I use the version of 4.9.4b to work with stand-alone arm programmer

within the USBDM software, and it work very well.

Secondly, I uninstall the old 4.9.4b version and install the newest 4.10.2 version,

and the stand-alone arm programmer still work very well.

Thirdyly, I test a project with more than 120KB data with 4.9.4b and codewarrior 10.2,

I enable the verify option in debug setting, and everything is OK.

Finally, I test the same project with 4.10.2 and codewarrior 10.3beta, and when I enable

the verify option, codewarrior will report error at address of 1800. But when I power off and then

power on the hardware, the code same to work well.

So, is there something error with download process with codewarriror 10.3beta and USBDM 4.10.2?

Many thanks,

Tao

0 Kudos

17 Views
Senior Contributor V

Hi Tao,

I am not aware of any problems with that combination.

If the project is not confidential, would you be able to post the exported project and I will investigate the problem?

You could also try the following tests if convenient:

  • Program the chip using Codewarrior 10.3Beta
  • Use the stand-alone programmer to verify the chip (without programming) and see if it reports any errors.

Also

  • Use the stand-alone programmer to program and verify the chip and see if it has any problems.

It is possible that the verify in Codewarrior is reporting differences in the security values programmed to the target.  Does Codewarrior report the actual address failing?

bye

PS. If you are only interested in the Kinetis devices I would recommend the simplified JS16 based SWD version of the programmer.  It is considerably faster that the JTAG based programmer and works with a wider range of Kinetis devices..

0 Kudos

17 Views
Contributor II

Hi, pgo:

I finished the test steps that you suggested.

1, I program the K10 chip using Codewarrior 10.3 beta, it report error, the figure is in the attach files.

codewarrior 10.3beta verify error.jpg

2, I only verify with USBDM 4.10.2's arm standalone programmer, it report everything is OK, and the board working well

after I re-power it.

3, The stand alone programmer can program and verify the K10 board no any problem.

and I will test the same board with SWD version of USBDM hardware next day.

The attached file is my project and error figure.

Many thanks,

Tao

0 Kudos