whatever comes in the CDC must be passed on to the LPC2103 faithfully
up until you want to get into bootloader mode, then it doesn't really matter anymore.
<escape_guard_time><escape_sequence><escape_guard_time>
guard time = whatever you want
escape sequence = whatever you want
so it could be like a modem-
| 1s idle time | +++ | 1s idle time |
stm32 is now in 'command mode' where you can communicate with it
1. put stm32 in command mode
2. tell stm32 to get lpc2103 reset into bootloader
3. exit command mode (back to 'data' mode)
4. use whatever you have to program lpc2103
5. if lpc bootloader does not have built-in reset command
put stm32 back in 'command' mode and tell it to reset the lpc
stm32 back to 'data' mode
modems have been moving big amounts of data for a long time, and I don't recall inadvertant command mode being a problem
of course, this only works if the communicating micro is separate from the target micro, which it is in this case
just a thought