For those not in embedded: the SO (not S0) pin is commonly called MISO (Master In Slave Out) in a SPI bus; it is the pin on which the SPI device (SPI flash) sends data to the controller (ethernet bridge). The CS (Chip Select) pin of the device, on the other hand, is supposed to be held at logic low during an entire SPI transaction. Tying a pin that should transition between high and low to a pin that should stay low would likely screw up the communication and make the ethernet bridge think a SPI flash is not there.
I thought the art of making wildly inconvenient UX assumptions on behalf of users had largely stayed in software, eg. websites doing “copied to clipboard!” completely unprovoked overwriting whatever you have kept in system clipboard. A few years ago I had a Realtek wifi adapter that would sometimes do this too on Windows though at least it didn’t try to hide the network device. It’s hilarious that this design trend has even found its way into silicon, though I suspect it’s rarer these days now.
Years ago, I went through ~3 wireless mice in as many months because the left click button would keep failing. Not completely failing, it would just develop a bounce, where a single click would register as a dozen or so. When the 3rd failed, I got tired of constantly buying new ones, and decided to try and solve it is software; how hard can a bit of debounce logic really be? Several days of digging through the Linux input stack later, I gave up, opened up the mouse, and soldered a spare capacitor I had lying around to the input button. Mouse has been working flawlessly to this day.
this is a very common chip that’s sold everywhere for as low as 4$ for that entire dongle at retail. If you touch the controller, at full speed it gets crazy hot on this one. The part I struggled with was that I was trying to install openwrt when raspberry pi 4b was new and use this as the wan port as my isp was limited to 40mbps. But the chip got so hot that eventually I gave up after putting on a tiny heatsink because the plastic casing simply offers no heat output. Mine didn’t have this SPI chip on it so both Linux and openwrt (with drivers) worked fine and it showed up as an additional Ethernet port in ip link. The usb cables are so thin I couldn’t leave it just like that cause at any point it would break and it eventually did break I think I don’t know where it is now. I ended up getting a tp link usb adapter eventually but in general usb Ethernet for anything other than just quick management of some console is not recommended if you want to do serious routing in my experience. The tplink one comes with Realtek which is just ‘okay’. Pcie Ethernet intel cards offer cpu offloading. I’m not sure if that can be achieved over usb. Heat is another problem as the casing is the limitation on it which is not a problem on pci cards or motherboards.
I thought the art of making wildly inconvenient UX assumptions on behalf of users had largely stayed in software, eg. websites doing “copied to clipboard!” completely unprovoked overwriting whatever you have kept in system clipboard. A few years ago I had a Realtek wifi adapter that would sometimes do this too on Windows though at least it didn’t try to hide the network device. It’s hilarious that this design trend has even found its way into silicon, though I suspect it’s rarer these days now.