Section
How Controllers Select AOS-10 Images
Three-layer image resolution: family → model override → default
Image Selection Mechanism
When the controller executes ap convert active specific-aps activate, it does NOT require explicit image parameters. Instead, the toolkit pre-determines which AOS-10 image each AP model needs and passes that information via the image_map.json configuration file. The controller uses the AP model to look up the correct image automatically.
Three-Layer Image Resolution
1Per-Model Override (Highest Priority)
The toolkit checks image_map.json for a specific model override first. If configured, this takes absolute precedence. Example:
"model_overrides": {
"AP-515": "ArubaInstant_Hercules_10.7.1.0_90001",
"AP-635": "ArubaInstant_Scorpio_10.7.1.0_90000"
}When to use: When a specific model requires a different AOS-10 build than its family (e.g., beta features, security patches, known incompatibilities).
2Hardware Family (Medium Priority)
If no model override exists, the toolkit looks up the AP model's hardware family (WiFi-5, WiFi-6, WiFi-6E, WiFi-7) and retrieves the mapped image. Example:
"families": {
"wifi5": "ArubaInstant_Hercules_10.7.1.0_90000",
"wifi6": "ArubaInstant_Draco_10.7.1.0_90000",
"wifi6e": "ArubaInstant_Scorpio_10.7.1.0_90000",
"wifi7": "ArubaInstant_Vela_10.7.1.0_90000"
}Builtin families: WiFi-5 (AP-3xx, 5xx), WiFi-6 (AP-6xx, 64x), WiFi-6E (AP-6xx-E), WiFi-7 (AP-7xx).
3Builtin Defaults (Lowest Priority)
If the model's family is not in image_map.json, the toolkit falls back to compiled-in defaults from models.py. This ensures the migration always has a fallback image.
Image Selection Flow
User runs migration
↓
For each AP in convert list:
1. Get AP model (e.g., "AP-515")
2. Check image_map.json model_overrides["AP-515"] → Found? Use it
3. If not found, lookup AP family (e.g., "wifi5")
4. Check image_map.json families["wifi5"] → Found? Use it
5. If not found, use builtin DEFAULT_FAMILY_IMAGES["wifi5"]
6. Result: target_image = "ArubaInstant_Hercules_10.7.1.0_90000"
↓
Toolkit builds command:
ap convert active specific-aps activate image-url https://server/ArubaInstant_Hercules_10.7.1.0_90000.tar
↓
Controller executes on AP (matching its model to image)Three Image Download Methods
ACentral Cloud Pull (Default)
ap convert active specific-aps activate (no parameters)
How it works: Controller contacts Aruba Central to fetch the AOS-10 image for the AP's model. Central returns the image based on the AP's device registration and subscription.
Requirements: Central connectivity, valid bearer token, subscription active, image available in Central.
BHTTPS Image Server (Custom URL)
ap convert active specific-aps activate image-url https://server.com/path/ArubaInstant_Hercules_10.7.1.0_90000.tar
How it works: Controller downloads the AOS-10 image from the specified HTTPS URL (company internal server, CDN, or external mirror).
Requirements: HTTPS server reachable from controller, image file present at URL, TLS/certificate validation (optional).
CLocal Flash (Pre-staged)
ap convert active specific-aps local-flash
How it works: Controller uses a pre-staged AOS-10 image already present on the controller's local flash. AP loads directly from controller flash without download.
Requirements: Image pre-staged on controller flash using image download or image fetch commands.
Editing image_map.json for Custom Builds
The image_map.json file is fully editable and controls which AOS-10 build the toolkit deploys to each AP model. Location: aos_migration_toolkit/data/image_map.json
Example: Update WiFi-6 Family Image
Before: "wifi6": "ArubaInstant_Draco_10.7.1.0_90000" After (update to patch version): "wifi6": "ArubaInstant_Draco_10.7.1.1_90002"
Example: Override Single Model
"model_overrides": {
"AP-515": "ArubaInstant_Hercules_10.7.1.0_BETA_90050"
}Important: Confirm exact image filenames against your Aruba Central "Firmware" page or HPE Support Center before production use. Filename mismatch = download failure.
How Does the Controller Know Which Image to Use?
Answer: The toolkit tells the controller which image to use before the ap convert active specific-aps activate command is sent.
- Pre-Migration: Toolkit reads each AP's model from the controller database (via show ap database long)
- Image Resolution: Toolkit resolves the AP model to its target AOS-10 image using the three-layer lookup (model override → family → builtin)
- Command Building: Toolkit constructs the full activation command with the image URL (if using HTTPS method) or method flag (if using Central cloud or local-flash)
- Execution: Toolkit sends the complete command to the controller via SSH: ap convert active specific-aps activate image-url https://server/IMAGE_NAME.tar
- Controller Receipt: Controller receives the full command with image location/URL baked in. It doesn't perform image lookups—it just downloads from the provided URL or Central.
Real-World Model-to-Image Examples
AP-515
WiFi-5 campus AP
wifi5
ArubaInstant_Hercules_10.7.1.0_90000
AP-635
WiFi-6 campus AP
wifi6
ArubaInstant_Draco_10.7.1.0_90000
AP-635E
WiFi-6E campus AP
wifi6e
ArubaInstant_Scorpio_10.7.1.0_90000
AP-755
WiFi-7 campus AP
wifi7
ArubaInstant_Vela_10.7.1.0_90000
Summary
✓ The toolkit determines the AOS-10 image for each AP model BEFORE the activation command is sent
✓ Image selection uses a three-layer lookup: model override → family → builtin defaults
✓ The toolkit builds the complete command with the image URL/method and sends it to the controller
✓ The controller does NOT independently look up images—it uses exactly what the toolkit provides
✓ Three download methods available: Central cloud, HTTPS server, or pre-staged local-flash