options:
  parameters:
    author: Daniel Estevez
    catch_exceptions: 'True'
    category: Custom
    cmake_opt: ''
    comment: ''
    copyright: ''
    description: LilacSat-1 decoder
    gen_cmake: 'On'
    gen_linking: dynamic
    generate_options: hb
    hier_block_src_path: '.:'
    id: lilacsat1_ber_viterbi
    max_nouts: '0'
    output_language: python
    placement: (0,0)
    qt_qss_theme: ''
    realtime_scheduling: ''
    run: 'True'
    run_command: '{python} -u {filename}'
    run_options: run
    sizing_mode: fixed
    thread_safe_setters: ''
    title: LilacSat-1 decoder
    window_size: 1280,2048
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [16, 8]
    rotation: 0
    state: enabled

blocks:
- name: alpha
  id: variable
  parameters:
    comment: ''
    value: '0.35'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [608, 588.0]
    rotation: 0
    state: enabled
- name: nfilts
  id: variable
  parameters:
    comment: ''
    value: '16'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [480, 580.0]
    rotation: 0
    state: enabled
- name: nfilts_0
  id: variable
  parameters:
    comment: ''
    value: '16'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1536, 60.0]
    rotation: 0
    state: enabled
- name: rrc_taps
  id: variable
  parameters:
    comment: ''
    value: firdes.root_raised_cosine(nfilts, nfilts, 1.0/float(sps), alpha, 11*sps*nfilts)
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [104, 572.0]
    rotation: 0
    state: enabled
- name: rrc_taps_0
  id: variable
  parameters:
    comment: ''
    value: firdes.root_raised_cosine(nfilts, nfilts, 1.0/float(samp_per_sym), 0.35,
      11*samp_per_sym*nfilts)
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1400, 140.0]
    rotation: 0
    state: enabled
- name: samp_per_sym
  id: variable
  parameters:
    comment: ''
    value: '5'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1368, 52.0]
    rotation: 0
    state: enabled
- name: samp_rate
  id: variable
  parameters:
    comment: ''
    value: '48000'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1240, 36.0]
    rotation: 0
    state: enabled
- name: sps
  id: variable
  parameters:
    comment: ''
    value: '5'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [368, 564.0]
    rotation: 0
    state: enabled
- name: threshold
  id: variable
  parameters:
    comment: ''
    value: '3'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1568, 220.0]
    rotation: 0
    state: enabled
- name: variable_constellation_0_0
  id: variable_constellation
  parameters:
    comment: ''
    const_points: '[-1, 1]'
    dims: '1'
    normalization: digital.constellation.AMPLITUDE_NORMALIZATION
    precision: '8'
    rot_sym: '2'
    soft_dec_lut: None
    sym_map: '[0, 1]'
    type: calcdist
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1640, 16.0]
    rotation: 0
    state: enabled
- name: bfo
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: carrier frequency of the BPSK signal
    short_id: ''
    type: eng_float
    value: '12000'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [760, 12.0]
    rotation: 0
    state: enabled
- name: blocks_complex_to_real_0
  id: blocks_complex_to_real
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
    vlen: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [72, 832]
    rotation: 0
    state: enabled
- name: blocks_delay_0
  id: blocks_delay
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    delay: '1'
    maxoutbuf: '0'
    minoutbuf: '0'
    num_ports: '1'
    type: float
    vlen: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [392, 884.0]
    rotation: 0
    state: enabled
- name: callsign
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: your callsign
    short_id: ''
    type: ''
    value: ''
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [448, 8.0]
    rotation: 0
    state: enabled
- name: digital_costas_loop_cc_0_0
  id: digital_costas_loop_cc
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
    order: '2'
    use_snr: 'False'
    w: '0.1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1680, 420.0]
    rotation: 0
    state: enabled
- name: digital_fll_band_edge_cc_0
  id: digital_fll_band_edge_cc
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    filter_size: '100'
    maxoutbuf: '0'
    minoutbuf: '0'
    rolloff: '0.350'
    samps_per_sym: sps
    type: cc
    w: '0.001'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [568, 444.0]
    rotation: 0
    state: enabled
- name: digital_pfb_clock_sync_xxx_0
  id: digital_pfb_clock_sync_xxx
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    filter_size: nfilts
    init_phase: nfilts/2
    loop_bw: '0.05'
    max_dev: '0.01'
    maxoutbuf: '0'
    minoutbuf: '0'
    osps: '1'
    sps: sps
    taps: rrc_taps
    type: ccf
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1256, 400.0]
    rotation: 0
    state: enabled
- name: inp
  id: pad_source
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    label: in
    maxoutbuf: '0'
    minoutbuf: '0'
    num_streams: '1'
    optional: 'False'
    type: complex
    vlen: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [96, 284]
    rotation: 0
    state: enabled
- name: ip
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: UDP listen IP
    short_id: ''
    type: str
    value: 0.0.0.0
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [272, 12.0]
    rotation: 0
    state: enabled
- name: latitude
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: latitude (format 00.000 or -00.000)
    short_id: ''
    type: eng_float
    value: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [736, 140.0]
    rotation: 0
    state: enabled
- name: longitude
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: longitude (format 00.000 or -00.000)
    short_id: ''
    type: eng_float
    value: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1016, 140.0]
    rotation: 0
    state: enabled
- name: low_pass_filter_0
  id: low_pass_filter
  parameters:
    affinity: ''
    alias: ''
    beta: '6.76'
    comment: ''
    cutoff_freq: '6000'
    decim: '1'
    gain: '1'
    interp: '1'
    maxoutbuf: '0'
    minoutbuf: '0'
    samp_rate: samp_rate
    type: fir_filter_ccf
    width: '500'
    win: window.WIN_HAMMING
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [976, 400.0]
    rotation: 0
    state: enabled
- name: low_pass_filter_0_0
  id: low_pass_filter
  parameters:
    affinity: ''
    alias: ''
    beta: '6.76'
    comment: ''
    cutoff_freq: '10000'
    decim: '1'
    gain: '1'
    interp: '1'
    maxoutbuf: '0'
    minoutbuf: '0'
    samp_rate: samp_rate
    type: fir_filter_ccf
    width: '1000'
    win: window.WIN_HAMMING
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [336, 208.0]
    rotation: 0
    state: enabled
- name: out
  id: pad_sink
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    label: out
    num_streams: '1'
    optional: 'False'
    type: byte
    vlen: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [800, 780.0]
    rotation: 0
    state: enabled
- name: out_0
  id: pad_sink
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    label: out
    num_streams: '1'
    optional: 'False'
    type: byte
    vlen: '1'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [1024, 884.0]
    rotation: 0
    state: enabled
- name: port
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: UDP port
    short_id: ''
    type: intx
    value: '7355'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [624, 12.0]
    rotation: 0
    state: enabled
- name: recstart
  id: parameter
  parameters:
    alias: ''
    comment: ''
    hide: none
    label: start of recording, if processing a recording (format YYYY-MM-DD HH:MM:SS)
    short_id: ''
    type: ''
    value: ''
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [992, 16.0]
    rotation: 0
    state: enabled
- name: satellites_ccsds_viterbi_0
  id: satellites_ccsds_viterbi
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [320, 808.0]
    rotation: 0
    state: true
- name: satellites_ccsds_viterbi_1
  id: satellites_ccsds_viterbi
  parameters:
    affinity: ''
    alias: ''
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [592, 896.0]
    rotation: 0
    state: true
- name: satellites_rms_agc_0
  id: satellites_rms_agc
  parameters:
    affinity: ''
    alias: ''
    alpha: 1e-2
    comment: ''
    maxoutbuf: '0'
    minoutbuf: '0'
    reference: '0.5'
  states:
    bus_sink: false
    bus_source: false
    bus_structure: null
    coordinate: [672, 312.0]
    rotation: 0
    state: true

connections:
- [blocks_complex_to_real_0, '0', blocks_delay_0, '0']
- [blocks_complex_to_real_0, '0', satellites_ccsds_viterbi_0, '0']
- [blocks_delay_0, '0', satellites_ccsds_viterbi_1, '0']
- [digital_costas_loop_cc_0_0, '0', blocks_complex_to_real_0, '0']
- [digital_fll_band_edge_cc_0, '0', low_pass_filter_0, '0']
- [digital_pfb_clock_sync_xxx_0, '0', digital_costas_loop_cc_0_0, '0']
- [inp, '0', low_pass_filter_0_0, '0']
- [low_pass_filter_0, '0', digital_pfb_clock_sync_xxx_0, '0']
- [low_pass_filter_0_0, '0', satellites_rms_agc_0, '0']
- [satellites_ccsds_viterbi_0, '0', out, '0']
- [satellites_ccsds_viterbi_1, '0', out_0, '0']
- [satellites_rms_agc_0, '0', digital_fll_band_edge_cc_0, '0']

metadata:
  file_format: 1
  grc_version: v3.11.0.0git-75-g67e88516
