The reusable roles a description composes. A role step names one and
passes variables; the role owns everything else.
This page is generated from the collection, so the variables and
defaults below are what the installed version actually has rather than
what someone remembered to write down. The prose is not generated.
The roles that produce results. Each one owns a complete measurement - staging the DSP, running the sweep, writing the CSV and the SigMF recording - so a description supplies the choices and nothing else.
cosmos_lab.orchestration.fr3_ofdm_berOFDM BER across the sb1 FR3 chain: two USRP-2974s and the two Pi-Radio upconverters they feed. Four devices, all of which must agree about the frequency plan before a single bit moves.
| Variable | Default | Notes |
|---|---|---|
cosmos_fr3_usrp_freq_hz |
1000000000 |
what both USRPs tune to |
cosmos_fr3_low_lo_hz |
700000000 |
front-end low-side LO |
cosmos_fr3_high_lo_hz |
10000000000 |
front-end high-side LO |
cosmos_fr3_rf_hz |
(computed) |
|
cosmos_fr3_min_if_offset_hz |
100000000 |
|
cosmos_fr3_use_upconverters |
true |
|
cosmos_fr3_tx_host |
(unset) |
|
cosmos_fr3_rx_host |
(unset) |
|
cosmos_fr3_tx_upconverter |
(unset) |
|
cosmos_fr3_rx_upconverter |
(unset) |
|
cosmos_fr3_channel |
0 |
|
cosmos_fr3_tx_gain_db |
30 |
|
cosmos_fr3_rx_gain_db |
30 |
|
cosmos_fr3_allow_transmit |
false |
|
cosmos_fr3_restore_on_teardown |
true |
|
cosmos_fr3_sub |
bpsk |
|
cosmos_fr3_tx_flowgraph |
"fr3_ofdm_tx_{{ cosmos_fr3_sub }}" |
|
cosmos_fr3_rx_flowgraph |
"fr3_ofdm_rx_{{ cosmos_fr3_sub }}" |
|
cosmos_fr3_samp_rate |
1000000 |
|
cosmos_fr3_amplitude |
0.02 |
|
cosmos_fr3_seed |
42 |
|
cosmos_fr3_skip |
200000 |
samples dropped while the link settles |
cosmos_fr3_usrp_tx_gain |
15 |
|
cosmos_fr3_usrp_rx_gain |
30 |
|
cosmos_fr3_tx_antenna |
"TX/RX" |
|
cosmos_fr3_rx_antenna |
"RX2" |
|
cosmos_fr3_device_args |
"resource=RIO0" |
|
cosmos_fr3_subdev |
"A:0" |
|
cosmos_fr3_expect_product |
X310 |
|
cosmos_fr3_sweep_mode |
noise |
|
cosmos_fr3_coding |
none |
|
cosmos_fr3_matrix_port_tx |
3 |
|
cosmos_fr3_matrix_port_rx |
6 |
|
cosmos_fr3_matrix_sdr_position |
2 |
|
cosmos_fr3_matrix_atten_db |
[0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, ... |
|
cosmos_am_url |
http://am-rt1.cosmos-lab.org:5054 |
|
cosmos_rfmatrix_username |
(unset) |
|
cosmos_rfmatrix_password |
(unset) |
|
cosmos_fr3_ctl_port |
8080 |
|
cosmos_fr3_tx_channel |
0 |
|
cosmos_fr3_rx_channel |
0 |
|
cosmos_fr3_gain_settle_seconds |
3 |
|
cosmos_fr3_tx_gains |
[30, 40, 50, 55, 60, 65, 70, 75, 80, 85, 89] |
|
cosmos_fr3_amplitudes |
[0.03, 0.04, 0.06, 0.08, 0.10, 0.15, 0.20, ... |
|
cosmos_fr3_probe_errors |
100 |
|
cosmos_fr3_probe_seconds |
60 |
|
cosmos_fr3_probe_clean_bits |
2000000 |
|
cosmos_fr3_csv_header |
"snr_db,snr_eff_db,noise_scale,bytes,packet... |
|
cosmos_fr3_snr_db |
"4:24:1" |
|
cosmos_fr3_noise_scales |
"" |
|
cosmos_fr3_dwell_seconds |
10 |
|
cosmos_fr3_target_errors |
500 |
|
cosmos_fr3_max_seconds_per_point |
300 |
stops the tail running forever |
cosmos_fr3_clean_bits |
10000000 |
|
cosmos_fr3_stop_on_clean |
true |
|
cosmos_fr3_min_snr_margin_db |
3.0 |
|
cosmos_fr3_refine_step_db |
0.25 |
|
cosmos_fr3_refine_span_db |
1.0 |
|
cosmos_fr3_settle_seconds |
"{{ 15 if cosmos_fr3_use_upconverters \| boo... |
|
cosmos_fr3_noise_method |
file |
|
cosmos_fr3_noise_file |
(unset) |
|
cosmos_fr3_noise_file_on_node |
(unset) |
|
cosmos_fr3_noise_kind |
awgn |
awgn | coloured | impulsive, for the stock ones |
cosmos_fr3_noise_count |
1048576 |
samples in a generated recording |
cosmos_fr3_noise_seed |
1234 |
|
cosmos_fr3_noise_stride |
65536 |
|
cosmos_fr3_dir |
/root/fr3-ofdm |
|
cosmos_fr3_capture_seconds |
2.0 |
|
cosmos_fr3_capture_frames |
300 |
|
cosmos_fr3_clock_source |
internal |
|
cosmos_fr3_time_source |
internal |
|
cosmos_fr3_data_link_addr |
"" |
|
cosmos_fr3_data_link_peer |
"192.168.40.2" |
|
cosmos_fr3_data_link_speeds |
(computed) |
|
cosmos_fr3_data_link_mtu |
9000 |
|
cosmos_fr3_tx_device_args |
"{{ cosmos_fr3_device_args }}" |
|
cosmos_fr3_rx_device_args |
"{{ cosmos_fr3_device_args }}" |
|
cosmos_fr3_results_dir |
/run/cosmos/fr3-ofdm |
|
cosmos_fr3_tx_unit |
cosmos-fr3-ofdm-tx |
|
cosmos_fr3_capture_iq |
false |
|
cosmos_fr3_matrix_prepare |
false |
|
cosmos_fr3_matrix_fixed_atten_db |
22 |
|
cosmos_fr3_stop_below_ber |
0 |
|
cosmos_fr3_ported_tx_mods |
[16qam, 64qam, 256qam] |
|
cosmos_fr3_txpower_source |
usrp |
cosmos_lab.orchestration.gnuradio_berTwo-node digital-modulation BER measurement on stock GNU Radio 3.10.
| Variable | Default |
|---|---|
cosmos_ber_mods |
[bpsk, qpsk] |
cosmos_ber_ebn0 |
"0:13:0.25" |
cosmos_ber_nsyms |
2000000 |
cosmos_ber_freq_hz |
2400000000 |
cosmos_ber_samp_rate |
1000000 |
cosmos_ber_sps |
4 |
cosmos_ber_rolloff |
0.35 |
cosmos_ber_period |
1023 |
cosmos_ber_seed |
0 |
cosmos_ber_skip |
40000 |
cosmos_ber_equalizer |
none |
cosmos_ber_tx_antenna |
"TX/RX" |
cosmos_ber_rx_antenna |
"RX2" |
cosmos_ber_tx_gain |
65 |
cosmos_ber_rx_gain |
40 |
cosmos_ber_amplitude |
0.6 |
cosmos_ber_fll_bw |
(unset) |
cosmos_ber_costas_bw |
(unset) |
cosmos_ber_sync_bw |
(unset) |
cosmos_ber_eq_taps |
(unset) |
cosmos_ber_eq_mu |
(unset) |
cosmos_ber_eq_sps |
(unset) |
cosmos_ber_clock_source |
internal |
cosmos_ber_time_source |
internal |
cosmos_ber_sigmf |
true |
cosmos_ber_capture_iq |
false |
cosmos_ber_method |
auto |
cosmos_ber_subdomain_profiles |
(computed) |
cosmos_ber_method_default |
inject |
cosmos_ber_tx_gain_sweep |
[89, 84, 80, 76, 72, 68, 64, 60, 56] |
cosmos_ber_matrix_atten_db |
[0, 6, 12, 18, 24, 30, 36] |
cosmos_ber_matrix_port_tx |
(unset) |
cosmos_ber_matrix_port_rx |
(unset) |
cosmos_ber_min_link_ebn0 |
5 |
cosmos_ber_repo |
https://gitlab.orbit-lab.org/tutorials/ber.git |
cosmos_ber_version |
main |
cosmos_ber_dir |
/root/ber |
cosmos_ber_require_gnuradio |
true |
cosmos_ber_results_dir |
/run/cosmos/ber |
cosmos_ber_tx_unit |
cosmos-ber-tx |
cosmos_lab.orchestration.lora_linkTwo-node LoRa: build the PHY on both nodes, transmit from one, decode on the other, and report how many frames survived.
| Variable | Default |
|---|---|
cosmos_lora_repo |
https://gitlab.orbit-lab.org/tutorials/gr-l... |
cosmos_lora_version |
cosmos |
cosmos_lora_dir |
/root/lora |
cosmos_lora_freq_hz |
915000000 |
cosmos_lora_sf |
7 |
cosmos_lora_bw |
125000 |
cosmos_lora_cr |
1 |
cosmos_lora_tx_gain |
70 |
cosmos_lora_rx_gain |
40 |
cosmos_lora_seconds |
60 |
cosmos_lora_tx_host |
(unset) |
cosmos_lora_rx_host |
(unset) |
cosmos_lora_results_dir |
/run/cosmos/lora |
cosmos_lora_tx_unit |
cosmos-lora-tx |
cosmos_lora_rx_unit |
cosmos-lora-rx |
cosmos_lora_min_reception |
0.5 |
cosmos_lora_atten_db |
[] |
cosmos_am_url |
http://am-rt1.cosmos-lab.org:5054 |
cosmos_rfmatrix_username |
(unset) |
cosmos_rfmatrix_password |
(unset) |
cosmos_lora_matrix_port_tx |
3 |
cosmos_lora_matrix_port_rx |
6 |
cosmos_lora_matrix_sdr_position |
2 |
cosmos_lora_matrix_fixed_atten_db |
22 |
cosmos_lora_atten_settle_seconds |
2 |
cosmos_lora_tx_gains |
[] |
cosmos_lora_gain_sweep_atten_db |
60 |
cosmos_lora_gain_sweep_use_matrix |
true |
cosmos_lora_period_duty_factor |
2.0 |
cosmos_lora_period_floor_ms |
1000 |
cosmos_lora_payload_bytes |
14 |
cosmos_lora_bw_hz |
125000 |
cosmos_lab.orchestration.fm_broadcastPut the FM station's DSP on the node, and the two short wrappers on PATH.
| Variable | Default | Notes |
|---|---|---|
cosmos_fm_dir |
/root/fm |
|
cosmos_fm_bin_dir |
/usr/local/bin |
|
cosmos_fm_results_dir |
/run/cosmos/fm |
|
cosmos_fm_freq_hz |
100100000 |
100.1 MHz - clear of the FM band's edges |
cosmos_fm_tx_gain |
25 |
|
cosmos_fm_rx_gain |
30 |
|
cosmos_fm_tx_antenna |
TX/RX |
|
cosmos_fm_rx_antenna |
RX2 |
|
cosmos_fm_dev_args |
"type=x300,addr=192.168.40.2" |
|
cosmos_fm_http_port |
8000 |
|
cosmos_fm_data_link_addr |
"" |
|
cosmos_fm_data_link_mtu |
9000 |
|
cosmos_fm_data_link_peer |
192.168.40.2 |
cosmos_lab.orchestration.iperf_5gClient runs on the UE; the server runs on the console (default, exercises the core NAT) or in oai-ext-dn. In teardown, stop the server.
| Variable | Default | Notes |
|---|---|---|
cosmos_iperf_seconds |
10 |
|
cosmos_iperf_ue_iface |
wwan0 |
|
cosmos_iperf_mtu |
1400 |
|
cosmos_iperf_peer |
console |
|
cosmos_iperf_console_ip |
"" |
|
cosmos_iperf_server_container |
oai-ext-dn |
|
cosmos_iperf_server_ip |
"192.168.70.131" |
only used when peer == extdn |
cosmos_iperf_gnb_group |
cosmos_gnb |
|
cosmos_iperf_unit |
cosmos-iperf3 |
cosmos_lab.orchestration.readsbBuild wiedehopf/readsb from source and decode ADS-B off a USRP.
| Variable | Default |
|---|---|
cosmos_readsb_freq_hz |
1090000000 |
cosmos_readsb_gain |
50 |
cosmos_readsb_duration |
60 |
cosmos_readsb_soapy_device |
"driver=uhd,type=b200" |
cosmos_readsb_repo |
https://github.com/wiedehopf/readsb |
cosmos_readsb_version |
dev |
cosmos_readsb_dir |
/root/readsb |
cosmos_readsb_jobs |
4 |
cosmos_readsb_build_packages |
(computed) |
cosmos_readsb_json_dir |
/run/readsb |
cosmos_readsb_results_dir |
/run/cosmos/adsb |
cosmos_readsb_force_build |
false |
cosmos_readsb_require_position |
false |
cosmos_readsb_min_aircraft |
0 |
cosmos_lab.orchestration.usrp_iq_calUHD IQ-imbalance and TX DC-offset calibration, made to survive re-imaging.
| Variable | Default |
|---|---|
cosmos_control_host |
localhost |
cosmos_usrp_cal_state |
restore |
cosmos_usrp_cal_store |
"{{ lookup('env', 'HOME') }}/.cosmos/uhd-cal" |
cosmos_usrp_cal_node_dir |
/root/.local/share/uhd/cal |
cosmos_usrp_cal_device_args |
"" |
cosmos_usrp_cal_utilities |
(computed) |
cosmos_usrp_cal_allow_transmit |
false |
cosmos_usrp_cal_timeout |
1800 |
cosmos_usrp_cal_warmup_seconds |
300 |
cosmos_usrp_cal_overwrite |
false |
cosmos_usrp_cal_strict |
false |
Run before any measurement, usually without being asked for. node_ready is the one that images a node when the description requests an image, so it is also the one that can destroy what was there.
cosmos_lab.orchestration.node_readyCapability-first node readiness. See docs/design.md section 4.5.
| Variable | Default |
|---|---|
cosmos_control_host |
localhost |
cosmos_requires |
{} |
cosmos_image_policy |
if-needed |
cosmos_image |
baseline.ndz |
cosmos_image_resize |
"0" |
cosmos_allow_destructive |
false |
cosmos_boot_timeout |
300 |
cosmos_image_timeout |
800 |
cosmos_write_image_stamp |
true |
cosmos_node_user |
root |
cosmos_lab.orchestration.softwareStage an experiment's software onto a node. See docs/design.md section 5.4.
| Variable | Default |
|---|---|
cosmos_software |
{} |
cosmos_software_cache_valid_time |
3600 |
cosmos_software_venv |
/opt/cosmos/venv |
cosmos_software_use_venv |
true |
cosmos_software_break_system_packages |
false |
cosmos_software_remove_forbidden |
false |
cosmos_software_replace_unmanaged |
false |
cosmos_lab.orchestration.sdr_commonEstablish that a node's SDR stack is usable, by probing it.
| Variable | Default |
|---|---|
cosmos_sdr_device_args |
"type=b200" |
cosmos_sdr_expect_product |
B210 |
cosmos_sdr_require_soapy |
true |
cosmos_sdr_soapy_driver |
uhd |
cosmos_sdr_forbidden_packages |
(computed) |
cosmos_sdr_forbidden_fatal |
true |
cosmos_sdr_uhd_images_dir |
"" |
cosmos_sdr_download_uhd_images |
false |
Attenuator matrices, positioners, upconverters and front ends - equipment reached over HTTP rather than by logging into a node, and shared with everyone else on the testbed. Every one of these restores what it found, even when the experiment fails.
cosmos_lab.orchestration.service_rfmatrixDrive the conducted-RF attenuation matrix. See docs/design.md section 5.3.
| Variable | Default |
|---|---|
cosmos_control_host |
localhost |
cosmos_am_url |
http://am-rt1.cosmos-lab.org:5054 |
cosmos_rfmatrix_username |
(unset) |
cosmos_rfmatrix_password |
(unset) |
cosmos_rfmatrix_state |
queried |
cosmos_rfmatrix_port_a |
(unset) |
cosmos_rfmatrix_port_b |
(unset) |
cosmos_rfmatrix_attenuation |
(unset) |
cosmos_rfmatrix_values |
[] |
cosmos_rfmatrix_switch |
(unset) |
cosmos_rfmatrix_port |
(unset) |
cosmos_rfmatrix_reset_on_teardown |
false |
cosmos_lab.orchestration.service_xy_tablePosition the sandbox XY tables. See docs/design.md section 5.3.
| Variable | Default |
|---|---|
cosmos_control_host |
localhost |
cosmos_am_url |
http://am-rt1.cosmos-lab.org:5054 |
cosmos_xy_tables |
[] |
cosmos_xy_x |
(unset) |
cosmos_xy_y |
(unset) |
cosmos_xy_angle |
(unset) |
cosmos_xy_state |
positioned |
cosmos_xy_tolerance |
2.0 |
cosmos_xy_angle_tolerance |
1.0 |
cosmos_xy_wait |
true |
cosmos_xy_timeout |
180 |
cosmos_xy_poll_interval |
5 |
cosmos_xy_terminal_states |
[Idle] |
cosmos_xy_terminal_rotator_states |
[Holding, Idle] |
cosmos_lab.orchestration.service_piradioConfigure PI Radio FR3 upconverters. See docs/design.md section 5.3.
| Variable | Default |
|---|---|
cosmos_control_host |
localhost |
cosmos_piradio_hosts |
[] |
cosmos_piradio_port |
5111 |
cosmos_piradio_state |
queried |
cosmos_piradio_low_lo |
(unset) |
cosmos_piradio_high_lo |
(unset) |
cosmos_piradio_chain |
(unset) |
cosmos_piradio_channel |
(unset) |
cosmos_piradio_value |
(unset) |
cosmos_piradio_iq |
(unset) |
cosmos_piradio_allow_transmit |
false |
cosmos_piradio_restore_on_teardown |
false |
cosmos_lab.orchestration.service_rf_controlConfigure per-node RF front ends. See docs/design.md section 5.3.
| Variable | Default |
|---|---|
cosmos_control_host |
localhost |
cosmos_am_url |
http://am-rt1.cosmos-lab.org:5054 |
cosmos_rf_nodes |
[] |
cosmos_rf_state |
configured |
cosmos_rf_ports |
[0] |
cosmos_rf_power_amp |
"off" |
cosmos_rf_f_center |
(unset) |
cosmos_rf_f_bandwidth |
(unset) |
cosmos_rf_f_lower |
(unset) |
cosmos_rf_f_upper |
(unset) |
cosmos_rf_allow_transmit |
false |
An access point, a station, and the verification that they actually associated - a worked example of composing small roles rather than writing one large one.
cosmos_lab.orchestration.wifi_apBring up an 802.11 access point with hostapd.
| Variable | Default |
|---|---|
cosmos_wifi_ssid |
cosmos-wifi |
cosmos_wifi_channel |
1 |
cosmos_wifi_hw_mode |
g |
cosmos_wifi_ap_ip |
192.168.100.1/24 |
cosmos_wifi_iperf_server |
true |
cosmos_wifi_ap_unit |
cosmos-hostapd |
cosmos_wifi_iperf_unit |
cosmos-iperf3 |
cosmos_lab.orchestration.wifi_staJoin an 802.11 network with wpa_supplicant.
| Variable | Default |
|---|---|
cosmos_wifi_ssid |
cosmos-wifi |
cosmos_wifi_sta_ip |
192.168.100.2/24 |
cosmos_wifi_assoc_timeout |
60 |
cosmos_wifi_sta_unit |
cosmos-wpa-supplicant |
cosmos_lab.orchestration.wifi_commonPrepare a node's 802.11 radio. Shared by wifi_ap and wifi_sta.
| Variable | Default |
|---|---|
cosmos_wifi_reg_domain |
US |
cosmos_wifi_packages |
(computed) |
cosmos_wifi_drivers_preferred |
(computed) |
cosmos_wifi_driver |
ath10k_pci |
cosmos_wifi_skip_install |
false |
cosmos_wifi_iface_retries |
12 |
cosmos_wifi_iface_delay |
5 |
cosmos_lab.orchestration.wifi_verifyVerify the link end to end: association, reachability, throughput.
| Variable | Default |
|---|---|
cosmos_wifi_peer_ip |
192.168.100.1 |
cosmos_wifi_ping_count |
5 |
cosmos_wifi_max_loss_pct |
0 |
cosmos_wifi_iperf_seconds |
5 |
cosmos_wifi_min_mbps |
0 |
cosmos_wifi_results_dir |
/run/cosmos/wifi |
Three deliberately SEPARATE 5G stacks - Amarisoft, OAI, and the O-RAN 7.2 split - plus the radio units and UEs they drive. They share no roles and no descriptions on purpose: the separation is a requirement, not an accident, so do not compose one stack's roles with another's.
cosmos_lab.orchestration.amarisoft_ranBring up the Amarisoft gNB + core. In teardown, stop them (frees licence seats).
| Variable | Default | Notes |
|---|---|---|
cosmos_amari_start_script |
/root/amarisoft/start.sh |
|
cosmos_amari_enb_dir |
/opt/amarisoft/enb |
|
cosmos_amari_mme_dir |
/opt/amarisoft/mme |
|
cosmos_amari_band |
78 |
|
cosmos_amari_channel_bw_mhz |
40 |
20 | 40 | 100 (100 needs the N310; SDR50 <= 40) |
cosmos_amari_dl_arfcn |
632628 |
|
cosmos_amari_plmn |
"00101" |
|
cosmos_amari_max_ues |
1 |
|
cosmos_amari_allow_transmit |
false |
|
cosmos_amari_ngap_port |
38412 |
|
cosmos_amari_up_retries |
30 |
|
cosmos_amari_up_delay |
3 |
cosmos_lab.orchestration.amarisoft_sweepRun the N-UE / offered-load matrix. In teardown, power off the UEs and stop lteue + any traffic.
| Variable | Default | Notes |
|---|---|---|
cosmos_sweep_ws_host |
127.0.0.1 |
|
cosmos_sweep_ws_port |
9002 |
|
cosmos_sweep_n_ues |
1 |
|
cosmos_sweep_n_ues_list |
"" |
e.g. "1,2,4,8,16" |
cosmos_sweep_load_mbps |
10 |
|
cosmos_sweep_load_list |
"" |
e.g. "5,10,20,50" |
cosmos_sweep_direction |
both |
downlink | uplink | both |
cosmos_sweep_duration |
30 |
|
cosmos_sweep_netns_tmpl |
"ue{id}" |
|
cosmos_sweep_iperf_server |
"" |
|
cosmos_sweep_iperf_base_port |
5201 |
|
cosmos_sweep_allow_transmit |
false |
|
cosmos_sweep_out_dir |
/run/cosmos/amarisoft-sweep |
cosmos_lab.orchestration.oai_cn5gBring up OAI CN5G and export the AMF NGAP IP as a fact for the gNB roles. In teardown (cosmos_step_teardown), stop the core instead.
| Variable | Default |
|---|---|
cosmos_cn5g_script |
/root/core-up.sh |
cosmos_cn5g_provision_script |
/root/provision-ue.sh |
cosmos_cn5g_plmn |
"00101" |
cosmos_cn5g_imsi |
"001010000000032" |
cosmos_cn5g_dnn |
oai |
cosmos_cn5g_imsi_extra |
"" |
cosmos_cn5g_up_timeout |
240 |
cosmos_lab.orchestration.oai_gnb_sdrLaunch a monolithic OAI 5G gNB over a USRP X310. In teardown, stop it.
| Variable | Default |
|---|---|
cosmos_gnb_build_dir |
/opt/duranta/cmake_targets/ran_build/build |
cosmos_gnb_conf_src |
/opt/duranta/targets/PROJECTS/GENERIC-NR-5G... |
cosmos_gnb_conf |
/root/gnb-x310-mono.conf |
cosmos_gnb_sdr_addr |
"10.38.2.2" |
cosmos_gnb_sdr_iface |
DATA1 |
cosmos_gnb_master_clock_hz |
184320000 |
cosmos_gnb_att_tx |
0 |
cosmos_gnb_max_rxgain |
37 |
cosmos_gnb_frame_args |
"recv_frame_size=8192,num_recv_frames=1024,... |
cosmos_gnb_band |
78 |
cosmos_gnb_prb |
106 |
cosmos_gnb_scs_khz |
30 |
cosmos_gnb_ssb_arfcn |
621312 |
cosmos_gnb_pointa_arfcn |
620040 |
cosmos_gnb_plmn |
"00101" |
cosmos_gnb_snssai_sst_only |
true |
cosmos_gnb_amf_ip |
"{{ cosmos_cn5g_amf_ip \| default('') }}" |
cosmos_gnb_cpus |
"2,4,6,8,10,12,14,16" |
cosmos_gnb_allow_transmit |
false |
cosmos_gnb_unit |
cosmos-oai-gnb |
cosmos_gnb_log |
/run/cosmos/oai-5gsa/gnb.log |
cosmos_gnb_ready_retries |
40 |
cosmos_gnb_ready_delay |
3 |
cosmos_lab.orchestration.oai_gnb_rfsim| Variable | Default |
|---|---|
cosmos_gnb_build_dir |
/opt/duranta/cmake_targets/ran_build/build |
cosmos_gnb_rfsim_conf |
/opt/duranta/targets/PROJECTS/GENERIC-NR-5G... |
cosmos_gnb_role |
server |
cosmos_gnb_plmn |
"00101" |
cosmos_gnb_amf_ip |
"{{ cosmos_cn5g_amf_ip \| default('') }}" |
cosmos_gnb_unit |
cosmos-oai-gnb |
cosmos_gnb_log |
/run/cosmos/oai-5gsa/gnb.log |
cosmos_gnb_ready_retries |
30 |
cosmos_gnb_ready_delay |
3 |
cosmos_lab.orchestration.oai_gnb_mplane| Variable | Default |
|---|---|
cosmos_du_script |
/root/start-mplane.sh |
cosmos_du_log |
/tmp/oai-mplane.log |
cosmos_du_allow_transmit |
false |
cosmos_du_ready_retries |
40 |
cosmos_du_ready_delay |
3 |
cosmos_lab.orchestration.oai_oran_du| Variable | Default |
|---|---|
cosmos_du_script |
/root/start-du.sh |
cosmos_du_log |
/tmp/oai-du.log |
cosmos_du_ready_retries |
40 |
cosmos_du_ready_delay |
3 |
cosmos_lab.orchestration.oai_oran_ru| Variable | Default |
|---|---|
cosmos_ru_script |
/root/start-ru.sh |
cosmos_ru_log |
/root/nr-oru.log |
cosmos_ru_ready_retries |
15 |
cosmos_ru_ready_delay |
3 |
cosmos_lab.orchestration.oai_fronthaul| Variable | Default |
|---|---|
cosmos_fh_script |
/root/fh-up.sh |
cosmos_fh_assert_isolcpus |
true |
cosmos_fh_ptp_lock_retries |
20 |
cosmos_fh_ptp_lock_delay |
3 |
cosmos_lab.orchestration.oai_ue_rfsim| Variable | Default |
|---|---|
cosmos_ue_build_dir |
/opt/duranta/cmake_targets/ran_build/build |
cosmos_ue_serveraddr |
127.0.0.1 |
cosmos_ue_imsi |
"001010000000031" |
cosmos_ue_dnn |
oai |
cosmos_ue_unit |
cosmos-oai-ue |
cosmos_ue_log |
/run/cosmos/oai-5gsa/ue.log |
cosmos_ue_ready_retries |
30 |
cosmos_ue_ready_delay |
3 |
cosmos_lab.orchestration.benetel_oruOnly bring-up; the RU is a shared instrument left powered on teardown.
| Variable | Default |
|---|---|
cosmos_benetel_power_node |
benetel-oru.instrument.orbit-lab.org |
cosmos_benetel_power_console |
console.rrail.cosmos-lab.org |
cosmos_benetel_ip |
"10.3.12.20" |
cosmos_benetel_wait_830_secs |
360 |
cosmos_lab.orchestration.quectel_ueAttach the Quectel UE and export its IP. In teardown, stop the data call.
| Variable | Default |
|---|---|
cosmos_ue_apn |
oai |
cosmos_ue_band |
78 |
cosmos_ue_expect_pool |
"192.168.100" |
cosmos_ue_wdm |
/dev/cdc-wdm0 |
Called by the framework rather than by a description. Listed for completeness and for anyone reading the source.
cosmos_lab.orchestration.cosmos_preflightcosmos_preflight: fail FAST and CLEARLY before an experiment touches anything.
No public variables.
cosmos_lab.orchestration.experiment_stepInterpret one step. See docs/design.md section 5.6 for the step kinds.
| Variable | Default |
|---|---|
cosmos_step |
{} |
cosmos_step_index |
0 |
cosmos_step_teardown |
false |
cosmos_artifacts_dir |
"{{ lookup('env', 'HOME') }}/cosmos-artifacts" |
cosmos_external_dir |
"{{ lookup('env', 'HOME') }}/.cosmos/external" |
cosmos_lab.orchestration.run_manifestWrite run.json, the reproducibility record (F7, docs/design.md section 5.8).
| Variable | Default |
|---|---|
cosmos_artifacts_dir |
"{{ lookup('env', 'HOME') }}/cosmos-artifacts" |
cosmos_run_id |
"manual" |
cosmos_manifest_experiment |
{} |
cosmos_manifest_assignment |
{} |
cosmos_manifest_parameters |
{} |
cosmos_manifest_description_path |
"" |
cosmos_manifest_subdomain |
"" |
cosmos_manifest_include_inventory |
true |
Generated from the collection source.