I have a FRDM-K22F development board with an MCU flash-resident bootloader. I'm writing an application to utilize the flash commands described in the MCU Bootloader v2.5.0 Reference manual. My issue is that when I place the board into bootloader mode (via holding reset during power on), I can no longer communicate over the OpenSDA Serial Port (it no longer appears on a list of open ports). I had read something about redirecting the UART signal, but had no luck.
When you holding reset during power on, you put openSDA into bootloader mode, not the K22. The openSDA virtual UART need openSDA working in normal mode.
If you flash bootloader code into K22 and reset it, K22 is already in bootloader mode.
Thanks for the correction. Does this mean I'm already in bootloader mode when I power on? or that I need to flash another copy of the boot loader to the app vector table address? (I suspect the first)
If you haven't downloaded user application, the MCU of course will execute bootloader. If you have download application correctly, there is a diagram shows how bootloader will do when reset or power on. Please see Figure 2-1 Kinetis bootloader start-up flowchart in kinetis bootloader reference manual. There is a BCA area in user application. If it is empty, the bootloader will act by default(section 2.3 is the detail of BCA).
You can also modify the bootloader by yourself. For example, use a gpio to control the MCU stay in bootloader or jump to application.