options:
  parameters:
    author: Tapparel Joachim@EPFL,TCL
    catch_exceptions: 'True'
    category: '[GRC Hier Blocks]'
    cmake_opt: ''
    comment: ''
    copyright: ''
    description: ''
    gen_cmake: 'On'
    gen_linking: dynamic
    generate_options: qt_gui
    hier_block_src_path: '.:'
    id: lora_TX
    max_nouts: '0'
    output_language: python
    placement: (0,0)
    qt_qss_theme: ''
    realtime_scheduling: ''
    run: 'True'
    run_command: '{python} -u {filename}'
    run_options: prompt
    sizing_mode: fixed
    thread_safe_setters: ''
    title: ''
    window_size: ''
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [8, 8.0]
    rotation: 0
    state: enabled

blocks:
- name: bandpass250k
  id: variable_band_pass_filter_taps
  parameters:
    beta: '6.76'
    comment: ''
    gain: '1.0'
    high_cutoff_freq: lora_250bandwidth/2
    low_cutoff_freq: -lora_250bandwidth/2
    samp_rate: samp_rate
    type: complex_band_pass
    value: ''
    width: lora_250bandwidth/50
    win: window.WIN_HAMMING
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1048, 4.0]
    rotation: 0
    state: enabled
- name: center_250KHz
  id: variable
  parameters:
    comment: ''
    value: '906875000'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [288, 80.0]
    rotation: 0
    state: enabled
- name: center_freq
  id: variable
  parameters:
    comment: ''
    value: '906875000'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [184, 80.0]
    rotation: 0
    state: enabled
- name: cr_44
  id: variable
  parameters:
    comment: ''
    value: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [488, 8.0]
    rotation: 0
    state: enabled
- name: cr_45
  id: variable
  parameters:
    comment: ''
    value: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [544, 8.0]
    rotation: 0
    state: enabled
- name: cr_46
  id: variable
  parameters:
    comment: ''
    value: '2'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [488, 72.0]
    rotation: 0
    state: enabled
- name: cr_47
  id: variable
  parameters:
    comment: ''
    value: '3'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [544, 72.0]
    rotation: 0
    state: enabled
- name: cr_48
  id: variable
  parameters:
    comment: ''
    value: '8'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [488, 136.0]
    rotation: 0
    state: enabled
- name: has_crc
  id: variable
  parameters:
    comment: ''
    value: 'True'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [712, 8.0]
    rotation: 0
    state: enabled
- name: impl_head
  id: variable
  parameters:
    comment: ''
    value: 'False'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [624, 8.0]
    rotation: 0
    state: enabled
- name: lora_250bandwidth
  id: variable
  parameters:
    comment: ''
    value: '250000'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [272, 8.0]
    rotation: 0
    state: enabled
- name: preamble_length
  id: variable
  parameters:
    comment: ''
    value: '16'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [624, 80.0]
    rotation: 0
    state: enabled
- name: samp_rate
  id: variable
  parameters:
    comment: ''
    value: '1000000'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [184, 8.0]
    rotation: 0
    state: enabled
- name: sf_11
  id: variable
  parameters:
    comment: ''
    value: '11'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [408, 8.0]
    rotation: 0
    state: enabled
- name: sync_word
  id: variable
  parameters:
    comment: 'Technically the sync-word here for meshtastic is 0x2b

      Trying this leads to no data gathered.

      Using the [0,0] works.'
    value: '[16,88]'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [760, 80.0]
    rotation: 0
    state: enabled
- name: blocks_throttle2_0
  id: blocks_throttle2
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    ignoretag: 'True'
    limit: auto
    maximum: '0.1'
    maxoutbuf: '0'
    minoutbuf: '0'
    samples_per_second: samp_rate*10
    type: complex
    vlen: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [792, 432.0]
    rotation: 0
    state: enabled
- name: lora_sdr_add_crc_0
  id: lora_sdr_add_crc
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    has_crc: has_crc
    maxoutbuf: '0'
    minoutbuf: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [640, 288.0]
    rotation: 0
    state: enabled
- name: lora_sdr_gray_demap_0
  id: lora_sdr_gray_demap
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
    sf: sf_11
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [480, 448.0]
    rotation: 0
    state: enabled
- name: lora_sdr_hamming_enc_0
  id: lora_sdr_hamming_enc
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    cr: cr_45
    maxoutbuf: '0'
    minoutbuf: '0'
    sf: sf_11
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [640, 368.0]
    rotation: 180
    state: enabled
- name: lora_sdr_header_0
  id: lora_sdr_header
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    cr: cr_45
    has_crc: has_crc
    impl_head: impl_head
    maxoutbuf: '0'
    minoutbuf: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [488, 272.0]
    rotation: 0
    state: enabled
- name: lora_sdr_interleaver_0
  id: lora_sdr_interleaver
  parameters:
    affinity: ''
    alias: ''
    bw: lora_250bandwidth
    comment: ''
    cr: cr_45
    ldro: '2'
    maxoutbuf: '0'
    minoutbuf: '0'
    sf: '11'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [504, 352.0]
    rotation: 180
    state: enabled
- name: lora_sdr_modulate_0
  id: lora_sdr_modulate
  parameters:
    affinity: ''
    alias: ''
    bw: lora_250bandwidth
    comment: ''
    frame_zero_padd: int(20*2**sf_11*samp_rate/lora_250bandwidth)
    maxoutbuf: '0'
    minoutbuf: '8200'
    preamb_len: preamble_length
    samp_rate: samp_rate
    sf: sf_11
    sync_words: sync_word
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [640, 432.0]
    rotation: 0
    state: enabled
- name: lora_sdr_whitening_0_0
  id: lora_sdr_whitening
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    is_hex: 'True'
    length_tag_name: '''packet_len'''
    maxoutbuf: '0'
    minoutbuf: '0'
    separator: ''','''
    source_type: message_strobe
    use_length_tag: 'False'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [264, 288.0]
    rotation: 0
    state: enabled
- name: qtgui_waterfall_sink_x_0
  id: qtgui_waterfall_sink_x
  parameters:
    affinity: ''
    alias: ''
    alpha1: '1.0'
    alpha10: '1.0'
    alpha2: '1.0'
    alpha3: '1.0'
    alpha4: '1.0'
    alpha5: '1.0'
    alpha6: '1.0'
    alpha7: '1.0'
    alpha8: '1.0'
    alpha9: '1.0'
    axislabels: 'True'
    bw: samp_rate
    color1: '0'
    color10: '0'
    color2: '0'
    color3: '0'
    color4: '0'
    color5: '0'
    color6: '0'
    color7: '0'
    color8: '0'
    color9: '0'
    comment: ''
    fc: center_250KHz
    fftsize: '32768'
    freqhalf: 'True'
    grid: 'False'
    gui_hint: ''
    int_max: '10'
    int_min: '-140'
    label1: ''
    label10: ''
    label2: ''
    label3: ''
    label4: ''
    label5: ''
    label6: ''
    label7: ''
    label8: ''
    label9: ''
    legend: 'True'
    maxoutbuf: '0'
    minoutbuf: '0'
    name: '"Channel Model"'
    nconnections: '1'
    showports: 'False'
    type: complex
    update_time: '0.10'
    wintype: window.WIN_BLACKMAN_hARRIS
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1000, 328.0]
    rotation: 0
    state: enabled
- name: soapy_hackrf_sink_0
  id: soapy_hackrf_sink
  parameters:
    affinity: ''
    alias: ''
    amp: 'False'
    bandwidth: '0'
    center_freq: center_freq
    comment: ''
    dev_args: hackrf=0
    samp_rate: samp_rate
    type: fc32
    vga: '16'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1000, 440.0]
    rotation: 0
    state: enabled
- name: zeromq_pull_msg_source_0
  id: zeromq_pull_msg_source
  parameters:
    address: tcp://0.0.0.0:30004
    affinity: ''
    alias: ''
    bind: 'True'
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
    timeout: '100'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [32, 280.0]
    rotation: 0
    state: enabled

connections:
- [blocks_throttle2_0, '0', qtgui_waterfall_sink_x_0, '0']
- [blocks_throttle2_0, '0', soapy_hackrf_sink_0, '0']
- [lora_sdr_add_crc_0, '0', lora_sdr_hamming_enc_0, '0']
- [lora_sdr_gray_demap_0, '0', lora_sdr_modulate_0, '0']
- [lora_sdr_hamming_enc_0, '0', lora_sdr_interleaver_0, '0']
- [lora_sdr_header_0, '0', lora_sdr_add_crc_0, '0']
- [lora_sdr_interleaver_0, '0', lora_sdr_gray_demap_0, '0']
- [lora_sdr_modulate_0, '0', blocks_throttle2_0, '0']
- [lora_sdr_whitening_0_0, '0', lora_sdr_header_0, '0']
- [zeromq_pull_msg_source_0, out, lora_sdr_whitening_0_0, msg]

metadata:
  file_format: 1
  grc_version: 3.10.9.2
