GNU Radio World

Fosphor Spectrum and Waterfall

Interactive real-time spectrum and waterfall display using gr-fosphor. A complex tone mixed with noise demonstrates fosphor's persistent color-density spectrum, live trace, and max hold. The browser uses WebGPU when available and automatically falls back to Qt 6 CPU plots; the editor console reports which renderer was selected.

Press Load to open this flowgraph in an editor embedded above, then ▶ to run it. Nothing is downloaded until you do.

Open in the full editor ▶ Download the .grc

Blocks used

BlockModuleUsed
Fosphor Sinkgr-fosphor1
GR World RecordingGNU Radio1
IShort To ComplexGNU Radio1
ThrottleGNU Radio1
VariableGNU Radio1

Flowgraph source

fosphor/fosphor_spectrum_waterfall.grc
options:
    parameters:
        author: Marc
        copyright: ''
        description: Interactive real-time spectrum and waterfall display using gr-fosphor. A complex tone mixed with noise demonstrates fosphor's persistent color-density spectrum, live trace, and max hold. The browser uses WebGPU when available and automatically falls back to Qt 6 CPU plots; the editor console reports which renderer was selected.
        generate_options: qt_gui
        id: Fosphor_Spectrum_and_Waterfall
        title: Fosphor Spectrum and Waterfall
    states:
        coordinate: [10, 10]
        rotation: 0
        state: enabled
blocks:
-   name: samp_rate
    id: variable
    parameters:
        comment: ''
        value: int(1e6)
    states:
        coordinate: [580, 10]
        rotation: 0
        state: enabled
-   name: complex10
    id: blocks_interleaved_short_to_complex
    parameters:
        affinity: ''
        alias: ''
        comment: ''
        maxoutbuf: '0'
        minoutbuf: '0'
        scale_factor: '32767'
        swap: 'False'
        vector_input: 'False'
    states:
        coordinate: [370, 160]
        rotation: 0
        state: enabled
-   name: fosphor
    id: fosphor_qt_sink_c
    parameters:
        affinity: ''
        alias: ''
        comment: ''
        freq_center: '0'
        freq_span: samp_rate
        gui_hint: ''
        maxoutbuf: '0'
        minoutbuf: '0'
        wintype: window.WIN_BLACKMAN_hARRIS
    states:
        coordinate: [1010, 160]
        rotation: 0
        state: enabled
-   name: source9
    id: wasm_gr_world_recording
    parameters:
        affinity: ''
        alias: ''
        comment: ''
        length: '0'
        maxoutbuf: '0'
        minoutbuf: '0'
        offset: '0'
        recording: cellular_downlink_880MHz
        repeat: 'False'
        type: short
    states:
        coordinate: [10, 130]
        rotation: 0
        state: enabled
-   name: throttle
    id: blocks_throttle2
    parameters:
        affinity: ''
        alias: ''
        comment: ''
        ignoretag: 'True'
        limit: time
        maximum: '0.05'
        maxoutbuf: '0'
        minoutbuf: '0'
        samples_per_second: samp_rate
        type: complex
        vlen: '1'
    states:
        coordinate: [680, 140]
        rotation: 0
        state: enabled
connections:
- [complex10, '0', throttle, '0']
- [source9, '0', complex10, '0']
- [throttle, '0', fosphor, '0']
metadata:
    file_format: 1
    grc_version: 3.11.0.0