Lets talk wifi on the duo 64

So I have been messing with using an esp8266 conncted over uart to the duo and using esp-slip-router. It works but it’s pretty slow getting a ssh session going and I’ve had to alreay reflash the esp8266. I was also thinking of using the usb port for a usb-wifi adaptor.(this is probably the easyest) I’m trying to think of what other ways to add wifi to the duo and I like to hear some other methods.

On the Duo 256 yould likely use SDIO, but on the Duo Classic (64) you’d be giving up the SD card slot. SPI would likely be the next best option, so something like W600 WiFi Module TW-01 | Makerfabs Electronics could work well.

I have some that should be in stock in 2-3 weeks if that is easiest for you!

SPI? that sounds interesting. Is there code for the W600 that turns into a wifi device? How would you setup linux to add the device via SPI? Sockets perhaps?

Yeah that’s the hard bit really. You’d likely need to modify the device tree to add it in, similar to how it works for wlcore as shown here: ti,wlcore,spi.txt - Documentation/devicetree/bindings/net/wireless/ti,wlcore,spi.txt - Linux source code (v4.8) - Bootlin.

As for that WiLink 7 and 8 support in that file, I cannot actually find any of their ICs available with SPI, only the UART or SDIO ones.

This may also be of interest: GitHub - notabucketofspam/ESP8089-SPI: Linux kernel module to use ESP8089 / ESP8266 over SPI. The only issue I know of there is that it needs SDIO, which takes your SD card away and would just leave you with SPI NOR flash if you have any.

The last option is to use SLIP via UART, but then you only get 2Mbps instead of 50Mbps from SPI (as best I recall).

USB would probably be the best way, eg a nano adapter that’s nice and tiny.

Best of luck, and let me know if you get SPI going!

I think without somthing ready made for SPI I might be a little too lost. I just don’t have the networking background to write the driver and make it interface with linux. I will try out a usb as thats the most direct way and after a few days of testing I’m coming around to the uart/esp8266 using SLIP. Sure it’s a little slow right after a restart to start an ssh session, and I had some dns issues to sort out on the linux side but nothing to big. It works ok I guess.

Ah okay good to know. Yeah SPI drivers and modifying device trees can be a pain!

UART to an ESP-01S and SLIP is probably the best way. You’d be limited to ~2Mbps there, but that’s still plenty for most use cases. This would probably do 720p video @ 20fps or 1080p @ 13fps too. Ref: Streaming Bitrate Calculator (depending on compression - H265 recommended if using hardware encoding)