| | 1 | [[TOC(depth=3)]] |
| | 2 | |
| | 3 | = Service: RF Switch = |
| | 4 | |
| | 5 | This service is used to configure the RF switch boxes attached to certain nodes in sb1.cosmos-lab.org and sb2.cosmos-lab.org allowing the experimenter to select how nodes and antennas are connected. |
| | 6 | |
| | 7 | [[BR]] |
| | 8 | |
| | 9 | == Usage == |
| | 10 | |
| | 11 | All the available methods are accessible from the a testbed console via an HTTP API located at `am1.cosmos-lab.org:5054/rf_switch`. This API can be interacted with via a command line tool such as "curl" or any script using a "REST client" library. |
| | 12 | |
| | 13 | [[BR]] |
| | 14 | |
| | 15 | === Get the current configuration === |
| | 16 | |
| | 17 | 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. |
| | 18 | |
| | 19 | HTTP API Path: `am1.cosmos-lab.org:5054/rf_swtich/status` |
| | 20 | |
| | 21 | Parameters: |
| | 22 | ||= '''Name''' =||= '''Decription''' =||= '''Required''' =||= '''Acceptable Input''' =|| |
| | 23 | || name || Comma separated list of RF switch box FQDNs || Y || (list of RF switch boxes) || |
| | 24 | |
| | 25 | [[BR]] |
| | 26 | |
| | 27 | ==== Example 1 ==== |
| | 28 | HTTP Request: |
| | 29 | {{{ |
| | 30 | am1.cosmos-lab.org:5054/rf_control/get_tx_path?node=sdr1-s1-lg1.bed.cosmos-lab.org |
| | 31 | }}} |
| | 32 | |
| | 33 | Response: |
| | 34 | {{{ |
| | 35 | <response status="OK"> |
| | 36 | <nodes> |
| | 37 | <node name="sdr1-s1-lg1.bed.cosmos-lab.org"> |
| | 38 | <rf_port number="0" antenna="1" connected="true" power_amp="ON" f_lower="4900" f_upper="6200"/> |
| | 39 | <rf_port number="1" antenna="3" connected="true" power_amp="ON" f_lower="4900" f_upper="6200"/> |
| | 40 | <rf_port number="2" antenna="" connected="false"/> |
| | 41 | <rf_port number="3" antenna="" connected="false"/> |
| | 42 | </node> |
| | 43 | </nodes> |
| | 44 | </response> |
| | 45 | }}} |
| | 46 | |
| | 47 | In this example, node `sdr1-s1-lg1.bed.cosmos-lab.org` has: |
| | 48 | * TX of rf_port 0, connected to antenna 1, its power amplifier is on, and the filters are set to 4900-6200MHz |
| | 49 | * TX of rf_port 1, connected to antenna 3, its power amplifier is on, and the filters are set to 4900-6200MHz |
| | 50 | * TX of rf_port 2 is not connected to anything |
| | 51 | * TX of rf_port 3 is not connected to anything |
| | 52 | |
| | 53 | |
| | 54 | [[BR]] |
| | 55 | |
| | 56 | ==== Example 2 ==== |
| | 57 | |
| | 58 | HTTP Request: |
| | 59 | {{{ |
| | 60 | 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 |
| | 61 | }}} |
| | 62 | |
| | 63 | Response: |
| | 64 | {{{ |
| | 65 | <response status="OK"> |
| | 66 | <nodes> |
| | 67 | <node name="sdr1-s1-lg1.bed.cosmos-lab.org"> |
| | 68 | <rf_port number="0" antenna="1" connected="false" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| | 69 | <rf_port number="1" antenna="3" connected="false" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| | 70 | <rf_port number="2" antenna="" connected="false"/> |
| | 71 | <rf_port number="3" antenna="" connected="false"/> |
| | 72 | </node> |
| | 73 | <node name="sdr2-s1-lg1.bed.cosmos-lab.org"> |
| | 74 | <rf_port number="0" antenna="1" connected="true" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| | 75 | <rf_port number="1" antenna="3" connected="true" power_amp="OFF" f_lower="4900" f_upper="6200"/> |
| | 76 | </node> |
| | 77 | </nodes> |
| | 78 | </response> |
| | 79 | }}} |
| | 80 | |
| | 81 | [[BR]] |
| | 82 | |
| | 83 | === Configure the RF switch === |
| | 84 | |
| | 85 | HTTP API Path: `am1.cosmos-lab.org:5054/rf_control/set_tx_path` |
| | 86 | |
| | 87 | Parameters: |
| | 88 | ||= '''Name''' =||= '''Decription''' =||= '''Required''' =||= '''Acceptable Input''' =|| |
| | 89 | || name || Comma separated list of RF switch box FQDNs || Y || (list of RF switch boxes) || |
| | 90 | || switch || Switch(es) to configure on the RF switch box || Y || 1, 2, 3, 4 || |
| | 91 | || port || Port to select on RF switch || Y || 1, 2 || |
| | 92 | |
| | 93 | [[BR]] |
| | 94 | |
| | 95 | ==== Example 1 ==== |
| | 96 | |
| | 97 | For `sdr1-s1-lg1` in `bed` testbed, connect TX RF ports 0 and 1 to their respective antennas, turn on the power amplifier, and request a frequency of 2.4-2.5 GHz. |
| | 98 | |
| | 99 | HTTP Request: |
| | 100 | {{{ |
| | 101 | am1.cosmos-lab.org:5054/rf_control/set_tx_path?node=sdr1-s1-lg1.bed.cosmos-lab.org&rf_port=0,1&power_amp=on&f_lower=2400&f_upper=2500 |
| | 102 | }}} |
| | 103 | |
| | 104 | Response: |
| | 105 | {{{ |
| | 106 | <response status="OK"> |
| | 107 | <message>OK</message> |
| | 108 | </response> |
| | 109 | }}} |