Hello,
I'm using a mcxc144 connected over i2c on a embedded Linux arm64 host. For test purpose I made a firmware that runs well on the mcxc144 and who is able to communicate as a salve on i2c with the Linux host. For now, I flash the firmware with a jlink probe directly from my Windows development machine.
My goal is to flash the mcxc144 directly from the embedded Linux through i2c. As I understand this is possible with the build-in bootloader, but I'm facing some issues.
-When the mcxc144 is erased, it does not seem to start on bootloader (I can't see it on the i2c bus)(I have also tried with the NMI pin high and low but it is the same)
-When my firmware is running, I make an i2c command to force it to run into the bootloader (a simple jump to 0x1c000000). At this point I have two behaviors :
->If I do nothing, I see the mcxc144 on the i2c bus with the address 0x10 (which is the default bootloader address) for 5 seconds (which is the default timeout to enable a bootloader peripheral) and then, nothing, the mcxc144 is frozen.
->During these 5 second, if I send the ping packet, the sending command fail but at the end, the mcxc144 reboot on my firmware.
I have tried to download the SPDSK to use blhost, but it does not support i2c programming.... I have also built an older blhost version that supports i2c but it does the same thing as when I manually send the ping packet.
Well, I thought I would have been an easier task, but I'm a little lost right now.
Any idea or comments ?