| 1 | [[TOC(depth=3)]] |
| 2 | |
| 3 | = Service: RF Control = |
| 4 | |
| 5 | This service is used to configure the RF front ends of the nodes. The functionality follows the descriptions on the [wiki:hardware/rf-front-end RF front end] page (eg. setting the filters for one TX chain applies the setting to both TX chains of the node). |
| 6 | |
| 7 | == Usage == |
| 8 | |
| 9 | All the available methods are accessible from the a testbed console via an HTTP API located at {{{am1.cosmos-lab.org:5054/rf_control}}}. This API can be interacted with via a command line tool such as "curl" or any script using a "REST client" library. |
| 10 | |
| 11 | === Get the current configuration === |
| 12 | |
| 13 | This API call is used to get the current configuration of the RF front end(s) with respect to a node or list of nodes. The response will specify the parameters of the TX chain for the node(s) in question. It will show for a given node's {{{rf_port}}}, what {{{antenna}}} would be used if it were {{{connected}}}, whether the power amplifier ({{{power_amp}}}) is on or off, and the lower frequency ({{{f_lower}}}) and upper frequency ({{{f_upper}}}) of the filters. |
| 14 | |
| 15 | Path: {{{am1.cosmos-lab.org:5054/rf_control/get-tx_path}}} |
| 16 | |
| 17 | Parameters: |
| 18 | ||= Name =||= Decription =||= Required =||= Acceptable Input =|| |
| 19 | || node || Comma separated list of node FQDNs || Y || list of node names || |
| 20 | |
| 21 | ==== Example 1 ==== |
| 22 | Request: |
| 23 | {{{am1.cosmos-lab.org:5054/rf_control/get_tx_path?node=sdr1-s1-lg1.bed.cosmos-lab.org}}} |
| 24 | |
| 25 | Response: |
| 26 | {{{ |
| 27 | <response status="OK"> |
| 28 | <nodes> |
| 29 | <node name="sdr1-s1-lg1.bed.cosmos-lab.org"> |
| 30 | <rf_port number="0" antenna="1" connected="false" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| 31 | <rf_port number="1" antenna="3" connected="false" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| 32 | <rf_port number="2" antenna="" connected="false"/> |
| 33 | <rf_port number="3" antenna="" connected="false"/> |
| 34 | </node> |
| 35 | </nodes> |
| 36 | </response> |
| 37 | }}} |
| 38 | |
| 39 | ==== Example 2 ==== |
| 40 | |
| 41 | Request: |
| 42 | {{{am1.cosmos-lab.org:5054/rf_control/get_tx_path?node=sdr1-s1-lg1.bed.cosmos-lab.org,sdr2-s1-lg1.bed.cosmos-lab.org}}} |
| 43 | |
| 44 | Response: |
| 45 | {{{ |
| 46 | <response status="OK"> |
| 47 | <nodes> |
| 48 | <node name="sdr1-s1-lg1.bed.cosmos-lab.org"> |
| 49 | <rf_port number="0" antenna="1" connected="false" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| 50 | <rf_port number="1" antenna="3" connected="false" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| 51 | <rf_port number="2" antenna="" connected="false"/> |
| 52 | <rf_port number="3" antenna="" connected="false"/> |
| 53 | </node> |
| 54 | <node name="sdr2-s1-lg1.bed.cosmos-lab.org"> |
| 55 | <rf_port number="0" antenna="1" connected="true" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| 56 | <rf_port number="1" antenna="3" connected="true" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| 57 | </node> |
| 58 | </nodes> |
| 59 | </response> |
| 60 | }}} |
| 61 | |
| 62 | === Turn off power amplifiers === |
| 63 | |
| 64 | This API call is simply a shorthand to easily turn off the power amplifiers for a given node. Keep in mind that power amplifier state is shared between nodes in the same physical location (eg. sdr1-md1.bed.cosmos-lab.org and sdr2-md1.bed.cosmos-lab.org). |
| 65 | |
| 66 | Path: {{{am1.cosmos-lab.org:5054/rf_control/power_amp_off}}} |
| 67 | |
| 68 | Parameters: |
| 69 | ||= Name =||= Decription =||= Required =||= Acceptable Input =|| |
| 70 | || node || Comma separated list of node FQDNs || Y || list of node names || |
| 71 | |
| 72 | ==== Example 1 ==== |
| 73 | Turn off the power amplifier for {{{sdr1-s1-lg1.bed.cosmos-lab.org}}}. |
| 74 | |
| 75 | Request: |
| 76 | {{{am1.cosmos-lab.org:5054/rf_control/power_amp_off?node=sdr1-s1-lg1.bed.cosmos-lab.org}}} |
| 77 | |
| 78 | Response: |
| 79 | {{{ |
| 80 | <response status="OK"> |
| 81 | <message>OK</message> |
| 82 | </response> |
| 83 | }}} |
| 84 | |
| 85 | |
| 86 | === Configure the TX chain === |
| 87 | am1.cosmos-lab.org:5054/rf_control/set_tx_path?node=<comma separated list of nodes>&power_amp=<on,off>&rf_port=<0,1> |
| 88 | |
| 89 | Path: {{{am1.cosmos-lab.org:5054/rf_control/power_amp_off}}} |
| 90 | |
| 91 | Parameters: |
| 92 | ||= Name =||= Decription =||= Required =||= Acceptable Input =|| |
| 93 | || node || Comma separated list of node FQDNs || Y || list of node names || |
| 94 | |
| 95 | f_center and f_bandwidth: From (f_center - f_bandwidth/2) to (f_center + f_bandwidth/2) |
| 96 | |
| 97 | f_upper and f_lower: From (f_lower) to (f_upper) |
| 98 | |
| 99 | f_lower and bandwidth: From (f_lower) to (f_lower + bandwidth) |
| 100 | |
| 101 | f_upper and bandwidth: From (f_upper - bandwidth) to (f_upper) |
| 102 | |
| 103 | |
| 104 | ==== Example 1 ==== |
| 105 | Request: |
| 106 | {{{am1.cosmos-lab.org:5054/rf_control/set_tx_path?node=sdr1-s1-lg1.bed.cosmos-lab.org}}} |
| 107 | |
| 108 | Response: |
| 109 | {{{ |
| 110 | <response status="OK"> |
| 111 | <message>OK</message> |
| 112 | </response> |
| 113 | }}} |