Skip to content

Platform Tools

Tools for discovering available blocks and managing OOT block paths.

get_all_available_blocks

List all block types available on the platform.

Returns

Type: list[BlockTypeModel]

List of block types with key and category.

Example

blocks = get_all_available_blocks()
# Returns: [
# BlockTypeModel(key="osmosdr_source", category="OsmoSDR"),
# BlockTypeModel(key="analog_sig_source_x", category="Waveform Generators"),
# ...
# ]

search_blocks

Search available blocks by keyword and/or category.

Parameters

NameTypeDefaultDescription
querystr""Search keyword
categorystr | NoneNoneFilter by category

Returns

Type: list[BlockTypeDetailModel]

Matching blocks with full details.

Example

# Search by keyword
blocks = search_blocks(query="filter")
# Returns: [BlockTypeDetailModel(key="low_pass_filter", ...), ...]
# Search by category
blocks = search_blocks(category="Audio")
# Returns: [BlockTypeDetailModel(key="audio_sink", ...), ...]
# Combined search
blocks = search_blocks(query="sink", category="Audio")

get_block_categories

Get all block categories with their block keys.

Returns

Type: dict[str, list[str]]

Dict mapping category name to list of block keys.

Example

categories = get_block_categories()
# Returns: {
# "Audio": ["audio_sink", "audio_source"],
# "OsmoSDR": ["osmosdr_source", "osmosdr_sink"],
# "Filters": ["low_pass_filter", "high_pass_filter", ...],
# ...
# }

load_oot_blocks

Load OOT (Out-of-Tree) block paths into the platform.

Parameters

NameTypeDefaultDescription
pathslist[str]-Directories containing .block.yml files

Returns

Type: dict

Result with added_paths, invalid_paths, and block counts.

Example

result = load_oot_blocks(paths=[
"/usr/local/share/gnuradio/grc/blocks",
"/home/user/gr-modules/lib/grc"
])
# Returns: {
# "added_paths": ["/usr/local/share/gnuradio/grc/blocks"],
# "invalid_paths": ["/home/user/gr-modules/lib/grc"],
# "blocks_before": 200,
# "blocks_after": 215
# }

add_block_path

Add a single directory containing OOT module block YAML files.

Parameters

NameTypeDefaultDescription
pathstr-Directory path

Returns

Type: BlockPathsModel

Updated paths and block count.

Example

result = add_block_path(path="/usr/local/share/gnuradio/grc/blocks")
# Returns: BlockPathsModel(
# paths=[...],
# total_blocks=215,
# blocks_added=15
# )

get_block_paths

Show current OOT block paths and total block count.

Returns

Type: BlockPathsModel

Current paths configuration.

Example

paths = get_block_paths()
# Returns: BlockPathsModel(
# paths=[
# "/usr/share/gnuradio/grc/blocks",
# "/usr/local/share/gnuradio/grc/blocks"
# ],
# total_blocks=215
# )