hello friends! new(ish)!

OpenWRT

From InstallGentoo Wiki v2
Revision as of 14:41, 8 March 2015 by >Mrsnooze (→‎Building From Source)
Jump to navigation Jump to search

First Install

If flashing from a DD-WRT router, you'll need to telnet into the router and use mtd to flash the OpenWRT factory image. Using DD-WRT's GUI flasher won't work, because DD-WRT does some kind of nasty shit to stop it being removed.

Building From Source

Official Instructions

Before attempting to build, prepare for the worst. Open and Save As the following pages:

Also have:

  • The stock firmware for your device.
  • Apache installed on your pc (or anything that will allow you to wget your firmware from the router's command prompt).

Follow the official instructions including git clone, installing the feeds, and make menuconfig.

Within menuconfig:

  • Set Target System to your device's chipset.
  • Set Target Profile to your specific device.
  • Within LuCI, Collections, select luci. This is the web interface. Hit space twice to ensure it's selected with an asterix, and not an M (M means module, and modules have to be loaded before they'll start).
  • Save to .config.
  • Exit.

On your first compile, don't be tempted to select a heap of cool software or settings. Keep it simple. Once you know you can create a working firmware, then you can go nuts with the options.

$ make

Expect the compile to take about 45mins. You can speed it up by using make -j 4 (for 4 compilation threads) but it will fail and you'll have to keep restarting it.

Once the compiliation is finished, your firmwares will be in bin/<chipset>/

The factory firmware is for installing OpenWRT over other firmware. Sysupgrade is for updating OpenWRT and that's the one you want. Save your router config, flash the new firmware and hold your breath.

If it all goes horribly wrong, refer to the debricking and recovery mode webpages you saved earlier. Generally recovery involves pressing the physical WPS button on your router when it boots, telnetting into it, wgetting a working firmware image from your pc, and using mtd to reflash. TFTD is another option, but much more finicky as you need split second timing to get it to respond.