Notes on ESP8266 and DD WRT - ThisSmartHouse/mobile-command GitHub Wiki
There was a lot of problems getting ESP8266 chips and MQTT to work properly with a router running DD-WRT. Here is the setup / configuration that eventually works
Important make sure your ESP8266 MQTT client sets a unique client ID. Failure to do that will make things break / failed connections. I recommend using the Wifi.macAddress()
function to generate a unique ID for the chip
The build that presently is the "most current" for DD-WRT on ASUS RT-N66u according to their database is build 40557. This doesn't work. I had to download an experimental build (42803) and use that instead. For the ASUS RT-N66U DD-WRT firmwares for Broadcom K3X work, so things in the download directory like this:
42803 builds compatible with RT-N66U
In my specific setup I have a ASUS RT-N66U router running with the 5ghz channel dedicated to a WAN uplink and the 2.4ghz channel for local client connections.
The Uplink channel is set in client
mode, with the SSID and Security settings matching what I would normally put in to connect to that SSID using my laptop. I also set the mode to N-Only (5ghz)
The 2.4ghz channel is setup as G-Only
, and under advanced settings WMM is disabled. I also set the channel to Auto
The IP address for the router is 10.2.1.1
and assigns IPs in that range via DHCP.
In addition, the WAN ethernet jack itself is assigned to the switch, which is important I think because that is something DD-WRT uses to determine how routing is working.