Before auto-discovery is implemented, you can follow the steps below to activate a Tibit PON. These steps assume:
./voltha/main.py -I <interface> # example: ./voltha/main.py -I eth2
./chamaleon/main.py
In a third terminal, issue the following RESt requests:
curl -s http://localhost:8881/api/v1/local/adapters | jq
This should list (among other entries) two entries for Tibit devices: one for the Tibit OLT and one for the Tibit ONU.
The following request should show the device types supported:
curl -s http://localhost:8881/api/v1/local/device_types | jq
This should include two entries for Tibit devices, one for the OLT and one for the ONU.
Issue the following command to pre-provision the Tibit OLT:
curl -s -X POST -d '{"type": "tibit_olt", "mac_address": "00:00:00:00:00:01"}' \ http://localhost:8881/api/v1/local/devices | jq '.' | tee olt.json
This shall return with a complete Device JSON object, including a 12-character id of the new device and a preprovisioned state as admin state (it also saved the json blob in a olt.json file):
{ "vendor": "", "software_version": "", "parent_port_no": 0, "connect_status": "UNKNOWN", "root": false, "adapter": "tibit_olt", "vlan": 0, "hardware_version": "", "ports": [], "parent_id": "", "oper_status": "UNKNOWN", "admin_state": "PREPROVISIONED", "mac_address": "00:00:00:00:00:01", "serial_number": "", "model": "", "type": "tibit_olt", "id": "2db8e16804ec", "firmware_version": "" }
For simplicity, store the device id as shell variable:
OLT_ID=$(jq .id olt.json | sed 's/"//g')
To activate the OLT, issue the following using the OLT_ID memorized above:
curl -s -X POST http://localhost:8881/api/v1/local/devices/$OLT_ID/activate
After this, if you retrieve the state of the OLT device, it should be enabled and in the 'ACTIVATING' operational status:
curl http://localhost:8881/api/v1/local/devices/$OLT_ID | jq '.oper_status,.admin_state' "ACTIVATING" "ENABLED"
[This will be moved to some other place soon.]
To get the EOAM stack to work with the ONOS olt-test, the following command was used in the shell to launch the olt-test.
NOTE: This command should soon be eliminated as the adapter should be started by VOLTHA. By running the commands as listed below, then the olt-test can take advantage of the virtual environment.
$ cd <LOCATION_OF_VOLTHA> $ sudo -s # . ./env.sh (venv-linux) # PYTHONPATH=$HOME/dev/voltha/voltha/adapters/tibit ./oftest/oft --test-dir=olt-oftest/ -i 1@enp1s0f0 -i 2@enp1s0f1 --port 6633 -V 1.3 -t "olt_port=1;onu_port=2;in_out_port=1;device_type='tibit'" olt-complex.TestScenario1SingleOnu