I'm running a debug console over the USB virtual COM port. In other words, I have this line in my main function:
DbgConsole_Init((uint32_t)NULL, (uint32_t)NULL, DEBUG_CONSOLE_DEVICE_TYPE_USBCDC, (uint32_t)NULL);
I am able to send data between the MCU and PC, over this virtual COM port, with both USB cables plugged in.
Once the firmware is loaded onto the FRDM-K22F board, only the "k22f micro-USB" connection (diagram below) should be necessary for communication with the PC, no? (we are only communicating over this cable)
Yet strangely, I am no longer able to communicate over the virtual com port, the "k22f micro-USB" port, when the "OpenSDAv2Debug micro-USB" is unplugged.
When I plug in a power-only micro-USB cable to the "OpenSDAv2Debug micro-USB", or leave it unplugged, I am no longer able to communicate.
When I shunt J22, the "5V supply enable for USB host mode", I am able to communicate over the "k22f micro-USB" connection. Strange - I don't recall setting up the USB in host mode in my firmware.
This makes little sense to me. Could anyone provide me with more details, on why either that second USB connection, or shunting J22, is necessary?