Hello,
I would check the following:
Check if the APs are getting their IPs in the same IP subnet where the controller has its IP address for AP discovery or in a different subnet. If the APs are in the different subnet, please check if the controller has a route to this subnet or a default route. If there is no route the controller can receive discovery requests from APs but cannot answer because it doesnt know how to reach the subnet of the APs.
Another possible scenario is that you have more than 1 controller or controller team which is visible to the AP, If they have the same priority, the APs can be confused to which controller they should connect. You should make sure that the controllers have different priorities or possibly provision the AP to use a specific controller IP address of discovery. Before an AP has discovered a controller, you should be able to access it via HTTPS and provision some settings on it.
You can use the LEDs on the AP in order to determine in which state of the discovery is the AP stuck, ou can check the different patterns here on page 5 and 6.
https://support.hpe.com/hpesc/public/docDisplay?docLocale=en_US&docId=c04915287
Regarding the firmware of the APs. When the APs are controlled by a controller, their SW support is determined by the entitlement of the controller. If the controller is entitled to run 6.6.9.1 the APs should also be entitled to run it. So if you indicate to the support that this AP should be operating in controlled mode and you need to update it separately in order to resolve a synchronization issue, it should be possible to obtain it.