I have a requirement for a tiny, tiny module. WIZnet make the W5500 chip, the W7100A chip, and the (even better) W7500P chip with on-board PHY. They are interesting chips because they are 64QFN 7mm² - tiny! I want this so small that I might not even use a MAGJACK: I could solder UTP direct to the circuit board.
To describe my requirements, I will go back to first principles:
Here is a Device connected to a PC with Ethernet:
+-----+ +----+ | Dev | ===================== | PC | +-----+ +----+
Here is the same Device connected to the same PC with Ethernet-to-Serial (E2S) and Serial-to-Ethernet (S2E) adapters (with cross-over cable). The Device and PC only “see” that the link is now slower:
+----+ +-----+ +-----+ +----+ | Dev| == | E2S | -X- | S2E | == | PC | +----+ +-----+ +-----+ +----+
Yes, the E2S and S2E adapters are identical, just pointing the opposite way! I was going to use W7500Ps for this.
And here is what I need:
+-----+ +-----+ +-------+ +-------+ +-----+ +----+ | Dev | == | E2S | -- | Radio | . . . | Radio | -- | S2E | == | PC | +-----+ +-----+ +-------+ +-------+ +-----+ +----+
I have the radios, but they are already nearly too large, so I need the E2S/S2E to be tiny! I also do not need them to understand TCP/IP (which WIZnet chips can - but I can use their MACRAW mode).
I can easily write firmware that:
- On Ethernet RX, convert packets to a PPP-like payload and send them out the (TTL) UART;
- On UART RX, convert them from PPP and send them to the Ethernet.
I do not need any of the high-level PPP protocol: no LCP; no authentication; no multilink. All I need is the HDLC-like framing, since I will only be talking to other identical devices on the same radio net. But that means that I need to program the firmware, and I don’t believe that I can reprogram the WIZ610io / WIZ810Sio / WIZ850io cores?
To be clear: this is NOT a PPPoE system, and nor does it need to be. It is exactly the reverse: the Ethernet Device and PC don’t “know” that the “cable” is in fact a serial Radio link.
Although any hardwired TCP/IP chip is overkill, WIZnet chips are small (I could only find 100-pin alternatives). I was going to use the W7100A (I’ve programmed 8051s for years), but the PHY on the W7500P is attractive (and I’ve programmed Cortex M chips before).