Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ath79-generic: (re)add support for UniFi AC Mesh Pro #2462

Merged

Conversation

AiyionPrime
Copy link
Member

@AiyionPrime AiyionPrime commented Apr 7, 2022

@udoschneider offered to test this migration.
The ath79 image can be found here: http://aiyionpri.me/shared/udoschneider/

A proper image to migrate from would be http://firmware.ffh.zone/vH21/sysupgrade/gluon-ffh-vH21-ubiquiti-unifi-ac-mesh-pro-sysupgrade.bin

  • Must be flashable from vendor firmware
    • Web interface
    • TFTP
    • Other: [According to https://wiki.freifunk-dresden.de/index.php/Unifi_AP_AC_Pro/Mesh_Pro]
  • Must support upgrade mechanism
    • Must have working sysupgrade
      • Must keep/forget configuration (sysupgrade [-n], firstboot)
    • Gluon profile name matches autoupdater image name
      (lua -e 'print(require("platform_info").get_image_name())')
  • Reset/WPS/... button must return device into config mode
  • 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
    • should support all network ports on the device
    • 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)
    • Association with AP must be possible on all radios
    • Association with 802.11s mesh must work on all radios
    • AP+mesh mode must work in parallel on all radios
  • LED mapping
    • Power/system LED
    • Radio LEDs
      • Should map to their respective radio
      • Should show activity
    • Switch port LEDs
      • Should map to their respective port (or switch, if only one led present)
      • Should show link state and activity
  • Outdoor devices only:
    • Added board name to is_outdoor_device function in package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua

@github-actions github-actions bot added 3. topic: docs Topic: Documentation 3. topic: hardware Topic: Hardware Support 3. topic: package Topic: Gluon Packages labels Apr 7, 2022
@udoschneider
Copy link

Please find the test results below. My Comments in [BOLD].

I wasn't able to test meshing because I had no other router available at the moment.

The biggest roadblock might be the port assignment IMHO. Right now WAN (PoE Port on Device) and LAN ("Mesh" Port on device) are bridged. I would have expected the LAN port to have the same network as WiFi. Not sure if error or expected behaviour though. WiFi works as expected though.


  • Must be flashable from vendor firmware
    • Web interface
    • TFTP
    • Other [According to https://wiki.freifunk-dresden.de/index.php/Unifi_AP_AC_Pro/Mesh_Pro]
  • Must support upgrade mechanism
    • Must have working sysupgrade
      • Must keep/forget configuration (sysupgrade [-n], firstboot)
    • Gluon profile name matches autoupdater image name (lua -e 'print(require("platform_info").get_image_name())')
  • Reset/WPS/... button must return device into config mode
  • 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
    • should support all network ports on the device
    • must have correct port assignment (WAN/LAN) [PoE/WAN and LAN ports are bridged to WAN.]
      • 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)
    • Association with AP must be possible on all radios
    • Association with 802.11s mesh must work on all radios [NOT TESTED]
    • AP+mesh mode must work in parallel on all radios [NOT TESTED]
  • LED mapping
    • Power/system LED
    • Radio LEDs
      • Should map to their respective radio [NOT APPLICABLE TO HW]
      • Should show activity [NOT APPLICABLE TO HW]
    • Switch port LEDs
      • Should map to their respective port (or switch, if only one led present) [NOT APPLICABLE TO HW]
      • Should show link state and activity [NOT APPLICABLE TO HW]
  • Outdoor devices only:
    • Added board name to is_outdoor_device function in package/gluon-core/luasrc/usr/lib/lua/gluon/platform.lua

@AiyionPrime
Copy link
Member Author

@Dark4MD confirmed, both ports are assigned vlan0.
@blocktrron any ideas on what I missed?

@udoschneider
Copy link

@Dark4MD confirmed, both ports are assigned vlan0.
@blocktrron any ideas on what I missed?
Dumb question: Does the HW support two different Interfaces at all? Or is it just one Hardware Interface with an attached two-port switch?

@neocturne
Copy link
Member

OpenWrt assigns both switch ports to the LAN VLAN. Gluon currently doesn't have a nice way to split ports that OpenWrt briges by default.

The UAP Outdoor+ has the same issue. For now, the best solution I've come up with is to override Gluon's interface detection altogether: https://github.com/freifunk-gluon/gluon/pull/2440/files#diff-9683bc89cf803c758bfcc7b5f963bfbaf22d650a191a00743b697286d426bb4dR53

@AiyionPrime
Copy link
Member Author

@neoraider: I'll update the PR in the afternoon,
provide @udoschneider with a new image and maybe his testing helps to bring the attention to get your PR reviewed and acked.

@AiyionPrime AiyionPrime force-pushed the ath79-migrate-unifi-ac-mesh-pro branch from edaa28d to 1807150 Compare April 16, 2022 15:21
@AiyionPrime AiyionPrime changed the title Ath79 migrate unifi ac mesh pro ath79-generic: (re)add support for UniFi AC Mesh Pro Apr 16, 2022
@AiyionPrime
Copy link
Member Author

AiyionPrime commented Apr 16, 2022

@udoschneider The new image is uploaded.
Please make sure the config-mode is available on the PoE-line when you're testing this.

@neocturne
Copy link
Member

@udoschneider The new image is uploaded. Please make sure the config-mode is available on the PoE-line when you're testing this.

As far as I can tell from the code, there is no eth1 interface on the AC Mesh Pro, so this config is likely wrong. I think OpenWrt assigns both ports to the same VLAN, so we actually need more reconfiguration :/

@AiyionPrime
Copy link
Member Author

Darn. Hoped for monkey-do-monkey-see. Will look into this later...
@udoschneider I'm sorry the new image is worthless. No need to test it.

@kaechele
Copy link
Contributor

Currently working on the TP-Link EAP245 and this device also has two Ethernet ports on the same switch that are currently bridged together. So a universal solution that I could also utilize for this device would be good.

@AiyionPrime
Copy link
Member Author

This is the output of @Dark4MD's AC PRO in ath79:
https://gist.github.com/AiyionPrime/127180db043dca576eecc47858f37af5

@AiyionPrime
Copy link
Member Author

Do we not fix this? Or was #2439 with the same issue merged by accident or in good faith? :D

@neocturne
Copy link
Member

Do we not fix this? Or was #2439 with the same issue merged by accident or in good faith? :D

Ah, I did not notice that issue. This must definitely be fixed before the next Gluon release.

@rotanid rotanid added the 1. severity: blocker This issue/pr is required for the next release label Apr 22, 2022
@rotanid rotanid added this to the 2022.1 milestone Apr 22, 2022
@AiyionPrime AiyionPrime force-pushed the ath79-migrate-unifi-ac-mesh-pro branch from 1807150 to be93ea1 Compare June 15, 2022 16:37
@AiyionPrime
Copy link
Member Author

this is blocked until #2548 is done

@rotanid rotanid added 2. status: blocked Marked as blocked because it's waiting on something and removed 1. severity: blocker This issue/pr is required for the next release labels Jun 15, 2022
@AiyionPrime AiyionPrime force-pushed the ath79-migrate-unifi-ac-mesh-pro branch from be93ea1 to 860316f Compare June 25, 2022 16:36
@AiyionPrime
Copy link
Member Author

AiyionPrime commented Jun 25, 2022

@udoschneider did take me long enough, but I think this new firmware might do the trick:
https://aiyionpri.me/shared/udoschneider/gluon-ffh-exp-20220625-ubiquiti-unifi-ac-mesh-pro-sysupgrade.bin

Testing this soon would be highly appreciated :)

@rotanid this is no longer blocked by the lan split pr.

@rotanid rotanid removed the 2. status: blocked Marked as blocked because it's waiting on something label Jun 25, 2022
@AiyionPrime
Copy link
Member Author

@udoschneider Any chance you have tested this?

@AiyionPrime
Copy link
Member Author

@udoschneider we gotta get this done fast, or it will not make it into the release in time, as @rotanid highlighted earlier.
Is there anything you're missing, I can help you with?

@nrbffs
Copy link
Contributor

nrbffs commented Jul 8, 2022

I will visit a local community which has quite a few of these nodes on Sunday. Just want to confirm what's left to be tested is:

  • must have correct port assignment (WAN/LAN)
  • 802.11s meshing
  • 802.11s mesh+client concurrently

@AiyionPrime
Copy link
Member Author

That should be it, yes.
But that were the findings of @udoschneider and prior to the swconfig patch, at best they're outdated.

I'd recommend to do you own tests if possible in order not to mix checklists from two different images.

Gone due to
commit 45c84a1 ("ar71xx: drop target")
@AiyionPrime AiyionPrime force-pushed the ath79-migrate-unifi-ac-mesh-pro branch from 860316f to 18d5267 Compare July 10, 2022 17:42
@nrbffs
Copy link
Contributor

nrbffs commented Jul 10, 2022

AC Mesh Pro

  • Must be flashable from vendor firmware
  • Must support upgrade mechanism
    • Must have working sysupgrade
      • Must keep/forget configuration (sysupgrade [-n], firstboot) -> firstboot forgets config
    • Gluon profile name matches autoupdater image name:
  • Reset/WPS/... button must return device into config mode
  • 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
    • should support all network ports on the device
    • must have correct port assignment (WAN/LAN)
      • after aiyions patch, Secondary (non-PoE) is Client, Primary (PoE) is WAN
      • 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)
    • Association with AP must be possible on all radios
    • Association with 802.11s mesh must work on all radios
    • AP+mesh mode must work in parallel on all radios
  • LED mapping
    • Power/system LED
    • Radio LEDs n/a
      • Should map to their respective radio
      • Should show activity
    • Switch port LEDs
      • Should map to their respective port (or switch, if only one led present)
      • Should show link state and activity

@AiyionPrime AiyionPrime marked this pull request as ready for review July 10, 2022 18:56
@AiyionPrime
Copy link
Member Author

Thanks to @nrbffs and @udoschneider for testing this.
Nice to finally conclude this.

@rotanid rotanid merged commit 11905af into freifunk-gluon:master Jul 10, 2022
JayBraker pushed a commit to JayBraker/gluon that referenced this pull request Apr 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. topic: docs Topic: Documentation 3. topic: hardware Topic: Hardware Support 3. topic: package Topic: Gluon Packages
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants