- [x] Must be flashable from vendor firmware
  - [x] Web interface
  - [ ] TFTP (untested, but possible according to OpenWrt wiki)
  - [ ] Other: <specify>
- [x] Must support upgrade mechanism
  - [x] Must have working sysupgrade
    - [x] Must keep/forget configuration (`sysupgrade [-n]`, `firstboot`)
  - [x] Gluon profile name matches autoupdater image name
        (`lua -e 'print(require("platform_info").get_image_name())'`)
- [x] Reset/WPS/... button must return device into config mode
- [x] Primary MAC address should match address on device label (or packaging)
      (https://gluon.readthedocs.io/en/latest/dev/hardware.html#notes)
  - When re-adding a device that was supported by an earlier version of Gluon, a
    factory reset must be performed before checking the primary MAC address, as
    the setting from the old version is not reset otherwise.
- Wired network
  - [x] should support all network ports on the device
  - [x] must have correct port assignment (WAN/LAN)
    - On devices supplied via PoE, there is usually no explicit WAN/LAN labeling on the hardware.
      The PoE input should be the WAN port in this case.
- Wireless network (if applicable)
  - [x] Association with AP must be possible on all radios
  - [x] Association with 802.11s mesh must work on all radios
  - [x] AP+mesh mode must work in parallel on all radios
- LED mapping
  - Power/system LED
    - [x] Lit while the device is on
    - [x] Should display config mode blink sequence
          (https://gluon.readthedocs.io/en/latest/features/configmode.html)
  - Radio LEDs
    - [x] Should map to their respective radio
    - [x] Should show activity
  - Switch port LEDs
    - [x] Should map to their respective port (or switch, if only one led present)
    - [x] Should show link state and activity
		
	
			
		
			
				
	
	
		
			87 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| -- ASUS
 | |
| 
 | |
| device('asus-rt-ac57u', 'asus_rt-ac57u', {
 | |
| 	factory = false,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- D-Link
 | |
| 
 | |
| device('d-link-dir-860l-b1', 'dlink_dir-860l-b1')
 | |
| 
 | |
| 
 | |
| -- Netgear
 | |
| 
 | |
| device('netgear-ex6150', 'netgear_ex6150', {
 | |
| 	factory_ext = '.chk',
 | |
| })
 | |
| 
 | |
| device('netgear-r6220', 'netgear_r6220', {
 | |
| 	factory_ext = '.img',
 | |
| })
 | |
| 
 | |
| device('netgear-wndr3700-v5', 'netgear_wndr3700-v5', {
 | |
| 	factory = false,
 | |
| 	broken = true, -- untested
 | |
| 	manifest_aliases = {
 | |
| 		'netgear-wndr3700v5',
 | |
| 	},
 | |
| })
 | |
| 
 | |
| -- TP-Link
 | |
| 
 | |
| device('tp-link-re650-v1', 'tplink_re650-v1')
 | |
| 
 | |
| -- Ubiquiti
 | |
| 
 | |
| device('ubiquiti-unifi-6-lite', 'ubnt_unifi-6-lite', {
 | |
| 	factory = false,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- Xiaomi
 | |
| 
 | |
| device('xiaomi-mi-router-4a-gigabit-edition', 'xiaomi_mi-router-4a-gigabit', {
 | |
| 	factory = false,
 | |
| })
 | |
| 
 | |
| 
 | |
| -- ZBT
 | |
| 
 | |
| device('zbtlink-zbt-wg3526-16m', 'zbtlink_zbt-wg3526-16m', {
 | |
| 	factory = false,
 | |
| 	manifest_aliases = {
 | |
| 		'zbt-wg3526',
 | |
| 		'zbt-wg3526-16m',
 | |
| 	},
 | |
| })
 | |
| 
 | |
| device('zbtlink-zbt-wg3526-32m', 'zbtlink_zbt-wg3526-32m', {
 | |
| 	factory = false,
 | |
| 	manifest_aliases = {
 | |
| 		'zbt-wg3526-32m',
 | |
| 	},
 | |
| 
 | |
| })
 | |
| 
 | |
| 
 | |
| -- Devices without WLAN
 | |
| 
 | |
| -- Ubiquiti
 | |
| 
 | |
| device('ubiquiti-edgerouter-x', 'ubnt_edgerouter-x', {
 | |
| 	factory = false,
 | |
| 	packages = {'-hostapd-mini'},
 | |
| 	manifest_aliases = {
 | |
| 		'ubnt-erx',
 | |
| 	},
 | |
| })
 | |
| 
 | |
| device('ubiquiti-edgerouter-x-sfp', 'ubnt_edgerouter-x-sfp', {
 | |
| 	factory = false,
 | |
| 	packages = {'-hostapd-mini'},
 | |
| 	manifest_aliases = {
 | |
| 		'ubnt-erx-sfp',
 | |
| 	},
 | |
| })
 |