2
\$\begingroup\$

I'm currently working on a design in which I need to transmit serial data over 3 different serial channels. I won't be transmitting data far (1" - 1') but I didn't want to use plain wires. Instead, I thought it may be useful to implement the standard HDMI connector and cable to transmit this data. However, I have a few questions.

1) Are HDMI cables designed for only transmitting data on specific conductors? It appears that some of conductors are 'paired'. I assume I would just need to be cautious on what conductors I place the signals? My serial data will be transmitted much slower than most audio/video data streaming that HDMI is typically used for.

2) I'm going for a compact design, I've thus considered using micro HDMI for the small form factor. Besides the form factor, are there any other differences between micro and standard HDMI connectors/cables?

3) Where are we at with regard to the life time of HDMI cables? I'm trying to create a device that will last a long time. Is HDMI/Mini HDMI/Micro HDMI on there way out any time soon? I know they've been around for close to a decade now, are there any other rising standards that I should be considering?

Thanks!

\$\endgroup\$
  • 6
    \$\begingroup\$ Just from a practical perspective: using a common connector for a completely different application means you risk damaging your device or another, actual HDMI device if they are interconnected. \$\endgroup\$ – user2943160 Jul 21 '16 at 18:48
  • \$\begingroup\$ @user2943160 Hi there, that's a really good point. I assume I would have to smartly place signals on certain conductors to avoid damaging two devices. So another question, is doing what I'm suggesting typically frowned upon? Or simply something to be aware of? \$\endgroup\$ – Izzo Jul 21 '16 at 18:51
  • 1
    \$\begingroup\$ It's rather frowned upon. The high-speed serial signals are low voltage differential signals that would definitely be damaged by 5V. 3.3V DC might also damage them, TX or RX. There are also I2C and power supplied by HDMI. \$\endgroup\$ – user2943160 Jul 21 '16 at 18:53
  • \$\begingroup\$ @user2943160 I see. Any other suggestions on a more 'open' connector type? \$\endgroup\$ – Izzo Jul 21 '16 at 18:56
  • 1
    \$\begingroup\$ @Teague RJ45 is more versatile. See electronics.stackexchange.com/questions/246949/…. But it has less pins available. Anyway, sending SPI/I2C over long distance is a not-so-good idea. \$\endgroup\$ – dim lost faith in SE Jul 21 '16 at 19:13
3
\$\begingroup\$
  1. Yes, they are. Data goes over the data pairs. HDMI uses high speed differential pairs for data.

  2. No difference.

  3. Not really. No replacement for HDMI right now.

But if you are using this commercially, note that using a standard connector for non standard use is fairly bad idea.

\$\endgroup\$
  • 1
    \$\begingroup\$ "But if you are using this commercially, note that using a standard connector for non standard use is fairly bad idea." You told it using a very diplomatic language. Potential user damaging its 4k £3000 TV would probable say it using completely different words :). \$\endgroup\$ – P__J__ Jul 16 '17 at 14:53
2
\$\begingroup\$

It is totally possible, if inadvisable (as mentioned in the question comments, you could damage an HDMI device if you have the two connected) to use an HDMI cable, including a microHDMI cable, to transmit your serial data. Although the cable is designed with most of its conductors as twisted pairs (Data1 - Data3 and clock in the HDMI pinout) for differential signaling, you could still use them for transmission of data. However, some considerations:

  • The HDMI specification already has an I2C bus (pins 15 and 16) that you can use.
  • If you use each wire of a differential pair separately as a data line, you'll get a lot of cross-talk because they have very high capacitance. You could get around this by sending, for example, MOSI on both Data1+ and Data1-. However, this reduces the number of conductors you have available.
    • However, there are also the CEC, Pin 14 (reserved/HEAC+/Utility), and Hot Plug Detect pins, which you could use if you're not worried about accidentally plugging it into a real HDMI port.
  • Shields are not meant for conducting signal and should be dealt with as shields.

Given that, you do still have enough lines. If you use GND and +5v properly, you still have 7 misused data lines available plus SCL/SDA. To answer your earlier questions:

  1. Yes and yes. See above, the main issue is the capacitative cross-talk if you put different signals on the + and - lines.
  2. The pinout looks identical, and the cables should be exactly the same. They're meant to be different form factors for the same interface.
  3. You might want to consider the rise of video over USB-C. This will likely make microHDMI not catch on as well, but I don't think that it will limit the lifetime of your device.
\$\endgroup\$
0
\$\begingroup\$

I happen to be debugging a HDMI interface and have noticed that the signal differential pairs are on 3V common mode. If your serial channels run at 3.3V or lower voltage, I don't see why it would damage the sink (Television) or the source (PC). When you place one signal to both the + and -, there would be no differential voltage on the pair.

Given the above constrains, I'd say using HDMI cable seems to be a great idea.

Though just my opinion.

\$\endgroup\$
0
\$\begingroup\$

What i gather:

  • You want to transmit serial data at low speeds
  • Commercial ready made cables should be long-term available (to get replacement parts?)
  • Connector should be small

Why not use USB-C (over HDMI for reasons mentioned in other answers here) - if i read http://www.ti.com/lit/wp/slly021/slly021.pdf correctly, then it should be possible to build your device in a way that is does not damage connected USB-C devices. You could use it close to the intended use (since it has enough lines which are TX lines to support your purpose).

\$\endgroup\$
  • \$\begingroup\$ You'd still have to implement support for the USB power delivery protocol, as that is apparently used for alterate mode negotiation with type-C. To be really standard compliant you'd have to include support for USB 1.1 too so that you can implement a "billboard device" - a dummy USB class that announces to the user that you plugged in an incompatible device. Seems a bit involved just for sending a few serial protocols... \$\endgroup\$ – jms May 21 '18 at 9:58
  • \$\begingroup\$ No, the point is that AFAIU as long as you do not negotiate something, a lot of lines are deactivated by default. \$\endgroup\$ – Sascha May 21 '18 at 11:42
  • \$\begingroup\$ "The host and device shall use USB Power Delivery Structured Vendor Defined Messages (Structured VDMs) to discover, configure and enter/exit modes to enable Alternate Modes" - USB Type-C Specification Release 1.3, 5.1 Alternate Modes, page 203. You could probably just ignore all that and start sending random protocols down the cable, but it would be out of spec. Granted, that wouldn't be any worse than (mis)using a HDMI interface. \$\endgroup\$ – jms May 21 '18 at 14:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.