Remote API - Changing SIB contents
The purpose of this tutorial is to show you how to change the contents of SIB message using Remote API. Not all SIB IE can be changed by Remote API. There are a certain set of SIB IEs that is allowed to be changed by remote API and they are documented in lteenb.pdf. If you are not familiar with the basic operation of Remote API, I would suggest you to look into this tutorial first.
In general, Amarisoft allows IE (information element) changes in this way mainly for SIB1, SIB2 and small numbers of IEs for other SIBs. For IE changes for other SIBs, it is recommended to manually change the asn file. Regarding the SIB changes with asn file, refer this tutorial.
Table of Contents
- Remote API - Changing SIB contents
Test 1 : Changing p-Max in SIB1
This test shows how to change a specific IE (information elements) of a SIB with Remote API. As an example, I will show you how to change p-Max in SIB1. You can use the same logic for other IEs in other SIBs. However, not all IEs in every SIBs can be changed this way. There are only small portions of IEs that can be changed this way. Refer to sib_set document to figure out which IE of which sib can be changed this way.
Configuration
You can use any of LTE configuration for this tutorial (e.g, enb.default.cfg).
Perform the test
In this tutorial, you don't need any DUT(UE) for testing. Just running the lte service and verify the result in WebGUI is enough.
Run lte service ([service lte restart]) and check the IE in the SIB before you send RemoteAPI command. In this tutorial, I will change the p-Max IE in SIB1
Send RemoveAPI command as shown below. Be careful about the syntaix. It would not be easy to figure out the correct syntax just by reading lteenb.pdf
./ws.js enb '{"message":"sib_set","cells":{"1":{"sib1":{"p_max":20}}}}'
If the RemoteAPI command is properly processed, you will see the eNB send paging with systemInfoModication.
Then you can confirm that the p-Max value is changed as configured in the RemoteAPI command .
Test 2 : Changing whole contents of a SIB3
This test shows how to change the whole contents of a specified SIB. As an example, I will show you how to change the whole contents of SIB3 in LTE. Refer to sib_set document to figure out which sib can be changed in this way. The idea is to send the entire payload hex string) of the message via RemoteAPI.
Configuration
You can use any of LTE configuration for this tutorial (e.g, enb.default.cfg).
Perform the test
In this tutorial, you don't need any DUT(UE) for testing. Just running the lte service and verify the result in WebGUI is enough.
Run lte service ([service lte restart]) and check the contents of the SIB3 before you send RemoteAPI command.
Send RemoveAPI command as shown below. Be careful about the syntaix. It would not be easy to figure out the correct syntax just by reading lteenb.pdf
./ws.js enb '{"message":"sib_set","cells":{"1":{"sib3":{ "type": "hex", "payload" : "000c16043f95aa0007ae"}}}}'
If the RemoteAPI command is properly processed, you will see the eNB send paging with systemInfoModication.
Then you can confirm that the contents is changed as configured in the RemoteAPI command .