Dear All,
The latest version of the hardware/software & firmware for the above is available at this location.
http://opax.swin.edu.au/~3340694/USBDM/USBDM/html/
History
Please note that these design are different from the Freescale OSBDM-JM60 design which was proceeding independently while I was doing the above designs.
Linux files will be uploaded in the next few days.
Its a BETA because there have been lots of changes in how it operates so probably some undiscovered bugs.
Enjoy.
bye
Hi Mickey:
CW for MCU V6.3 ONLY "HCS08 FSL Open Source BDM" option,NO "HCS08 Open Source BDM" option. I tried to connect,but failued.
hello http://forums.freescale.com/../user/viewprofilepage/user-id/14371" rel="nofollow" target="_selfidiao
In debug window, which you can select the following:
component-> set connection-> HCS08 Open Source BDM.
Hello PGO,
I wanted to ask about the easiest way of upgrading devices already running Version 4 -- it seemed to me that with v. 3.2, the DLLs contained the firmware image and could do an "auto-update" when the dll detected that is was newer than the firmware version of the connected USBDM (for example dll v 4.3 detecting usbdm firmware 4.2), but the v. 4 connection dialog doesn't seem to propose this, or must it be triggered into doing this in some manner?
Or does one always have to use the separate bootloader utility?
Many thanks!
Robert
Dear Joncas,
The autoupdate feature has been removed. This was because of a number of reasons:
It is likely that the auto-update will re-appear but it still won't cover V3->V4 for the above reasons.
The upgrade process V3->V4 is unfortunately complicated. Depending on you hardware the following processes are suggested:
JS16 versions
JB16 versons
JMxx version
The JMxx version present particular problems since they do not include a permanent bootloader. My bootloader which is programmed in the V3 Flash uses the previous USB VID/PID and there is no way of changing this without completely re-programming the chip using a second BDM. It is still possible to do an update without a programmer but it requires the installation of the libusbV1 drivers for the old VID/PID as well as the new VID/PID. installing the driver will render the BDMs using the old VID/PID unusable but this shouln't be an issue if upgrading.
So two choices:
OR
I hope this isn't too confusing!
Bye
Hello PGO,
many thanks for these detailed explanations!
I tried several JM60 devices with both the complete reflashing with the HCS08_FlashProgrammer and the upgrade via the Bootloader utility -- both methods work fine and easily (it's harder to describe the procedure than to do it!)
In migrating from version 3.2 to version 4, there is one new phenomenon which is that with version 3.2 it was possible to use the USBDM on a OS-X Macintosh by running XP in a virtual machine with "Parallels Desktop" (any Parallels version: 4, 5 or 6). But with the different set of USB libraries used by USBDM 4.x, the USBDM device disappears after each debug session: I can run one complete debug session starting with the flashing and single-stepping etc., but if I close Hiwave.exe and later relaunch it from Codewarrior, the USBDM is no longer found. Unplugging the device and replugging it makes it again available for one session.
The same thing happens with the stand-alone utilites: they can access the USBDM for one programming cycle, then the device disappears.
It works fine when rebooting the Macintosh into the "Bootcamp" mode where it runs XP by itself, so it's tied to how the virtual environment handles USB connections (it probably introduces longer timing delays at some critical point) and it's not an issue worth spending much time investigating, but I thought I'd just mention it in case anyone else stumbles on it.
Many thanks again for making this USBDM software available !
hi pgo
Return on USBDM V4.3 of the bug:
Question: RS08KBxx not well connected
HW: CF_JMxx
FW: V4.3
Sorry Mickey,
I have no idea what you mean?
I do not have RS08KBxx so it hasn't been tested. It appears to be very similar to the other RS08s apart from using a S08 style clock so I would have expected it to work but it is quite possible that I've missed something.
If you are saying that it doesn't work could you try the following fixes in order (if you have the time of course):
bye
Dear Pgo,
Please tell me, that is possible to remove 74LV125 from USBDM_CF_JS16 version of your device if I provide 3,3V power supply to my target and to JS16 device.
Best Regards,
Macias
Dear Macias,
There are two considerations:
Will the USB work if the Vdd and Vusb33 are simply connected to a 3V3 regulator derived from USB 5V?
I'm unsure whether this is a permissible combination when operated as a USB device. I had a look at this previously and thought not but now I think it is implied that it would be possible. See section 15.1.3 3.3 V Regulator in the RM, and the Electrical specs.
Will the USBDM firmware work ?
No - The code assumes external drivers and does not 3-state pins as required. It might be possible to modify the code to achieve this and I will have a look when time permits. There might also be some pin-sharing issues.
I have considered the possibility of a 'naked' BDM but haven't looked further. This would obviously be good for a minimal cost on-board BDM for a development system. It would not be advisable for a true BDM since the pins would be very unprotected (even if you limited things to 3V3).
bye
Where can bare PCBs be purchased for the USBDM?
Bill
Hello Bill,
I had a batch of pcbs made that I can send you one (or a few) from -- they are the version for MC9S08JM60CLD, but without the circuitry for providing the programming voltage for RS08 devices and without the JTAG functionality for CF V2-4.
But I think you will find it extremely difficult to solder the 3-state buffer sn74lvc2g125DCT by hand -- it has tiny pins with 0.65mm pitch (IC1 in the attached picture), and there is not much space towards the adjacent resistors R3 + R17. The pins of the mcu are already a challenge ...
The only feasible method seem to me to be with a solder paste stencil and a small reflow oven (even a modified toaster oven will do!)
Best regards,
Robert
Thank you both (pgo & joncas) for the info, help, and your work on this project.
Bill
There are some links at the bottom of this page. One of the suppliers (at least) provides blank boards for a JS16 version.
AFAIK there are no more-sophisticated bare boards available but some of the commercial assembled boards look atttractively priced when you consider the cost of components.
bye
Hello PGO,
your version 4 is terrific -- many thanks!
Just wanted to suggest a small improvement to the documentation: somehow there don't seem to be any links from the description pages at http://usbdm.sourceforge.net/USBDM_V4.0/USBDM_JMxx/html/index.html to the download section of the installation files at http://sourceforge.net/projects/usbdm/files/
Maybe you could put a link in the menu frame on the left?
And on http://usbdm.sourceforge.net/USBDM_V4.0/USBDM_JMxx/html/main.html there is a small typo, it should be Ubuntu with a "u" at the end instead of Ubunto (just to get the search engines to find the page!)
Many thanks again for all this !
Dear All,
I've build the board for OSBDM from USBDM_JMxxCLD version. I'm using JM32 and porting code of JM60 as given in the USBDM folder. When I connect it to PC, it detectes USB. Also it pops up the configuration window when I connect it into Codewarrior for debugging.
But, when I try to connect it to the target, it is giving me the "Fatal Error". I've checked in detail and found that there is no activity on RESET pin of the BDM connector.
The target VCC is also OK. BDM pin is low when trying to connect the target.
Plz guide me to resolve this issue.
Thanks and Regards,
Nandulal K. Gavali
Dear pgo!
When I try to connect to board with MC9S12DP512 the HiWave freeze and nothing hapens ( Only close and get error ).
The HW is USBDM-JS16.
The log files from debug DLL's is included.
Using USBDM with HiWave HSC08 and MC13213 is without problem.
With the same hardware and the USBDM v3.2 the process is OK.
Thank You in advance!
bendjy
Dear Bendjy,
Have you applied the fix provided in the installation/errata directory on soureforge? The logs appear consistent with the problem this fixed.
bye
Dear PGO,
I get the Linux version working on 64 bits, with small changes. I've been able to program a CFv1 device. I'm going to install the Codewarrior 10 Special Edition to check if the driver works reliably for debugging.
I'm also able to connect with gdb and debug a little bit, but the processor reboots with an error (usually invalid operation flag).
Waiting your response on the usbdm dev forum about the git repository to get the changes merged. I'm also going to test if it compiles in linux32 environment (i usually cross-compile apps for linux32 and windows - mingw).
Regards
--
Rafael Campos
rafael_freedom -
I'm trying to get this working for CW_MCU_v10.0_Linux_SELH on a 64 bit system.
Do I need to rebuild this for 86_64 ?
Where is the source for the Linux code to build the Linux install?
If you could list a brief description of what you did to install on 86_64 ?
The executables are all complaining about
error while loading shared libraries: libusbdm.so.4: cannot open shared object file: No such file or directory
While in the same directory?
Ok - I did something that fixed it (not sure what it was) - and there is apparently a dependanciy on:
libwxgtk2.8-dbg
Running the following :
$ ./TestUSBDM usbdm_dll_initialize()TestUsbdmApp::TestUsbdmApp()TestUsbdmApp::OnInit()TestUsbdmApp::OnInit() - Found 1 devices#
Not clear what input it is expecting or what the '#' means.
I've been making notes on this at:
http://wiki.xtronics.com/index.php/CodeWarrior_on_Linux#USBDM
Dear xtronics,
As you have discovered:
bye