[[Include(WikiToC)]] === Service: mmWave Array Management This service is used to manage various (IBM PAAM, Sivers 60 GHz and Itnerdigital MHU) mmWave arrays. Array parameters: * Device Name * Number of antenna elements * TX/RX * Polarization * Number of ICs ==== Connect Connect to the array. {{{ Connect to the array Device name; choices are: ['rfdev4-in1.sb1.cosmos-lab.org', 'rfdev4-in2.sb1.cosmos-lab.org', 'rfdev2-1.sb2.cosmos-lab.org', 'rfdev2-2.sb2.cosmos-lab.org', 'rfdev-mob4-1.sb1.cosmos-lab.org'] PAAM ICs; choices are: ['all', '0', '1', '2', '3'] (default=all) Number of Antenna Elements; 1 to 16 (default=1) TX/RX Mode Selection! Should be either tx (transmit) or rx (receive) (default=tx) Polarization! Should be either h (horizontal) or v (vertical) (default=v) Verification (boolean flag); Should be true/false (default=False) }}} ==== Disconnect Disconnect the array from the control {{{ Disconnect from the array Device name; choices are: ['rfdev4-in1.sb1.cosmos-lab.org', 'rfdev4-in2.sb1.cosmos-lab.org', 'rfdev2-1.sb2.cosmos-lab.org', 'rfdev2-2.sb2.cosmos-lab.org'] }}} ==== Steer {{{ Steer the array beam Device name; choices are: ['rfdev4-in1.sb1.cosmos-lab.org', 'rfdev4-in2.sb1.cosmos-lab.org', 'rfdev2-1.sb2.cosmos-lab.org', 'rfdev2-2.sb2.cosmos-lab.org'] Theta (Beam) Angle! Integer in range -60 to 60 (default=10) Phi (Beam) Angle! Integer in range -10 to 10 (default=10) }}} ==== Status {{{ Get the status of the array Device name; choices are: ['rfdev4-in1.sb1.cosmos-lab.org', 'rfdev4-in2.sb1.cosmos-lab.org', 'rfdev2-1.sb2.cosmos-lab.org', 'rfdev2-2.sb2.cosmos-lab.org'] }}} ==== Cleanup {{{ Cleanup and shutdown the array Device name; choices are: ['rfdev4-in1.sb1.cosmos-lab.org', 'rfdev4-in2.sb1.cosmos-lab.org', 'rfdev2-1.sb2.cosmos-lab.org', 'rfdev2-2.sb2.cosmos-lab.org'] }}} ==== Configure {{{ Configure the array Device name; choices are: ['rfdev4-in1.sb1.cosmos-lab.org', 'rfdev4-in2.sb1.cosmos-lab.org', 'rfdev2-1.sb2.cosmos-lab.org', 'rfdev2-2.sb2.cosmos-lab.org'] PAAM ICs; choices are: ['all', '0', '1', '2', '3'] (default=all) Number of Antenna Elements; 1 to 16 (default=1) TX/RX Mode Selection! Should be either tx (transmit) or rx (receive) (default=tx) Polarization! Should be either h (horizontal) or v (vertical) (default=v) Theta (Beam) Angle! Integer in range -60 to 60 (default=10) Phi (Beam) Angle! Integer in range -10 to 10 (default=10) Verification (boolean flag); Should be true/false (default=False) }}} ==== Examples '''Please note that, if you see a long delay in ''curl'' command execution, chances are you forgot to turn the array on''' In the returned status messages, "duration" attribute is the operation/step duration time in seconds. ===== Single command/static array operation {{{ omf tell -a on -t rfdev4-in1.sb1.cosmos-lab.org curl "http://am1.orbit-lab.org:5054/array_mgmt/configure?dev_name=rfdev4-in1.sb1.cosmos-lab.org\&theta=16" }}} This will set the antenna array in corner 1 with all 4 ICs each with 1 element and vertically polarized in TX mode with phi angle at (default) 10 degrees and theta angle at 16 degrees ===== Resetting the array and turning it off {{{ curl "http://am1.orbit-lab.org:5054/array_mgmt/cleanup?dev_name=rfdev4-in2.sb1.cosmos-lab.org" omf tell -a offh -t rfdev4-in2.sb1.cosmos-lab.org }}} ===== Dynamic array management {{{ omf tell -a on -t rfdev4-in1.sb1.cosmos-lab.org curl "http://am1.orbit-lab.org:5054/array_mgmt/connect?dev_name=rfdev4-in1.sb1.cosmos-lab.org" ... curl "http://am1.orbit-lab.org:5054/array_mgmt/steer?dev_name=rfdev4-in1.sb1.cosmos-lab.org&theta=11&phi=10" ... curl "http://am1.orbit-lab.org:5054/array_mgmt/steer?dev_name=rfdev4-in1.sb1.cosmos-lab.org&theta=16&phi=8" ... curl "http://am1.orbit-lab.org:5054/array_mgmt/steer?dev_name=rfdev4-in1.sb1.cosmos-lab.org&theta=22&phi=0" ... curl "http://am1.orbit-lab.org:5054/array_mgmt/disconnect?dev_name=rfdev4-in1.sb1.cosmos-lab.org" ... curl "http://am1.orbit-lab.org:5054/array_mgmt/cleanup?dev_name=rfdev4-in1.sb1.cosmos-lab.org" omf tell -a offh -t rfdev4-in1.sb1.cosmos-lab.org }}}