options: parameters: category: '[IEEE802.11]' generate_options: hb hier_block_src_path: '.:' id: wifi_phy_hier max_nouts: '0' placement: (0,0) run: 'True' run_command: '{python} -u {filename}' run_options: prompt sizing_mode: fixed title: WiFi PHY Hier window_size: 1280, 1024 states: coordinate: [8, 8] rotation: 0 state: enabled blocks: - name: header_formatter id: variable parameters: value: ieee802_11.signal_field() states: coordinate: [400, 12] rotation: 0 state: enabled - name: max_symbols id: variable parameters: value: int(5 + 1 + ((16 + 1540 * 8 + 6) * 2) / 24) states: coordinate: [528, 12] rotation: 0 state: enabled - name: sync_length id: variable parameters: value: '320' states: coordinate: [192, 12] rotation: 0 state: enabled - name: window_size id: variable parameters: value: '48' states: coordinate: [296, 12] rotation: 0 state: enabled - name: bandwidth id: parameter parameters: hide: none type: eng_float value: 10e6 states: coordinate: [1008, 12] rotation: 0 state: enabled - name: blocks_complex_to_mag_0 id: blocks_complex_to_mag parameters: maxoutbuf: '0' minoutbuf: '0' vlen: '1' states: coordinate: [960, 584] rotation: 0 state: enabled - name: blocks_complex_to_mag_squared_0 id: blocks_complex_to_mag_squared parameters: maxoutbuf: '0' minoutbuf: '0' vlen: '1' states: coordinate: [592, 504] rotation: 0 state: enabled - name: blocks_conjugate_cc_0 id: blocks_conjugate_cc parameters: maxoutbuf: '0' minoutbuf: '0' states: coordinate: [384, 600] rotation: 0 state: enabled - name: blocks_delay_0 id: blocks_delay parameters: delay: sync_length maxoutbuf: '0' minoutbuf: '0' num_ports: '1' type: complex vlen: '1' states: coordinate: [424, 764] rotation: 0 state: enabled - name: blocks_delay_0_0 id: blocks_delay parameters: delay: '16' maxoutbuf: '0' minoutbuf: '0' num_ports: '1' type: complex vlen: '1' states: coordinate: [232, 596] rotation: 0 state: enabled - name: blocks_divide_xx_0 id: blocks_divide_xx parameters: maxoutbuf: '0' minoutbuf: '0' num_inputs: '2' type: float vlen: '1' states: coordinate: [1120, 656] rotation: 270 state: enabled - name: blocks_moving_average_xx_0 id: blocks_moving_average_xx parameters: length: window_size max_iter: '4000' scale: '1' type: complex vlen: '1' states: coordinate: [760, 572.0] rotation: 0 state: true - name: blocks_moving_average_xx_1 id: blocks_moving_average_xx parameters: length: window_size + 16 max_iter: '4000' scale: '1' type: float vlen: '1' states: coordinate: [816, 476.0] rotation: 0 state: true - name: blocks_multiply_xx_0 id: blocks_multiply_xx parameters: maxoutbuf: '0' minoutbuf: '0' num_inputs: '2' type: complex vlen: '1' states: coordinate: [608, 568] rotation: 0 state: enabled - name: blocks_stream_to_vector_0 id: blocks_stream_to_vector parameters: maxoutbuf: '0' minoutbuf: '0' num_items: '64' type: complex vlen: '1' states: coordinate: [880, 776.0] rotation: 0 state: enabled - name: blocks_tagged_stream_mux_0 id: blocks_tagged_stream_mux parameters: lengthtagname: '"packet_len"' maxoutbuf: '0' minoutbuf: max_symbols * 48 * 8 ninputs: '2' tag_preserve_head_pos: '1' type: complex vlen: '1' states: coordinate: [744, 256] rotation: 0 state: enabled - name: chan_est id: parameter parameters: hide: none value: ieee802_11.LS states: coordinate: [640, 12] rotation: 0 state: enabled - name: digital_chunks_to_symbols_xx_0 id: digital_chunks_to_symbols_xx parameters: dimension: '1' in_type: byte maxoutbuf: '0' minoutbuf: max_symbols * 48 * 8 * 2 num_ports: '1' out_type: complex symbol_table: '[-1, 1]' states: coordinate: [504, 204] rotation: 0 state: enabled - name: digital_ofdm_carrier_allocator_cvc_0_0_0 id: digital_ofdm_carrier_allocator_cvc parameters: fft_len: '64' len_tag_key: '"packet_len"' maxoutbuf: '0' minoutbuf: max_symbols * 48 * 8 occupied_carriers: (list(range(-26, -21)) + list(range(-20, -7)) + list(range(-6, 0)) + list(range(1, 7)) + list(range(8, 21)) +list( range(22, 27)),) pilot_carriers: ((-21, -7, 7, 21), ) pilot_symbols: ((1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (1, 1, 1, -1), (1, 1, 1, -1), (1, 1, 1, -1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1), (-1, -1, -1, 1)) sync_words: ((0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (-1.4719601443879746-1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, (1.4719601443879746+1.4719601443879746j), 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0), (0, 0j, 0, 0j, 0, 0j, -1, 1j, -1, 1j, -1, 1j, -1, -1j, 1, 1j, 1, -1j, -1, 1j, 1, 1j, 1, 1j, 1, 1j, -1, (-0-1j), 1, -1j, -1, 1j, 0, -1j, 1, (-0-1j), 1, -1j, 1, 1j, -1, -1j, 1, (-0-1j), -1, 1j, 1, 1j, 1, 1j, 1, 1j, -1, -1j, 1, 1j, 1, -1j, -1, 0j, 0, 0j, 0, 0j), (0, 0, 0, 0, 0, 0, 1, 1, -1, -1, 1, 1, -1, 1, -1, 1, 1, 1, 1, 1, 1, -1, -1, 1, 1, -1, 1, -1, 1, 1, 1, 1, 0, 1, -1, -1, 1, 1, -1, 1, -1, 1, -1, -1, -1, -1, -1, 1, 1, -1, -1, 1, -1, 1, -1, 1, 1, 1, 1, 0, 0, 0, 0, 0)) states: coordinate: [1040, 232] rotation: 0 state: enabled - name: digital_ofdm_cyclic_prefixer_0_0 id: digital_ofdm_cyclic_prefixer parameters: cp_len: '16' input_size: '64' maxoutbuf: '0' minoutbuf: max_symbols * 48 * 8 * 10 rolloff: '2' tagname: '"packet_len"' states: coordinate: [752, 376] rotation: 180 state: enabled - name: digital_packet_headergenerator_bb_0 id: digital_packet_headergenerator_bb parameters: header_formatter: header_formatter.formatter() len_tag_key: '"packet_len"' maxoutbuf: '0' minoutbuf: '0' states: coordinate: [240, 204] rotation: 0 state: enabled - name: encoding id: parameter parameters: hide: none type: intx value: ieee802_11.BPSK_1_2 states: coordinate: [728, 12] rotation: 0 state: enabled - name: fft_vxx_0_0 id: fft_vxx parameters: fft_size: '64' forward: 'False' maxoutbuf: '0' minoutbuf: max_symbols * 48 * 8 * 10 nthreads: '1' shift: 'True' type: complex window: tuple([1/52**.5] * 64) states: coordinate: [1040, 368] rotation: 180 state: enabled - name: fft_vxx_0_1 id: fft_vxx parameters: fft_size: '64' forward: 'True' maxoutbuf: '0' minoutbuf: '0' nthreads: '1' shift: 'True' type: complex window: window.rectangular(64) states: coordinate: [992, 888] rotation: 180 state: enabled - name: frequency id: parameter parameters: hide: none type: eng_float value: 5.89e9 states: coordinate: [920, 12] rotation: 0 state: enabled - name: ieee802_11_chunks_to_symbols_xx_0 id: ieee802_11_chunks_to_symbols_xx parameters: maxoutbuf: max_symbols * 48 * 8 minoutbuf: max_symbols * 48 * 8 states: coordinate: [496, 288] rotation: 0 state: enabled - name: ieee802_11_decode_mac_0 id: ieee802_11_decode_mac parameters: debug: 'False' log: 'False' maxoutbuf: '0' minoutbuf: '0' states: coordinate: [512, 924] rotation: 180 state: enabled - name: ieee802_11_frame_equalizer_0 id: ieee802_11_frame_equalizer parameters: algo: ieee802_11.LS bw: bandwidth debug: 'False' freq: frequency log: 'False' maxoutbuf: '0' minoutbuf: '0' states: coordinate: [776, 888] rotation: 180 state: enabled - name: ieee802_11_mapper_0 id: ieee802_11_mapper parameters: debug: 'True' encoding: ieee802_11.BPSK_1_2 maxoutbuf: '0' minoutbuf: '0' states: coordinate: [208, 108] rotation: 180 state: enabled - name: pad_sink_0 id: pad_sink parameters: label: samp_out num_streams: '1' optional: 'False' type: complex vlen: '1' states: coordinate: [576, 396] rotation: 180 state: enabled - name: pad_sink_1 id: pad_sink parameters: label: carrier num_streams: '1' optional: 'True' type: message vlen: '1' states: coordinate: [560, 868.0] rotation: 180 state: enabled - name: pad_sink_2 id: pad_sink parameters: label: mac_out num_streams: '1' optional: 'True' type: message vlen: '1' states: coordinate: [328, 932] rotation: 180 state: enabled - name: pad_source_0 id: pad_source parameters: label: samp_in num_streams: '1' optional: 'False' type: complex vlen: '1' states: coordinate: [64, 500] rotation: 0 state: enabled - name: pad_source_1 id: pad_source parameters: label: mac_in num_streams: '1' optional: 'True' type: message vlen: '1' states: coordinate: [424, 116] rotation: 180 state: enabled - name: sensitivity id: parameter parameters: hide: none type: eng_float value: '0.56' states: coordinate: [824, 12] rotation: 0 state: enabled - name: sync_long id: ieee802_11_sync_long parameters: debug: 'False' log: 'False' maxoutbuf: '0' minoutbuf: '0' sync_length: sync_length states: coordinate: [608, 732] rotation: 0 state: enabled - name: sync_short id: ieee802_11_sync_short parameters: debug: 'False' log: 'False' maxoutbuf: '0' min_plateau: '2' minoutbuf: '0' threshold: sensitivity states: coordinate: [112, 704] rotation: 0 state: enabled connections: - [blocks_complex_to_mag_0, '0', blocks_divide_xx_0, '0'] - [blocks_complex_to_mag_squared_0, '0', blocks_moving_average_xx_1, '0'] - [blocks_conjugate_cc_0, '0', blocks_multiply_xx_0, '1'] - [blocks_delay_0, '0', sync_long, '1'] - [blocks_delay_0_0, '0', blocks_conjugate_cc_0, '0'] - [blocks_delay_0_0, '0', sync_short, '0'] - [blocks_divide_xx_0, '0', sync_short, '2'] - [blocks_moving_average_xx_0, '0', blocks_complex_to_mag_0, '0'] - [blocks_moving_average_xx_0, '0', sync_short, '1'] - [blocks_moving_average_xx_1, '0', blocks_divide_xx_0, '1'] - [blocks_multiply_xx_0, '0', blocks_moving_average_xx_0, '0'] - [blocks_stream_to_vector_0, '0', fft_vxx_0_1, '0'] - [blocks_tagged_stream_mux_0, '0', digital_ofdm_carrier_allocator_cvc_0_0_0, '0'] - [digital_chunks_to_symbols_xx_0, '0', blocks_tagged_stream_mux_0, '0'] - [digital_ofdm_carrier_allocator_cvc_0_0_0, '0', fft_vxx_0_0, '0'] - [digital_ofdm_cyclic_prefixer_0_0, '0', pad_sink_0, '0'] - [digital_packet_headergenerator_bb_0, '0', digital_chunks_to_symbols_xx_0, '0'] - [fft_vxx_0_0, '0', digital_ofdm_cyclic_prefixer_0_0, '0'] - [fft_vxx_0_1, '0', ieee802_11_frame_equalizer_0, '0'] - [ieee802_11_chunks_to_symbols_xx_0, '0', blocks_tagged_stream_mux_0, '1'] - [ieee802_11_decode_mac_0, out, pad_sink_2, in0] - [ieee802_11_frame_equalizer_0, '0', ieee802_11_decode_mac_0, '0'] - [ieee802_11_frame_equalizer_0, symbols, pad_sink_1, in0] - [ieee802_11_mapper_0, '0', digital_packet_headergenerator_bb_0, '0'] - [ieee802_11_mapper_0, '0', ieee802_11_chunks_to_symbols_xx_0, '0'] - [pad_source_0, '0', blocks_complex_to_mag_squared_0, '0'] - [pad_source_0, '0', blocks_delay_0_0, '0'] - [pad_source_0, '0', blocks_multiply_xx_0, '0'] - [pad_source_1, out0, ieee802_11_mapper_0, in] - [sync_long, '0', blocks_stream_to_vector_0, '0'] - [sync_short, '0', blocks_delay_0, '0'] - [sync_short, '0', sync_long, '0'] metadata: file_format: 1