Since we moved into our house 10 years ago, I’ve had the main router for the house in the attic and around 7 years ago, I added a secondary router on top of kitchen cabinets.  The original router went in the attic on the principal that having it high in the house would help with wireless signal access but we had problems in a few areas of the house that were the furthest from the attic location.  (I suspect a tin ceiling in one room was partly to blame for signal strength problems.)  There had been a number of routers in these two locations as I upgraded in technology and router hardware died.  Before I began the changes described here, the router in the attic was a Netgear WNDR3700 and the one in the kitchen was a Linksys WRT54G, both running DD-WRT firmware.  Now that we have a family room on the first floor, I wanted to change the house’s network topology.

First, rather than have the network wire come from the cable modem in the basement and go to the attic, then come back down to the kitchen, I thought it would make more sense for the network wire to go from the cable modem to the family room closet and then on to the attic.  (It probably doesn’t matter at all since network traffic is pretty efficient but my engineer brain didn’t like the idea of a wasteful route for network packets!)  When we were working on the family room closet and had walls open, I had run the appropriate wires so I could make the change.

Next, I wanted to replace the old WRT54G with a newer router.  At the time the WRT54G went into service, we only had WiFi B devices in the house but now we have WiFi N devices too.  I thought the WNDR3700 was working well so I got a second one of those (albeit a much newer version of the hardware).

Flashing the WNDR3700 v4 router with DD-WRT proved to be a real challenge.  I followed the instructions for my router but when I tried to upload the DD-WRT firmware to the router, it failed with the error “The CGI script took too long to produce a response” or it would just end with an empty page.  I found a post in the DD-WRT forum that described the problem I was having.  It appears as though the firmware image for the v4 hardware is much larger than for the v2 hardware and the router gives up while waiting to upload that large firmware.  The tricky thing is that the stock firmware needs to upload the DD-WRT firmware but the stock firmware is only programmed to expect stock firmware size.  And since the DD-WRT firmware is so much larger, it gives up waiting.  The solution was to use TFTP as described by tatsuya46 in this post.  Then, the router rebooted in a restart loop – it needed to be powered off and then powered on to break out of the reset loop.  And finally, I did still need to do the “30/30/30 Reset” as described in the instructions

This new router went in the family room closet and I left the existing WNDR3700 in the attic.  I copied over all of the settings from the existing WNDR3700 to the new one.  Every port forward, every WiFi setting, every little detail.  It took probably an hour or so and it was worth it – I really wanted to make sure the newer hardware was the device doing the main workload.  Then, with all the changes copied over, I went to the old, now secondary router and switched the WAN Connection Type on the Basic Setup tab in Setup from “Automatic Configuration – DHCP” to “Disabled” and I switched Operating Mode on the Advanced Routing tab in Setup from Gateway to Router.  I also disabled the DHCP Server on the Basic Setup tab.  That effectively changes the role of the older router to now be subservient to the newer one.  The old one will function as an access point only while the new one handles being an access point in addition to the main router role.

That all went well but I had some lingering WiFi connection issues from my iPhone.  Periodically the phone would say that it had an incorrect WiFi password.  And interestingly, that would happen most often in the places that I know had problems with WiFi coverage before I added the second router.  In other words, I think my iPhone may have been relying upon only the older router in the attic.  I double-checked Wireless security in the router setup and both matched.  At least for “ath0” they matched.  Ah-ha – I hadn’t paid much attention to “ath1” because when I set up the original router, I didn’t have any devices operating at the 5 Ghz.  I did set up the security on it but I hadn’t matched Wireless Channel – I was leaving it on Auto.  And the password I was using for ath1 was different than the password I was using for ath0.  So I switched the channel to one particular channel on both devices and updated the password for ath1 to match that of ath0 and now the iPhone WiFi connectivity appears to be pretty good.  I used the Network Multimeter app to check for best locations in the house and found coverage to be good everywhere I would need it.  (Note that the app only tests data throughput and not actual signal strength because it Apple doesn’t allow access to the part of the device that would tell you about actual signal strength.)

EDIT (18-May-2015):  The WiFi signal flakiness returned – or probably more accurate, it had never actually gone away.  We discovered the problem on other devices too besides my iPhone.  In frustration, I changed the network name for the 5 GHz antenna so the two SSIDs were different and that improved things greatly.  But then each wireless device needed to have a connection setup for both SSID and would only be connected to one a time, of course.  What I really wanted was one SSID and let the device figure out which signal was strongest for the one SSID.  When I returned the two SSID to being the same name, the WiFi flakiness returned.  But this time, I changed more of the Wireless settings and I think I have a stable fix now.  It’s been a couple of weeks and WiFi is fast and reliable – finally.

For ath0, I have changed the Wireless Network Mode to “BG-Mixed”, Channel Width is “Full (20 MHz)”, and I’ve set a particular channel.  For ath1, the Wireless Network Mode is “N-only”, the Channel Width is “Full (20 MHz)”, and I’ve set a particular channel.  Both ath0 and ath1 share the same SSID.  For Wireless Security on ath0, I have WEP as I always have.  But for ath1, I have Security Mode set to “WPA2 Personal”, WPA Algorithms to “AES”, and the shared key is the same as the WEP Key that is the default transmit key on ath0.  I have both of my routers now set with exactly the same settings so I can roam in the house seamlessly from one to the other.

I had tried WPA Personal at first and that seemed to have worked but I discovered that the flakiness returned which is why I ended up with WPA2 Personal.  According to the Qualcomm Atheros settings page on the DD-WRT wiki, WPA2 is the only way to go.  It says that if you don’t use the WPA2, the result will be an automatic shift down to Wireless A/G and I believe that’s the problem I was having.  Since I had both ath0 and at1 with full “mixed” mode, and both with the same SSID, when N failed due to using the non-preferred security, it dropped to G and then there was a conflict with the two antenna operating at the same WiFi mode of G.  By splitting them out to different modes and improving security settings, now I can operate one on B&G and one on N reliably.  It also worked when the antenna were different SSID but that only masked the problem of not holding an “N” connection on ath1 so regardless of SSID, to get N speeds, you need WPA2.

One final note about WPA2 – the iPhone auto config doesn’t like it.  Apparently iOS sees WPA2 as WPA and therefore, the connection is refused by the router.  However, if you tell your iPhone to forget that network and then configure it manually, you are allowed to choose WPA2 and the connection is successful.  That’s a bit of a bummer since you can’t just tell visiting friends what your WiFi password is and have them connect easily.  But it does appear to be Apple’s fault (or at least an Apple vs. Netgear thing) and I couldn’t find a better solution so it’s out of my hands.


5 Responses to “Router Replacement and DD-WRT Setup On WNDR3700 v4”

  1. BikingBrian says:

    I have a WNDR3700v4 downstairs by the cable modem and a WNDR4300 upstairs in the home office. I don’t recall any problems with getting DD-WRT installed on either router. On another note, the upstairs router used to be the primary one, but like you I also switched the downstairs one to be the main one. But I had a “real” reason for that – I could put my longest lasting UPS downstairs and maybe still have a functioning network in a power outage! 🙂

  2. Ken says:

    Did you just physically swap them to change their locations or did you do as I did and change the settings so you changed their roles while leaving them in place?

    When did you do the DD-WRT load on WNDR3700v4? I wonder if the firmware has gotten larger in a recent build. Here’s the output from the “about” on my v4 router: “DD-WRT v24-sp2 (11/07/14) std
    (SVN revision 25279)”. Note that if you did your initial firmware at a different time and then upgraded to that version, the problem wouldn’t be the same since it is only the original v4 firmware that may have the limitation about firmware upload size. And an earlier version of DD-WRT firmware was probably smaller which wouldn’t have triggered the problem.

  3. BikingBrian says:

    The answer to your first question is “not applicable” – I used to just have a single router upstairs, but when that died I decided to get routers for both upstairs and downstairs.

    I don’t recall when I did the load, but I indeed have an older version of the firmware: “DD-WRT v24-sp2 (05/27/14) std (SVN revision 24160)”. I’m pretty happy with it, so I don’t see the need to upgrade.

    • Ken says:

      FYI, I have been having general network flakiness problems with the new router. Tablets, phones, and a laptop were all showing really poor performance. I did some digging today and discovered some reports that certain security settings actually make the wireless signal work poorly. So I switched from TKIP (the default, apparently) to AES on the ath1 interface and voila, problem solved.

      I think that I probably wasn’t getting very good signal on either of my WNDR3700 through their ath1 interfaces. I probably would sometimes get the signal and sometimes not. And it probably worked better when I didn’t get the ath1 signal because it would failover to ath0 and things would work better.

  4. BikingBrian says:

    I ordered another WNDR3700 as a spare. FYI, the new one is a v5, for which DD-WRT is not supported. I’ll try to return it to Amazon and see if I can find a v4.

Leave a Reply

Human Verification *

All content Copyright © Katharsys LLC Created with Wordpress, Theme "Synergy" by Pagelines modified by Katharsys LLC