983ddd903b
- firmware-pusher/: standalone HTML app for GenieACS firmware pushes - genieacs/: NBI API usage, device IDs, troubleshooting - calix_home_network.txt: live network documentation
3.0 KiB
3.0 KiB
GenieACS
TR-069 ACS (Auto Configuration Server) for managing Calix GigaSpire satellites.
Access
| URL | Purpose |
|---|---|
https://genieacs.yoda.ddnsgeek.com |
Admin UI |
https://nbi.yoda.ddnsgeek.com |
NBI API (7557) |
https://acs.yoda.ddnsgeek.com |
CWMP/TR-069 (7547) |
Admin credentials: admin / 966QPr@*rCTMrWE9xSGm
VPS: root@161.97.153.158
Version
GenieACS container: drumsergio/genieacs:latest
VPS docker compose: /var/lib/docker/volumes/portainer_data/_data/compose/58/docker-compose.yml
NBI API (port 7557)
All firmware push operations use the NBI API, not the provision framework.
Base URL: http://127.0.0.1:7557 (on VPS) — also proxied via Traefik at https://nbi.yoda.ddnsgeek.com
Auth: HTTP Basic Auth — admin + GenieACS admin password
Useful NBI Endpoints
GET /devices — list all devices
GET /devices/{id} — device detail
GET /devices/{id}/tasks — task history
POST /devices/{id}/tasks — create task (firmware push)
GET /files — uploaded firmware files
POST /files — upload firmware file
DELETE /devices/{id}/tasks/{id} — cancel task
Firmware Push Task
curl -X POST http://127.0.0.1:7557/devices/{device_id}/tasks \
-u admin:PASSWORD \
-H "Content-Type: application/json" \
-d '{
"name": "download",
"fileType": "1 Firmware Upgrade Image",
"fileName": "FullRel_EXOS_SIGNED_E5_R25.2.0.0.img",
"productClass": "GigaSpire"
}'
Returns a task ID. Poll /devices/{id}/tasks/{task_id} to check status.
Device IDs
b89470-GigaSpire-CXNK010F208F (Living room — offline/NAT'd)
b89470-GigaSpire-CXNK010F20EC (Back hallway sat)
b89470-GigaSpire-CXNK010F2064 (Office sat)
Fault Queue
GenieACS 1.2.16 has a known issue where the provision-based download task
throws "Invalid arguments" faults. Use the NBI API instead.
To clear stale faults:
ssh root@161.97.153.158
docker exec -i genieacs-mongo mongo genieacs --quiet --eval 'db.faults.deleteMany({})'
GenieACS Doesn't Store
- EXOS web UI passwords (not part of TR-069 data model)
- WiFi passphrase (only stored in 4220E config, not GenieSpire)
- WPA keys beyond what GenieSpire devices report via Inform
Troubleshooting
Device not connecting to GenieACS
- Check firewall: port 7547 (CWMP) must be open on VPS
- Check device has correct ACS URL configured
- Check device has internet access (TR-069 requires outbound HTTPS)
Firmware push not working
- Verify file exists:
GET /files— checkfileNamematches exactly - Check fault queue for "Invalid arguments" — means wrong provision path
- Use NBI API directly to confirm task was created
- Check device Download table:
GET /devices/{id}→ look forDownloadsparameter
Devices showing offline
- GenieACS marks devices offline after ~30 minutes without Inform
- Device may need to be power-cycled to reconnect
- Check
LastContactfield on device detail page