Hi,
Check the 1st tab on the programmer (see attached) for versions.
You can update the firmware using the utility provided (JS16 Bootloader or Firmware Updater) with the current firmware. (Not on USB3!!) Some info here:
https://usbdm.sourceforge.io/USBDM_V4.12/USBDM_JS16/html/index.html
It is not surprising that the BDM would be phantom powered from the target. The JS16 version uses a very cheap interface chip not intended for any kind of isolation. The clamp diodes on the I/O may provide a current path. You get what you pay for It really depends on the details of how the interface was wired.
It has also unlikely the actual chip specified was used (a particular manufacturer).
You can check the original hardware on:
https://github.com/podonoghue/usbdm-hcs08
https://raw.githubusercontent.com/podonoghue/usbdm-hcs08/master/Hardware/USBDM_SWD_SER_JS16CWJ/USBDM...
The connection to the target would be through the usual 6-pin BDM header - however I note that apparently there is an alternative pin-out used in China? (at least most of the BDMs from there support two different headers.) I suggest you physically check the wiring as it is easy to damage the BDM pins. See the schematic above for the expected pin-out). There are only 4 pins required Gnd, Vcc, BGND and RESET. The last is optional on some chips - I'm too lazy to check CFV1.
You can use the TCL language to interface with the BDM directly.
See UsbdmScript. '?' will get you a terse command list. Not really intended to user but you're welcome to play.
USBDMScript incorporating TCL - Copyright(c) 2011
Press ? for help
===============================================================
usbdm_rc.tcl
================
This file is 'sourced' whenever usbdmScript.exe is executed
Add your own custom commands
Type ? for command summary
Typical sequence:
settarget arm
openbdm ;#can add number of reported BDM if needed
connect
regs
===============================================================
UsbdmScript [~] settarget CFV1
USBDM DLL Version = 4.12.1.320
BDM List:
0 - USBDM-JS16-0001 : USBDM HCS08,HCS12,Coldfire-V1 BDM
Found 1 devices
:setTarget CFV1
UsbdmScript [~] openbdm
Opening USBDM-JS16-0001
BDM Version = HW=8D, SW=4C
UsbdmScript [~] connect
:connect
BDM status => Ackn, Speed-sync, Vpp-Off, Vdd-External, RSTO=1, No Reset, CFVx-running
Speed = 4359 kHz (1762 ticks, sync=29.4 us)
Ackn, Speed-sync, Vpp-Off, Vdd-External, RSTO=1, No Reset, CFVx-running
UsbdmScript [~] gs
POWER => Vdd-External
Target status reg => (0x85) = HALT,DONE/MASS,CLKSW, ENBDM,
BDM status => Ackn, Speed-sync, Vpp-Off, Vdd-External, RSTO=1, No Reset, CFVx-running
Speed = 4359 kHz (1762 ticks, sync=29.4 us)
133
UsbdmScript [~]
I tested a JS16 BDM (current F/W and S/W) with a MCF51JE256 using a test image (256K of random data). This was a round-trip test: Program image using programmer, read-back using MemoryDump and verify in the programmer. This was on Linux.
I have no idea what " target shuts off until power is cycled." actually means. If you mean the target stops executing and is put in debug mode then that to be expected. Debug mode may persist over reset as it is useful to debug low-power resets etc. I forget the details on CFV1.
bye