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

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

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

4,714 Views
pgo
Senior Contributor V

Dear All,

USBDM has been updated to V4.10.6.120

Please post any queries on this version to individual threads as new questions.  Appending to this thread only confuses different questions.

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 this design

USBDM consists of two components:

Hardware interfaces for various target devices

  • This includes interfaces ranging from very simple hardware to more complete and capable hardware.
  • It also includes use of FRDM boards such as FRDM-KL25 as general purpose programmers for Kinetis devices.

Software to support these interfaces. This includes:

  • Plugins to work with Freescale's Codewarrior software under Windows and Linux (V10.2 only on linux).
  • Plugins to extend the usability of Eclipse with USBDM and Codesourcery & ARM toolchains.  This provides a complete open source development tool-chain for Kinetis and Coldfire devices.
    • GDB server (including programming).
    • Component peripheral view for Kinetis devices.
    • Project creation with base software support.
  • A set of stand-alone programmer applications. These support programming of RS08, HCS08, HCS12, Coldfire and Kinetis devices.

Where applicable, the software is available for Windows and Linux.


Recent Change History


4.10.6.120 (March 2014)

   - New features in Eclipse

      - Added project options to Eclipse plugin

      - Configuration editor (used for clock configuration)

      - Clock configurations for Kinetis devices

      - Clock configurations for (some) Coldfire devices

      - Standard Peripheral Library & CMSIS for STM devices

   - Bug Fixes

      - Fixed bug affecting 9S08AC8 and similar (small RAM memory HCS08 devices)

      - Fixed bug affecting 9s08PT16 and similar (removed needless restriction of EEPROM alignment)

   - Firmware

      - Greatly extended timeouts in ARM interfaces.  Improves operation with slow clocks (16kHz)

   - Stripped binaries to reduce size

 

4.10.6.110 (February 2014)

   New features in Eclipse

   - Added Peripheral View (Kinetis devices)

   - Added SVD files and derived header files

   - Added CMSIS-RTX support (Kinetis devices)

   - Added UART support for some devices (Kinetis devices)

   - Added Clock support for some devices (Kinetis devices)

   Corrected errors in programmer device files

Screen Shots

   Peripheral View in Eclipse (Kinetis devices)

PeripheralView.png

  Stand-alone programmers

Programmer.png

15 Replies

2,525 Views
ldgd
Contributor I

Hi PGO,

I have 6 boards populated with MC9S08PA4AVTG and I can't program or debug them with the USBDM. The same board runs fine when populated with a MC9S08SE4CTG. Also, I can connect the PA4A using a Multilink programmer. The HW version is USBDM_SWD_JS16CWJ V2.2, the firmware is 4.12.1.170. I ordered the board from OSH Park, where you had it shared. The micro I used is MC9S08JS16LCWJ. The "L" version does not have internal voltage regulator, so I had to connect the pin to the 3v3 LDO output of the LDO. Works perfectly otherwise and I can connect to SE4 and SL8 micros.

 

I made a 2nd test HW setup. It uses a TSSOP break-out board, a filter capacitor, and 3.3k and 10k pullups for the BDM and Reset signals. 

If you're interested to help I can mail you the test HW setup. Even the USBDM board if you wish. 

0 Kudos
Reply

2,525 Views
carlos_cuevas
Contributor I

Hi pgo, thanks for your great work, it's truly an amazing job you've done here. I've been a long time user of this programmer/debugger and I just use P&E products when dealing with very new uCs or when I need some exotic features. Lately I've been developing an application with the MKE02Z64M2 using its internal oscillator. Sadly I had to ask a freind for his P&E Universal Multilink because USBDM can't trim the internal oscillator yet. I don't want to pressure you, I bet you have a lot of work, I just want to know if there's a planned release of this feature and what priority does it have in your future feature list. Thanks!

0 Kudos
Reply

2,525 Views
zhanjiancheng
Contributor I

The new device look like below,when BL was not low.device8.JPG.jpg

0 Kudos
Reply

2,525 Views
pgo
Senior Contributor V

Hi Jiancheng,

It's unclear if you succeeded in updating the flash image - the Failed to erase message is a bit worrying.

You appear to using Windows 8.  USBDM has not been tested with Win-8 so it is possible that there is some problem associated with this.

I would suggest trying the firmware update an another machine and confirm it it behaves differently.

bye

0 Kudos
Reply

2,525 Views
zhanjiancheng
Contributor I

Hi pgo,

    I'm try to make a js16 usbdm. But when I try to start the

Update of BDM firmware

, I find that the version is wrong and the device doesn't show as you say. I don't know what to do now.

device.JPG.jpgdivice2.JPG.jpg

0 Kudos
Reply

2,525 Views
pgo
Senior Contributor V

Hi Jiancheng,

Please don't post at the end of an old thread.

If you are programming a device for the first time or want to entirely erase a device from scratch you tie BL low as you have done but you then use the JS16 First Level Bootloader as shown.  This was provided to replace the Freescale one which no longer works.

pastedImage_0.png

Make sure you choose the correct firmware version to suit the hardware:

pastedImage_7.png

The bootloader you are using is for later updates without the need to use BL.

Please see the following page for detailed instructons:

USBDM: BDM Construction and Firmware

bye

0 Kudos
Reply

2,525 Views
zhanjiancheng
Contributor I

thanks for your answer. i have try that and i finally found the js16 bootloader device,then i get the device looked like below. but i still can not use it or update it.

device2.JPG.jpgdevice3.JPG.jpgdevice5.JPG.jpgdevice6.JPG.jpgdevice7.JPG.jpg

0 Kudos
Reply

2,525 Views
JohnnyS2K
Contributor III

Hi pgo,

Thank you for this new version of the USBDM!

I have installed this version of USBDM on my computer but I cannot get it to work with the PA4, programing via the Codewarrior (10.4) sometimes work / sometimes not (then  I have to cycle power to the PA4).

Through the HCS08 Programmer utility the chip can't be verified and occurs the error shown on the picture below (readback of the flash contents does not agree with buffer).

I have noticed that I can't change the NVTRIM value when I check the trim frequency checkbox, on my test firmware I have pointed the NVTRIM @ 0xFF6F (thats the correct value right?) but on the HCS08 Programmer the value is always fixed at 0xFF6E

Thanks!

Captura de tela 2014-03-12 21.06.39.pngCaptura de tela 2014-03-12 21.08.21.pngCaptura de tela 2014-03-12 21.07.54.png

0 Kudos
Reply

2,525 Views
pgo
Senior Contributor V

Hi Johnny,

Yes I seem to have broken something on the PA4 in the latest version.  I made some changes for SF4 and it would appear to have broken PA4.

Please re-install that previous version until I have a chance to fix it.

bye

0 Kudos
Reply

2,524 Views
JohnnyS2K
Contributor III

Hi pgo,

Now it worked again!

Thank you!

0 Kudos
Reply

2,524 Views
pgo
Senior Contributor V

Hi Johnny,

I believe the version just uploaded V4.10.6.130 fixes the PA4 again but there is little reason to update if V4.10.6.110 is working OK.

bye

0 Kudos
Reply

2,524 Views
JohnnyS2K
Contributor III

Sure pgo, no problem!

The only thing that is not ok on version 110 is the NVTRIM Address that changes automatically  to 0xFF6E when it must be 0xFF6F after a "detect chip" and when you do not want to program more than one chip in sequence, the rest is ok!

Thank you!

0 Kudos
Reply

2,524 Views
pgo
Senior Contributor V

Hi Johnny,

I believe the 0xFF6E value is correct.

The ICS clock used in the PA4 has 9-bits of trim.  This uses two memory locations - 0xFF6E-0xFF6F.  The value in the programmer dialogue is the address of the first of these.

If you change this to FF6F then one byte of the trim value will be written to the NV_BACKKEY0 location.

The example code give in the programmer manual is consistent with the suggested layout.

0xFF6E = FTRIM value (may be combined with other settings for the register containing FTRIM.

0xFF6F = NVTRIM value

The PA4 Reference manual doesn't give suggested address locations for the trim bits in Flash.  Other devices have done so and this layout is based upon those.

The labelling on the programmer dialogue is misleading since it refers to the later (better known) name.

bye

2,524 Views
JohnnyS2K
Contributor III

Hi pgo,

   Thanks for the information! I've searched the reference manual and don't find anything about these registers. I'm using these addresses because I have seen on an example program here in the forum. I think I'm using the incorrect address on my firmwares too, I'm gonna correct that!  

Thanks again!

0 Kudos
Reply

2,523 Views
gravis
Contributor I

please move

usbdm-eclipse-makefiles-build/Shared_V4/src/Programmer/UsbdmDialogue.h

to

usbdm-eclipse-makefiles-build/Shared_V4/src/Programmer/USBDMDialogue.h

otherwise it will fail to build on case-sensitive filesystems. :smileysad:

0 Kudos
Reply