USBDM - Version 4.6 (JB16/JS16/JMxx Hardware Versions)

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

USBDM - Version 4.6 (JB16/JS16/JMxx Hardware Versions)

12,859 Views
pgo
Senior Contributor V

Dear All,

 

USBDM has been updated to V4.6.  This version adds support for Kinetis devices but please be aware that this has had minimal testing due to lack of devices to test with :smileyhappy:.

 

Please post any queries on this version in this thread,

 

Information available at:  http://usbdm.sourceforge.net/

 

bye

 

Notes

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

 

  • V4.6 (June 2011) -
    • Support for Kinetis Targets in Codewarrior V10.1 (Eclipse, USBDM/CF only)
    • Added Kinetis programmer (and CFVx but only two devices!)
    • Improvements to USB error checking (JMxx/JS16 only)
    • TCL scripting
  • V4.5 (February 2011) -
    • Support for Codesourcery Lite - Coldfire Vx
    • Support for Coldfire Flasher (CFFlasher) Coldfire V2,3,4 only
    • Support for Codewarrior Eclipse 10.1
    • Flash buffer is now dynamically sized in Flash programmers
    • Added fix for Legacy Codewarrior tools missing TBDML/OSBDM targets
  • V4.4 (January 2011) -
    • Less intrusive auto speed detection for targets without sync
    • Unlocking improved for targets using slow external clocks
    • Codewarrior V10 New Project Wizard now includes USBDM
    • Programming support for HCS12/HCS08 targets with EEPROM
    • Programming support for CFV1 target with multiple Flash (Dual Flash)
    • Use of XML based device files (needed for above two items)
    • Automatic unsecure for Legacy HCS12 targets
  • V4.3 (December 2010) -
    • Bug fixes (DSC Speed)
    • Improved Codewarrior V10 integration
    • Serial interface on JS16 versions (supported in JMxx but no example implementation)
  • V4.0 (September 2010) - Significant changes in some areas - Please read carefully
    • Support for Linux (Eclipse version of Codewarrior only)
      Installation is still somewhat of a challenge!
    • Support for Linux and Windows7 64-bit (Eclipse version of Codewarrior only)
      To support the 64-bit version of Windows it has been necessary to update to using libusb-V1 drivers. For consistency this is also done on Linux. As part of this process the VID/PID for the hardware (BDM) has been changed. This will allow the co-existence of Freescale's OSBDM-JM60 hardware while using a new driver for USBDM. Formerly both these BDMs used the same VID/PID and changes to the driver would not be possible.
    • Programming utilities for RS08, HCS08 and CFV1 are now (officially) included.
    • Support for MC56F800x (digital signal controllers) added. This is only available on USBDM_CF BDMs and the Axiom MC56F8006 Demoboard.
    • Minor bug fixes (installation script)
    • The addition of DSC support has pushed the firmware size to greater than 16K on the USBDM_JMxx-CF version. This means that MC9S08JM32/60 chip must be used.
    • Changed to wxWidgets for common GUI code on Windows and Linux
  • V4.6 (June 2011) -
    • Support for Kinetis Targets in Codewarrior V10.1 (Eclipse, USBDM/CF only)
    • Improvements to USB error checking (JMxx/JS16 only)
    • TCL scripting
  • V4.5 (February 2011) -
    • Support for Codesourcery Lite - Coldfire Vx
    • Support for Coldfire Flasher (CFFlasher) Coldfire V2,3,4 only
    • Support for Codewarrior Eclipse 10.1
    • Flash buffer is now dynamically sized in Flash programmers
    • Added fix for Legacy Codewarrior tools missing TBDML/OSBDM targets
  • V4.4 (January 2011) -
    • Less intrusive auto speed detection for targets without sync
    • Unlocking improved for targets using slow external clocks
    • Codewarrior V10 New Project Wizard now includes USBDM
    • Programming support for HCS12/HCS08 targets with EEPROM
    • Programming support for CFV1 target with multiple Flash (Dual Flash)
    • Use of XML based device files (needed for above two items)
    • Automatic unsecure for Legacy HCS12 targets
  • V4.3 (December 2010) -
    • Bug fixes (DSC Speed)
    • Improved Codewarrior V10 integration
    • Serial interface on JS16 versions (supported in JMxx but no example implementation)
  • V4.0 (September 2010) - Significant changes in some areas - Please read carefully
    • Support for Linux (Eclipse version of Codewarrior only)
      Installation is still somewhat of a challenge!
    • Support for Linux and Windows7 64-bit (Eclipse version of Codewarrior only)
      To support the 64-bit version of Windows it has been necessary to update to using libusb-V1 drivers. For consistency this is also done on Linux. As part of this process the VID/PID for the hardware (BDM) has been changed. This will allow the co-existence of Freescale's OSBDM-JM60 hardware while using a new driver for USBDM. Formerly both these BDMs used the same VID/PID and changes to the driver would not be possible.
    • Programming utilities for RS08, HCS08 and CFV1 are now (officially) included.
    • Support for MC56F800x (digital signal controllers) added. This is only available on USBDM_CF BDMs and the Axiom MC56F8006 Demoboard.
    • Minor bug fixes (installation script)
    • The addition of DSC support has pushed the firmware size to greater than 16K on the USBDM_JMxx-CF version. This means that MC9S08JM32/60 chip must be used.
    • Changed to wxWidgets for common GUI code on Windows and Linux

Tags (2)
0 Kudos
112 Replies

1,441 Views
pgo
Senior Contributor V

Dear Robert,

 

I've been a bit slack about updating the change list on the schematic.  The changing are as you have indicated (from memory!).

 

The JTAG_DRVR was added to allow for the possibility of disabling the interface when debugging is not in use.  The controlled signals are only floated when the bdm is not in one of the JTAG related modes i.e. the signals are controlled during the entire debugging session so the absence of pull-ups should not affect this.

 

bye

0 Kudos

1,440 Views
joncas
Contributor II

Dear PGO,

 

Would it be possible for you to upload the 4.7 firmware source files?

I would like to compile a USBDM_JMxxCLD_V4 with serial port enabled ...

 

Many thanks!

Robert

0 Kudos

1,441 Views
wrljet
Contributor II

I ran the new MSI based installer for 4.7 (USBDM_4_7_0e_Win.msi on Windows 7-64).

It updated the DLLs in my CW 10.1 installtion.  But CW 6.3 wasn't touched.

 

Is there a way to get CW 6.3 updated?  (or get to the binaries (release and debug) for

manually copying?

 

Bill

 

0 Kudos

1,440 Views
pgo
Senior Contributor V

Dear Bill,

 

CW6.3 is not supported under WIndows-7 64-bit, or at least I couldn't get it to install.  Am I correct in thinking that you had to do something out of the ordinary to install it?  If this is the case, could you explain the method or direct me to information on how to do this as I would like to do some testing?

 

The installer looks in the registery for some infomation to locate the existing Codewarrior software so it can add the required USBDM files.  I supect that your installation is missing the registry keys.

 

I will (shortly) upload yet another version of USBDM created with different installer options that will allow you to install even if the installer fails to detect the CWV6.3 install.  You will have to manually select the CWV6.3 installation and set the Codewarrior installation path.  There should be no (intentional) changes to the other files.

 

bye

 

0 Kudos

1,441 Views
joncas
Contributor II

Dear PGO,

 

the work-around for running Codewarrior 6.3 and 7.2 under Windows 7 (64 bit), is to copy the entire installation from another computer where it was installed under 32-bit XP, located at 

("c:\Program Files(x86)\Freescale\CodeWarrior 6.3") or similar.

 

Once it's in place on the Windows 7 system, open the "bin" directory within this folder, locate 

"Mwregsvr.exe", and in its properties, change the compatibility settings to Windows XP SP2 and put the checkbox to run as administrator.

Finally run "regservers.bat" in the same folder. (But apparently this doesn't apply all the registry settings that your installer looks at, because I tried it again just now, and the USBDM plugins don't get installed.

To launch the IDE, also have to manually create a shortcut to "IDE.exe" in the directory that was copied.

 

best regards,

Robert

0 Kudos

1,440 Views
wrljet
Contributor II

Yes, Robert's post explains the process I used to get 6.3 running on Windoze 7-64.

 

I just tried the new installer USBDM_4_7_0f_Win.msi.

 

I manually turned on updating of CW6.3 in the optional components.

 

After grinding a while, I got this error:

 

 

The place I think it was trying to find does exist:

 

C:\Program Files (x86)\Freescale\CodeWarrior for Microcontrollers V6.3\bin\plugins\Support\HC(S)08Wizard\XML

 

Bill

 

0 Kudos

1,441 Views
joncas
Contributor II

Hi Bill,

 

"c:/notfound4" is the path that the installer has before you manually specify the correct path.

You have to click on "Browse..." and navigate to the main install directory before launching the installation -- see first screenshot. (Before launching, the "c:/notfound4" has to be replaced by "c:\Program Files(x86)\Freescale\CodeWarrior 6.3").

 

I just tried with CW 6.3 and 7.2, and it worked correctly in both.

 

There is one fluke in the installer though: if neither CW 10.1 nor CW 8.x are installed, it doesn't display any of the "Patch Codewarrior" options. So if you have only CW6.3 and or CW 72, one can't install them (see the second screenshot taken when only CW6.3 was present).

 

best wishes,

Robert

0 Kudos

1,440 Views
wrljet
Contributor II

joncas wrote:
There is one fluke in the installer though: if neither CW 10.1 nor CW 8.x are installed, it doesn't display any of the "Patch Codewarrior" options. So if you have only CW6.3 and or CW 72, one can't install them (see the second screenshot taken when only CW6.3 was present).

What is the workaround in this case?   I'm back on my main system now, Windoze XP.  I use CW6.3 there.

I don't get the "Patch Codewarrior" options.

 

Bill

0 Kudos

1,441 Views
joncas
Contributor II

Hi Bill,

 

on a 32-bit XP system, the installer should work fine -- I just tried it: only CW 6.3 was installed by running the Freescale installer (not copying the installation from another machine), then the USBDM installer patched it as expected.

 

If yours is 64-bit XP or you can't run the Freescale installer, I suppose you would either have to copy the DLLs manually, or else temporarily install the free "Special Edition" of Codewarrior 8.3, just to get the installer to show its patch menu!

 

Maybe PGO can recommend a better solution ...

 

Best regards,

Robert

0 Kudos

1,440 Views
pgo
Senior Contributor V

Dear Bill,

 

I'm unsure what the problem is in your XP install case.  There is a known (now fixed) bug relating to the whole sub-menu not appearing if certain codewarrior software is not detected.  I wouldn't think this would be the case for what you have described.

 

In any case,  the proper way to solve this is for me to fix the installer.

 

I apologise - This is my first effort with WIX (windows installer) and there are still some issues to solve.  I will upload another re-packaged version which has all the pre-install Codewarrior checks removed so the menu items should appear even if not detected.  This installer still has some issues - don't use Change options as they do not handle non-standard installation paths correctly.

 

Alternatively - copy the missing files in the C:\Program Files\Freescale\CodeWarrior for Microcontrollers V6.3\prog\gdi directory from your other machine.

 

bye

 

PS.  Up to version g now.

 

0 Kudos

1,441 Views
wrljet
Contributor II

Thanks for all assistance on this.

 

Very long post here...

 

pgo, can you tell me what you look for to detect CW 6.3?  Then I'll check my system and see

if it's missing/broken.

 

To get my XP system going yesterday I ran the "f" installer on another XP install (one on a VM)

where I also have CW 6.3.  I did get the update menu there.  Did the full install.

 

Then I zipped the entire CW 6.3 directory from Program Files and brought it back to the main

machine where "f" didn't work.  I did a recursive diff of the two "installs".  The only differences

were the new stuff "f" had installed on the VM version.   This indicates the reason for the

installer not detecting CW 6.3 must be registry related vs. filesystem.

 

So I copied those files over.  In my mind at this point I assume 4.7 is in.

 

Along the way of doing this I decided to try the new .inf for the CDC serial port, too. 

You'll remember I have a problem in 4.6 where that just stops working after a while.

I told Windoze to update that driver and part way through that Windoze blue screened

on me.   <sigh> (which wasn't the word I used at the time)

 

After rebooting it wouldn't recognize the CDC port anymore, no bee-beep sound for it

and nothing in Device Manager.  An hour later of swearing and fiddling in Regedit and

I got Windoze to forget it had a half-installed driver for that, and it bee-beeped and updated.

<whew>

 

Then I ran the Bootloader and updated the firmware to 4.7.  That worked OK.

 

OK, so then I fire up my CW projects and go to debug, and the initial dialog comes up says

I have DLL version 4.6 and firmware 4.7.   "Huh?" I'm thinking, I just copied those new DLLs

over.  Then I discover I'm in CW 6.2!   <more foul language>

 

Long story there as to why.  But I just plain forgot I was still using 6.2 by default.

So I manually copied over the 4.7 USBDM DLLs to CW6.2 and then things went from

bad to worse. The debugger no longer worked.   So now I've managed to break my

development environment, but good.

 

So I manually fire 6.3 and it wants to convert the project, and then crashed because I have 6.2 set to

use text based project files and 6.3 isn't, and there's a known bug in CW for that.

I finally get around that and then the project won't build, with various compiler and linker errors.


Hours of swearing later, on another machine (the one with W7-64), I had the project

building under 6.3.   Didn't try to debug it, just packed up the laptop and opened up the Bier instead.

 

Now it's a new day.  On Windows 7-64, I think everything is installed properly.

I ran Bootloader, and updated the firmware.   It seemed to work.

But after it rebooted the device, I clicked the Read From Device button and got an

error "USB Device Failed To Open".

 

I unplugged and repluged the USBDM.

Click the Read From Device button.

The light on the USBDM blinked once.

 

Then click Read From Device again.

Got the error.

 

It's reproducible.  But sometimes it will Read From Device a few times before the error.

 

So then I try to debug.  It takes a long time for the initial dialog to come up.

(compared to what I'm used to with USBDM 4.6 and CW6.2)   During which time the

debugger shows Not Responding on the titlebar.   Then the initial dialog comes

up and shows Unknown in Select BDM.  I click Detect and it finds it.

 

Sometimes instead of "unknown", the initial dialog shows Device Not Responding.

 

Good news is, the "Leave Target Powered" bug is fixed!

 

Next I'll see if I can get the new 6.3 based project working on my main XP system again.

 

Bill

 

 

 

0 Kudos

1,440 Views
pgo
Senior Contributor V

Dear Bill,

Some answers below:

pgo, can you tell me what you look for to detect CW 6.3?  Then I'll check my system and see if it's missing/broken.

Below is an export from the registry on my machine (Win-XP).  The USBDM installation looks for the PATH entry.  This is created by the installation program so is not created if you do a "manual" Windows-7 installation as described earlier in this thread.  The batch file run as part of the manual installation is just registering COM objects etc I believe.  I've attached a zip containing this information.  If you are brave you can edit this file to the correct path and add it to the machine registry by right-clicking and selecting merge.  This should not be necessary with the later USBDM installer versions which allow you to manually set the installation path.

Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Freescale\CodeWarrior\Product Versions\CW for Microcontrollers V6.3]"INSTALL DATE"="25/01/2011""PATH"="C:\\Program Files\\Freescale\\CodeWarrior for Microcontrollers V6.3\\""PROGRAM FOLDER"="Freescale CodeWarrior\\CW for Microcontrollers V6.3""VERSION"="6.3.0000"

 I have done a basic check that the installer (version g) now works correctly under Windows 7-64bit with a manual installation of CW-V6.3.  A CWV6.3 project didn't have any problems with the BDM.  The stand-alone programmers were also OK.

 

USBDM V4.7 changes the version of libusb used.  This was because of some issues that people had with running in a virtual machine.  One thing to check is that a consistent set of USB files are being used.  Try running zadig to update the USBDM drivers as it does a more thorough job of replacing files (some of which are in the system directory).  Testing with the stand-alone programmers would be also useful as it reduces the number of variables to consider :smileyhappy:

 

I appreciate the time you are spending on this!

 

Bye

 

 

 

 


0 Kudos

1,441 Views
wrljet
Contributor II

pgo,

 

I've applied the reg settings (modified to suit).   I'll try a new install a bit later.

 

Thanks,

Bill

 

0 Kudos

1,440 Views
wrljet
Contributor II

Good news!

On my main XP system, with the project fixed and properly
updated to CW6.3 (which I did on the other machine last night),
and USBDM 4.7 DLLs and firmware, everything "just works".

Snappy like before, too.


Looks like W7-64 has some issue(s) still which I'll try to characterize further/better.

 

Bill

 

0 Kudos

1,441 Views
wrljet
Contributor II

pgo,

 

A fresh install of the latest 4.7g and a reboot, got my Win7-64 working perfectly with CW6.3!

 

Bill

 

 

0 Kudos

1,440 Views
wrljet
Contributor II

joncas wrote:
"c:/notfound4" is the path that the installer has before you manually specify the correct path.

You have to click on "Browse..." and navigate to the main install directory before launching the installation -- see first screenshot. (Before launching, the "c:/notfound4" has to be replaced by "c:\Program Files(x86)\Freescale\CodeWarrior 6.3").

 




Oh.  I would never have guessed that, and didn't even wander my gaze down to that 'Location:' area of the dialog.

 

Tried that and it worked.

 

Thanks,

Bill

 

0 Kudos

1,441 Views
joncas
Contributor II

Hi PGO,

 

Many thanks for this explanation.

 

Also happy to report that the error I was getting trying to debug a MC56F8013 DSC target in CW 8.3 went away with your version 4.7 installation and now works fine.

 

Really great work!

 

best regards,

Robert

0 Kudos

1,440 Views
thm59
Contributor II

Dear PGO,

 

I have a couple of USBDM and I changed recently of computer. Now, I have an Windows 7 (home edition) - 64 bits AMD Phenom II PC. Previously, I had a Win XP 32 bits computer.

 

I have USBDM with the 4.5 and 4.6 version, and I have the following problems with Windows  7:

- Both Bootloader.exe  versions (4.5 and 4.6) fail to run.

- The CFV1_FlashProgrammer version 4.5 runs OK, but the CFV1_FlashProgrammer version 4.6 fails (see figure attached)

 

I carefully avoided to mix the dll of different versions and ran the programmes with the following compatibility options : "run in XP SP3 mode" and "Run as Administrator".

 

I use CodeSourcery  for CFV1 and both versions and dll runs OK.

Do you have an idea what is going wrong?

 

best regards

 

Thierry

 

0 Kudos

1,441 Views
pgo
Senior Contributor V

Dear Thierry,

 

Bit much idea really.  The Codewarrior DLLs and the corresponding standalone programmers both use the same code for programming so I would expect errors in both or neither!

 

The Bootloader poses some special issues since it involves 'suprise'  USB removals when changing between modes which does seem to upset some computers.  I don't see how I can investigate this as I didn't have real problems with Windows 64-bit on intel boxes and possibly the problems is with the AMD machines (or the non-intel USB interfaces).

 

Incidently, when you say "fails to run" do you mean the programs don't execute at all, crash or don't function correctly?

 

bye

0 Kudos

1,440 Views
thm59
Contributor II

Hello, PGO

 

It seems that my problem is similar to the one mentionned by BENDJY (page 1 of this post).

Regarding the problem of the bootloader, attached the error message.

 

In both cases, it seems that the programming problem occurs just before the verifying phase.

 

Best regards

 

Thierry

0 Kudos

1,441 Views
wrljet
Contributor II

I'm using the JM60 version.  I updated today from 4.3 to 4.6.

 

Now the "Leave target powered on exit" seems to no longer work.

When I exit the debugger, the USBDM turns off power to my target board.

 

Bill

 

0 Kudos