During normal DisplayPortTM operation, a cable connects from the Sink (monitor) to the Source directly via physical DisplayPort pins. But, what happens when Sink is connected to an Intermediary Device (ID) that connects to the Source? The straightforward approach is to transfer DisplayPort signals from Intermediary Device (ID) to the Source by hard-wiring all DisplayPort signals between them. This approach could be challenging if enough hardware pins are not available to send all the DisplayPort signals across from Intermediary Device to Source.
Thus, the idea disclosed in this disclosure demonstrates a way to successfully transfer all DisplayPort signals using the Controller Area Network (CAN) bus across from the Intermediary Device to the Midplane connector and then to the Source. This approach eliminates the need for expensive hardware pins on the connectors and extends the DisplayPort functionality from back of the Chassis to the front of the Chassis. M4 microcontroller on the ID is utilized to calculate pulse duration. This Pulse Duration generates unique high priority CAN packets and these packets are delivered to the Source device over the CAN bus. This approach provides better user experience without spending extra money on bigger expensive hardware connectors. Also, it utilizes one Source in the back of the enclosure thus removing the need of a more expensive processor on the front of the enclosure that could run Graphical User Interface.
Additionally, ordinary DisplayPort use cases have all pins hard-wired between the Sink and the Source thus they don’t have this problem. But, if there is a need to carry DisplayPort signals over multiple layers of hardware/software then this is one of the solution to be used. Thus, carrying relevant Hot Plug Detect (HPD) signal via high priority CAN messages instead of an actual pin is very useful. This is a more complex problem due to the time sensitivity of pulses generated by HPD signal. This solution utilizes the processing power of another microcontroller to calculate the Pulse Duration and based on the length of the duration sends a unique message to DisplayPort Source to act on