OpenWrt Forum Archive

Topic: How to: Install OpenWrt on D-Link DSL-2740 Revision/Version C2

The content of this topic has been archived on 20 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Those of you who have D-Link DSL-2740B revision C2, may have noticed that the generated images do not work, and as a result, the router doesn't work.  Over the past few months, I have tried many different releases and only one did the job. Release 31732.

So if you want to install a current release, you can use the release 31732 image for initial flashing, and then sysupgrade with a current image. This method DOES work. The image is the original generated image taken from the OpenWrt download site.

1. Download the release 31732 image.

2. Turn the router off.

3. Press the reset button and power the router on. Keep the reset button pressed, until the power button becomes red.

4. Give your machine a static IP within the range and navigate to You should see this page:

5. Update the firmware.

6. Telnet to your newly installed OpenWrt. Configure your network or if you have a local server modify your opkg.conf (if you intend to install packages from your local mirror) and download the current image, which must be placed in /tmp.

7. Sysupgrade the router.

8. Enjoy! smile

If you want to revert to the original firmware, download it from a d-link ftp server and follow steps 2,3,4 and 5. The router is practically unbrickable, so don't be afraid to experiment. smile

(Last edited by corrupted on 6 Jan 2013, 04:01)

Hi mate, thanks for the tutorial, but im stuck in the 6 step, i cant connect with the computer, always say, cant connect...
How i do that?

Done!!! wink

(Last edited by lfgringo on 26 Sep 2013, 19:59)

Wireless interface not working on DSL2740B-C3
(This fix works for openwrt-15.05-brcm63xx-generic-DSL274XB-C3-squashfs-cfe.bin)
If your wireless interface does not start, you might want to add the following entry to /etc/config/wireless:

In the section "config wifi-iface" add the line:

option macaddr '00:12:34:56:78:90'

and restart wireless with the command 'wifi'.
Don't use the webinterface until the next reboot if you write to this config file manually. Doing so kicked out my edits. After a reboot however this fix also works neatly using the webinterface.

Alternatively I think you can also run the following command. I'm not sure if this will avoid the conflict with the webinterface:

root@router:~# uci set wireless.wlan0.macaddr=00:12:34:56:78:90
root@router:~# uci commit wireless

==== Error description ====
Before applying this fix, logread always reported:

Mon Oct 23 11:57:01 2017 daemon.notice netifd: phy0 (746): Configuration file: /var/run/hostapd-phy0.conf
Mon Oct 23 11:57:01 2017 daemon.notice netifd: phy0 (746): nl80211: deinit ifname=wlan0 disabled_11b_rates=0

... which basically does not tell you anything. The first line is just an info which temporary file was used to start up hostapd. The second line is NOT the error! It is netifd 's attempt to switch the wlan interface back from AP mode (access point) to managed mode (station) after failing to start the wlan interface in access-point mode.

It seems the driver does not download its firmware to the wireless chip unless it is previously set up with a valid mac address. For me the mac setting was always FF:FF:FF:FF:FF:FF initially.

You can check that by running:

root@router:~# iw dev
<<< If you read any devices here, delete them first using "iw dev <DEVICENAME> del" before going on to the next step! >>> 
root@router:~# iw phy phy0 interface add wlan0 type managed
root@router:~# iw dev
        Interface wlan0
                ifindex 13
                wdev 0x8
                addr ff:ff:ff:ff:ff:ff
                type managed
root@router:~# ifconfig wlan0 hw ether 00:01:02:03:04:05
root@router:~# iw dev
        Interface wlan0
                ifindex 13
                wdev 0x8
                addr 00:01:02:03:04:05
                type managed
root@router:~# ifconfig wlan0 up

This last step will now trigger the firmware download. logread reports:

Mon Oct 23 15:47:28 2017 kernel: [ 1706.684000] b43-phy0: Loading firmware version 666.2 (2011-02-23 01:15:07)

My complete /etc/config/wireless file now reads:

config wifi-device 'phy0'
        option type 'mac80211'
        option hwmode '11g'
        option path 'pci0000:00/0000:00:01.0/ssb0:0'
        option channel '11'
        option txpower '20'
        option country 'US'
        option disabled '0'

config wifi-iface 'wlan0'
        option device 'phy0'
        option network 'lan'
        option mode 'ap'
        option ssid 'SomeSSID'
        option key 'somepassword'
        option encryption 'psk2'
        option macaddr '00:12:34:56:78:90'

The discussion might have continued from here.