In our system, we are using the MC9S08JM60 as the OSBDM interface to an MC9S12P128.
The target processor gives the correct chip ID to the JM60, but when the JM60 tries to erase the target, it reports an error. Is there anyone you know that could suggest something to try? The 9S12 is obviously the target.
When the Program FLASH button is pressed on the PC program, OpenBDM commands are sent to the S08JM60 microcontroller. The OpenBDM commands are converted to commands to send to the MC9S12P128 over the BKGD connection. The first few BKGD commands verify that the target chip is in the MC9S12 family. The next set of commands attempt to program the MC9S12's FLASH module to setup an erase operation. This is where the problem occurs. One of the BKGD commands attempts to access the wrong register, This results in a failure which is reported back to the PC program, which then aborts the operation.
I know why the operation terminates, I do not know who made the mistake. It could be the PC program or it could be in the S08JM60 code. At this time I do not know enough about the OpenBDM standard to know if the PC program or the S08JM60 code is specifying the wrong register address. I only know that one of them is.