I am as mentioned before looking for alternatives to connect to Wifi/Ethernet that don’t include a SD Card or going outside the Hat format. I also have an interest in making Ethernet available from embedded systems in general. The main reason is however to be able to Connect multiple Ethernet/Wifi Connections.
The block diagram above illustrate the most obvious solution. I replace STM32F405RG with STM32407Vx that is LQFP100 and have the Ethernet port. I need to find an external Phy and RJ45 connector. The advantage of this is that we use the same SPI as backbone. The disadvantage is lack of Wifi.
The 2nd option is to use ESP32 which have all required IO’s. It has Ethernet, Wifi, USB, SPI, CAN and Bluetooth. In fact, if ESP32 was better documented and had more I/O pins it would challenge STM32F405 as core to my system. I already have a Wifi board for this, but have yet to connect CAN and SPI on this + I need to test Ethernet here.
The 3rd option that I recently became aware off was HLK-7688A which is a Linux module with 128Mb RAM and 32 Mb Flash. I am a bit unsure about digging into another Linux computer + I have questions about it’s SPI. The advantage here is that this offers switch functionality as well as a Wifi. Other than that it needs to be tested.
Option 3 can also be used as a separate Ethernet Switch on a Hat as illustrated above. I am not fully convinced I can fit this on a Hat, but it is an interesting option.
The 4th option is to use STM32F405 + Wiznet W5500. This is a hard-wired TCP/IP stack, it lack Wifi and security options. The drawing actually show STM32F407, but never mind.
The 5th option is to use Pro-E10 which is a Linux computer in a RJ45 socket. I will need a STM32F405 in additional and connect on a 460Kbps UART. It has no Wifi option.
ESP32 and HLK-7688A are both very good candidates. At present I still believe I want to stick to ESP32, but I am very curious about HLK-7688A. Both of these have an unknown then it comes to half-duplex high speed SPI. However, the reason why I am not moving on this is because I already have Raspberry PI at core. As for multiple connections I must admit that multiple ESP32 Hat’s will do the trick and they support both CAN, Ethernet, Bluetooth and Wifi + no Linux, meaning they load in a sec and have a very nice MCU architecture.