As a project gets more complicated, some kind of internal communication network is often used to that all of the various modules and sensors can talk with each other. For hardware hackers like us, that usually means SPI, I2C, or maybe even good old fashioned UART. But if you’re pushing a lot of data around, like live video feeds from multiple cameras, you’ll need something a bit faster than that.
Which is why [Josh Elijah] has created the SwitchBlox Nano, a three port 10/100 Ethernet switch that fits on a one inch square PCB. All you need to do is provide it with power, with a generous input range of 5 to 50 volts, connect your devices to the Molex Picoblade connectors on the board, and away you go. There’s even a 5 V 1 A regulated output you can use to run your downstream devices.
If you’ve got a feeling that you’ve seen something very similar on these pages earlier in the year, you’re not imagining things. Back in April we covered the original five port SwitchBlox in a post that garnered quite a bit of attention. In fact, [Josh] tells us that the design of this new switch was driven largely by the feedback he got from Hackaday readers. The Nano is not only smaller and cheaper than the original, but now maintains full electrical isolation between each port.
The average Hackaday reader is as knowledgeable as they are opinionated, and we’re glad [Josh] was able to put the feedback he received to practical use. We’re proud that our community has had a hand in refining successful commercial products like the Arduboy handheld game system and the Mooltipass hardware password keeper. Now it looks like we can add a tiny Ethernet switch to the list of gadgets we’ve helped push up the hill. Maybe we should get a stamp or something…
41 thoughts on “Tiny Ethernet Switch Gets Even Smaller”
A 5 port 10/100 Ethernet switch IC from Microchip will cost you under $10 from Digikey or Mouser, so $60 for having it mounted to a PCB seems a bit steep. Why not buy the IC and mount it to your own PCB with, I assume, some of the other parts for your project? Or spend $15 for a packaged Netgear 5-port switch from Amazon.
I get that this is a super-tiny implementation, but aside from that, there are several much less expensive ways of adding the same function to your project.
If you need Ethernet to be tiny, you’re probably doing something exotic anyway.
I wish they’d just hurry up and put single pair Ethernet in everything. It probably would have been better than USB C for the majority or uses.
Yes. IIRC the 1Gbps ethernet has 4 pairs providing 250Mbps full-duplex each. So with modified ethernet drivers in Linux kernel it might be possible to use single ethernet card to provide full-duplex 250Mbps links to 4 different devices. Or reuse old phone 2-wire cabling to distribute ethernet in your home (at short distances due to lack of proper twisting).
No, the distribution of bits to the 4 pairs is designed all the way down to the deepest levels of the silicon of an Ethernet controller. It’s been a while since I’ve been quite that deep into the spec so don’t take my numbers as gospel, but IIRC 64-bit blocks of the packet are taken and shuffled extensively and converted in several ways that create redundancy to overcome errors, and then distributed across the 4 channels to be transmitted simultaneously and in-separably.
There is no possible way for any software, especially the kernel to separate them.
There *were* modified Ethernet PHYs that worked on a single pair phone cable (probably used 125MHz/channel signaling stolen from 1GbE and extra redundancy), but as far as I know those disappeared a long time ago (my exposure to them was 20+ years ago).
Single pair Ethernet has made a comeback recently thanks to automotive. 100Base-T1 and 1000Base-T1. The 100 megabit version started as Broadcom’s proprietary BroadR-Reach – the formally standardized variant is not that different.
Connector requirements for gigabit single pair are really exotic though… TE MateNET connectors are made of weapons-grade unobtainium.
If you want to do home networking over two wire you might want to look at homeplugs, not as small but can be hacked to work without the power lines.
Don’t you mean 4 conductor? I believe gig Ethernet uses 2 pairs of conductors. Or am I just plain wrong?
10/100 uses 2 pairs, 1G uses all four pairs for a total of all 8 conductors in the cable
on top of all that, 100MB uses the 2 separate pairs for receive and transmit respectively, 1G uses all 4 pairs in duplex mode at the same time…(which BTW is the reason you can’t use a passive wire tap to spy on 1G, you need 2 NICs)
Not to mention cheaper! Between DHCP, existing protocols for discovery, and universal support – why don’t we use ethernet over usb, period? With a new fancy connector, and no working group to demand yearly fees for a unique vendor id with way too much address space (that you aren’t “allowed” to subdivide)
– 1 pair of Tx/Rx pairs are running at much lower rates (100Mbps) than USB3 only PHY or even USB 2.0 (half duplex)
– Ethernet has more overheads unless you strip down to sending raw packets or UDP. USB over IP is a possibility. The protocol and buffering requirement is a bit higher than the USB peripheral. On the other hand, it is peer to peer not host/perihperals.
– Ethernet PHY also consume quite a bit of power than a LVDS -ish trx/rx, but can deal with much longer distances (100m) vs USB
USB 3 or newer isn’t ideal as it is a CF designed by committees and lts a lot more complicated than what it needs to be. The older 2.0 stuff is actually not as bad. I do agree with the need to do away with VID/PID part.
There is single-pair Ethernet in automotive applications: http://www.opensig.org/
However, it’s an automotive spec targeting very harsh environments, so it requires much more complex silicon, and thus is going to be more expensive than conventional 4-pair Ethernet. It’s also highly unlikely to ever scale above 1Gbps, compared to 5-20Gbps for USB-C.
Honestly, I’m not really sure what the use case is, because who (except very special cases for which e.g. this 3-port switch is designed) wouldn’t just use Cat6 and call it a day..?
20Gbps seems to only be useful for video streaming. Even cheap ish SSDs are nowhere near that speed.
Having one connector for charging your phone and downloading some pictures, and connecting a display seems somewhat useful, but a phone isn’t a good replacement for a laptop, and if you’re just showing people your vacation pictures, Chromecast does that.
I’d rather have more reliability, and cheaper cables, and interop with IP networks, than 5GBps, and I think a lot of other people would too.
Even HDMI seems suspiciously like something that could probably just rub over Cat7 instead. Most displays could be PoE powered! And multiple displays would just mean a fast hub and half the frame rate. I think dual 4k@60hz fits just fine in a 40Gb link.
A lot of the expensive complex silicon seems to only be expensive because it’s not a universal standard we make billions of. WiFi needs some real complex silicon, and it’s dirt cheap. But everyone always tried to cut costs in standards instead of saying “Let’s just go for it and make a billion of these even though they’re complicated”.
Likewise. I found a few microchip ICs that can do it over coax. I might do another switch that puts out the ethernet ports all on SPI.
And for that $15 it’ll be 1Gb.
10base-T and 100base-T are basically the same thing, protocol-wise. Gigabit is not. It’s easy to get fooled because 1000base-T uses the same cable, but if you don’t need the gigabit bandwidth, you’re nuts using a gigabit-capable switch IC. The power consumption is ludicrously higher. You can easily get a 10/100 switch which burns under 1W at full utilization, for instance. An off-the-shelf gigabit switch’s going to be 5-10W, easily.
The vendors are keeping the info for most if not all1Gb switches as trade secret and requires NDA even to get hold of the datasheet.
Not quite; SwitchBlox and SwitchBlox Nano can only do 10/100M. I’m developing a Gigabit version (GigaBlox) now.
I think the “aside from that” part is the whole reason this exists – it saves you from having to implement your own extremely compact ethernet switch. If you’re building some very low volume thing, paying $60 for a designed/built/tested item with a low-volume BoM of ~$20 is a fantastic deal. I could easily see stuffing something like this into a one-off robot or something.
It’s one thing for a hobby, but at work $60 is one third of what is charged for an hour of my time. Just going through the PO Request process could match the cost. So $60 for an item used a few times can be quite the bargain.
Right. But that’s in the commercial market. There’s a whole separate world of parts that are designed and priced for that which we rarely see on hobbyist sites like HaD. Can you imagine if HaD’s “with an Arduino” articles were replaced with “with a PLC” ones? It might be more relevant to someone building and maintaining machines in a factory but not very interesting to people trying to do things on a hobbyist budget.
I speak from similar experience. I implemented (not difficult, the schematics are in the datasheet) a USB hub on my controller PCB instead of buying a cheap one and zip tying it into the chassis of the equipment. If I needed something like this, I would probably do the same thing.
Cables and connectors are a huge cost item, and also a high probability failure point, so if you can eliminate them, you increase the reliability of your product.
Re: the PO cost…I’d have to set up a new vendor for this mini-switch PCB, so that would cost me far more than designing the switch IC (from Digikey) onto the PCB. I haven’t checked, but I would assume there’s a suggested applications circuit and PCB layout available from Microchip.
For work, I wouldn’t use something that is not fully certified or from a an approved vendors that have some long term supply plans for their parts. This $50 board is useless.
That is really going to depend on what you work on and where you work.
Certainly is a consideration though the relative simplicity and documentation make this less of an issue on this I guess.. If it ever becomes unobtainable a drop in replacement isn’t going to be that much work (and why do that work before you need to) and the connectors you committed to on your other parts are not likely to evaporate.
So if the tiny size is what you need you shouldn’t worry about choosing this part. Though if its not why pay such a premium when for relative pennies you can get the normal desktop box sized equivalent?
I can agree but only under the pretense that my project was going to involve 0 PCB otherwise. If my project needs a PCB anyway then slapping this on in addition is really 0 cost. So I both need a really tiny 5 port switch, and I need to not be already fabricating a PCB. It definitely has a niche market.
Yeah that’s sort of the use case… That and modular robots. It is a bit niche but hopefully it finds good use; I guess we’ll know if they all sell out!
So those are Molex Picoblade connectors. I see it looks like about 7 of them could fit across a quarter so that’s what, a little over 3mm wide the short way? I wonder how hard those are to use. The smallest thing I have ever crimped were the JST connectors on a 3d printer controller. I don’t have them on me right now to measure but they must have been bigger than these Picoblade connectors and yet they were small enough to require reading glasses and that’s with 20/20 vision.
Well, anyway. I’m not just trying to be negative about it. I’m honestly curious. What is it like to crimp those things?
I looked up picoblade and the connectors use 28 AWG wire, so crimping is probably about the same difficulty as anything else.
Honestly it’s a pain, so I never do it manually. I have a factory that does them for me in bulk. Anyway the cable sets are included, but I am thinking of offering a custom cable service.
I have a prototyped and production ready design sitting on my desk for a similar device to this, it’s a 4 port 10/100 managed ethernet switch as a raspberry pi hat. The switch is controllable via SPI on the pi so you can do port mirroring and switch individual ports on and off.
I designed it as a “why not” project and showed it to a few of the usual suspects to see if anyone would pick it up to sell but had little interest due to the price being relatively high compared to a cheap 4 port off the shelf switch.
The port mirroring means you could install wireshark on it and use it as a remote packet sniffer, the port switching allows you to daisy chain the devices and then assign them IP addresses based on their location in the chain, I’m sure there are plenty more uses I haven’t thought of yet!
Retail price for something like tindie would be 60gbp/70usd. Is there much interest from the community in something like this?
I’m really struggling to figure out a use case here.
Generally if I need to run sensors that aren’t going to work over SPI I’m looking at CAN. Granted, this can run a bit faster, but I’m having a hard time coming up with a scenario where I need full ethernet in a super-small form factor.
Anyone have any ideas?
A 3 port switch is also not very useful. In most situations 1 port will be used to connect to the network, 1 port will be connected to whatever was originally connected to that network cable, leaving just one new available port.
I doubt that.
You are thinking of computers and peripherals attached to a building wide LAN. Why would you need miniaturization like this for a project like that? This seems to me more like a way to connect something like an ip webcam in the “head” of a robot, and maybe some sort of ethernet enabled motor controller or other set of sensors to an SBC somewhere else within the chassis. If there is any connection to the building LAN involved it’s probably via WiFi because who wants their robot dragging an ethernet cable around behind it?
Although I suppose if clustering is your thing a miniature switch like this might go well with a stack of PIs inside of a rack mount case but in that case you are right. You would need more ports.
This is a common use in industry. We do a lot of 3 port taps for a common trunk line or ring. Ics like this may live in their own tap or on the board of your device to provide a 2 port solution with the 3rd port attached to the device communications ic.
I’d use this device for net work cameras…. Which I’d make with rpi modules, in my car. Sadly this wouldn’t offer the low latency I need for the dash, but I could easily add this to my rpi dvr in my dash for recording video over network.
Would 10/100M be fast enough for the cameras you’re using?
for full-HD CCTV with h265 – 100Mb/s is plenty. 4k? Prob not enough.
no need to add magnet?
The ethernet magnetics (transformers) are on the board, I used tiny surface mount versions rather than the usual big bulky ones.
I dont understand why these articles dont include the other options available to makers, I and others mentioned them before in the previous article; its almost like an advertisement.
There is well tested ethernet switch modules from the usual sources for under $12USD shipped.
Such as https://www.aliexpress.com/item/32893647633.html which is 38x38mm (sure not the 25mm this project but for 1/6th the price why not.
Or why not gigabit version
https://www.aliexpress.com/item/4001141159597.html in the same size for $25usd shipped
it working offgrid?
solar panel or other way?
Please be kind and respectful to help make the comments section excellent. (Comment Policy)