The Firmware Selector is a web interface to let end users select the correct OpenWrt firmware for their wireless router.
A live demo can be found here.
Features:
- scrapes HTML file listings or reads data from JSON API (array of relative image paths)
- English, German and Polish translations are available
- over 500 firmware file to model mappings
- distinguishes between stable, unstable and testing branches
- debugging options to identify files not matched and patterns that match no file
Similar projects:
- Yet Another Firmware Selector: Uses OpenWrt generated database and autocompletion
- Gluon Firmware Selector: Original source of this project for images generated by Gluon, now with pictures.
- Freifunk Hennef Firmware Downloader: Similar to the project above, but PHP based.
- LibreMesh Chef: Allows to select configurations.
- Download the source code
- Copy
config_template.js
toconfig.js
- Start a webserver in the project folder
Create a .htaccess
file that enables directory listings:
Options +Indexes
For nginx
, auto-indexing has to be turned on:
location /path/to/builds/ {
autoindex on;
}
For testing purposes or to share files in a LAN, Python can be used. Run python3 -m http.server 8080
from within this directory (the directory where README.md
can be found) and you are done.
All available router models are specified in devices.js
via that will match against the filenames.
If no hardware revision is given or is it is empty, the revision is extracted from the file name.
{
<vendor>: {
<model>: <match>,
<model>: {<match>: <revision>, ...}
...
}, ...
}
If two matches overlap, the longest match will be assigned the matching files. If the revision string is empty, it will be taken from the file name.
- add image search box