OpenWrt is a highly extensible GNU/Linux distribution for embedded devices (typically wireless routers). Unlike many other distributions for these routers, OpenWrt is built from the ground up to be a full-featured, easily modifiable operating system for your router. In practice, this means that you can have all the features you need with none of the bloat, powered by a Linux kernel that's more recent than most other distributions.
The general method for picking the right image is to visit the Table of Hardware, then search for your device. Supported devices will have a Details Page that gives instructions for installing the most recent stable firmware for your device.
If there isn't a Details Page or a pre-built image for your device, follow the Building OpenWrt instructions to build a custom image.
Any bugs in the firmware should be reported via the ticket system. Before reporting a new bug please first search for similar bugs.
If you are a newcomer to OpenWrt, you should install the current stable release. The history page lists all stable releases so far, and the Details Page for your router (check the Table of Hardware) should tell you which image to download and how to install.
The current stable release is Chaos Calmer 15.05.1 released in March 2016.
Some forum members provide custom OpenWrt Images. Visit OpenWrt Community Releases for more.
The development branch (trunk / master), code named Designated Driver, contains bleeding edge source code for OpenWrt. Currently the most recent source code is available at Github (https://github.com/openwrt/openwrt) instead of git.openwrt.org (or svn.openwrt.org).
|The development branch can contain experimental code that is under active development and should not be used for production environments. Trunk images may support additional hardware; however, it is experimental, considered unstable, and sometimes won't compile.|
Bleeding edge can be built from sources:
Alternatively, pre-built snapshots are available. The so-called buildbots are automated machines that run build scripts around the clock to keep recent snapshots available for install.
|Prebuilt trunk images do not come with any web interface or GUI. You will need to be comfortable using a command line and remote shell to install one yourself: How to install LuCI|
While the build process is automated and is mostly functioning, it's highly advisable that you check the dates on the files before downloading them to prevent installing an outdated version.
If opkg is complaining that the packages list is too old, it is possible that the last few buildbot runs have failed for your platform and the packages are already a few days old.
Buildbot also reports which packages fail to build, so that developers get feedback on possible errors. So when wondering why a package is not currently available in trunk, you could also check the "broken packages" list for your platform. http://buildbot.openwrt.org:8010/broken_packages/
E.g. for ar71xx: http://buildbot.openwrt.org:8010/broken_packages/ar71xx/
Please visit the version history page for an overview of previous releases.
Please see the notes and explanations here: file naming