Add an unpopulated connector for UART output (bypassing the USB port)
juchong opened this issue · 6 comments
Some applications might benefit from not using the USB port (maybe to mitigate vibration). A 3 or 5-pin connector (with or without power) might be useful.
This connector would not have any functionality? I'm not planning on adding support for the CLI over UART
I wasn't sure how "portable" things were between USB and UART. If that's the case, I may make the connector VDD-in-only.
It's doable, but not an insignificant amount of setup. I would have to add another "comm layer" module to setup the hardware and handle receiving and transmitting UART data. Would probably have to set up a DMA, at least for transmission, to get any sort of reasonable performance.
I would also have to modify the underlying script module to add another "transmit handler" and execution context. Would probably switch to a function pointer + comm type enum in that case, which would be a pretty slick implementation, but still would take some doing
Whether it happens or not, it might be good to leave the functionality in the hardware, to begin with. Worst-case, I can set up a footprint to only populate two of the four pins necessary.
This feature is a ”nice-to-have” and will depend entirely on the intended use-case of the final board. I suspect the hardware will only be accessible when the board is used in ”standalone” mode.
This has been incorporated into the rev C board design. This connector also includes the USB sideband line, which can be muxed to any of the IMU DIO ports (allowing the direct passing of a sync or data ready signal back over the USB/UART connection)