cancel
Showing results for 
Search instead for 
Did you mean: 

H7-ETH-USB bridge dilemma - electrical connections

LCE
Principal

Hello circuit designers and PCB guys,

I have a problem of how to connect the H7 ethernet via a PHY and a ethernet USB bridge.

  • to the outside world:
    • ethernet connection via RJ45 to host
    • USB connection to host (e.g. laptop without ethernet)
  • I must NOT use the H7's USB interface, another USB driver is out of the question (says the SW department)
  • with a ethernet-USB bridge the H7-device looks like any other ethernet device, no USB driver needed

So I tested Microchip's LAN9512 ethernet-USB bridge on their dev board, that works great, see attached picture.

Problem:

I have to place the LAN9512 on the same PCB, and I must get rid of that extra RJ45/magnetics + cable (the red parts in the attached pic).

I must use as few components as possible, but how should I wire these parts without making it too dirty (it must work reliably and has to pass a EMI test someday...).

  • Possibly the cleanest solution might be using a multi-port PHY like the LAN9303 (anybody used that?), and switching ports when USB is attached.

  • The not so clean version would be to place the USB's ethernet transformer very close to the regular ethernet transformer at the RJ45 (see green line with the "?"). But as we're having 125 MHz signals there and driving 2 transformers all of a sudden, this sounds like a stupid idea...

Any thoughts on that or other ideas?

Or experience with multiport PHYs like the LAN9303?

11 REPLIES 11
LCE
Principal

Any ideas?

Bob S
Principal

Magnetics are only needed for going off-board over (potentially) long distances and to devices with (potentially) different ground references. When both ends on are the same PCB you can usually capacitive couple the signals. You may need 50 ohm pullups depending on whether the PHY is voltage mode or current mode. I think the LAN 8742 is current mode, but I don't recall for sure. If the sample schematics for the PHY show pullups on the RX/TX signals going to the magnetics then they are current mode drivers and you will need the pullups.

Pavel A.
Evangelist III

* What kind of software is on the USB host side? Is that a Linux?

* How your "SW department" expects to see this device? as RNDIS? CDC? Could they deal with some network over serial protocol, such as SLIP?

 (yes, the latter means just use a cheap UART-TTL-USB adapter).

  • Host side: Windows
  • the SW wants to see / use either
    • the old Cypress driver (out of the question, unless I fiddle in the FX2LP or similar), or
    • ethernet connection, which the LAN9512 does - quite nicely, I'm using the dev board with my private laptop which doesn't have ethernet

So the ETH-USB bridge solution (LAN9512) definitely has also the advantage that the STM32 has only ETH as interface.

But how to wire that?

If it must be directly connected to the host USB, try to find a PHY-less analog of LAN9512 which also has a network (Ethernet) driver for Windows.

Else use any COTS USB to ethernet adapter for Windows, with a standard RJ45. There are lots of them. Wire a standard PHY with RJ45 up to STM32. IMHO the best variant, easy to find parts, easy to test.

Or remind to the "SW" that SLIP is not dead yet.

Or, since you've mentioned the Cypress USB (FX2LP), the host interface can be a "generic" USB device, then their requirement not to use the USB of STM32 does not look well based.

It must be connected directly, no external adapters. :(

Did you not see the answer that I handed you (on a silver platter)? Or does that somehow not address your issue? That is how Ethernet signals are passed over backplanes like VPX, though VPX is usually passing 1000Base-KX or the like. This same method works for 100Base-T PHY TX/RX pairs.

Search the web for "transformerless ethernet". You will find app notes from Microchip and TI among others.

@Bob S​ Sorry for not replying directly earlier, thanks for your response.

So the capacitive coupling might be a solution from PHY to PHY.

But I assume I would "overload" the "main" PHY (like LAN8742) / line by connecting its ethernet side to a transformer (and RJ45 and 100m CAT...) and the USB-bridge PHY via the caps?

That's my main question right now, if anybody's done that successfully, or if I need a "dual PHY" like the LAN9303.