rfnoc_modtool(1)

πŸ“¦
version 4.9.0.1 Β· 2 versions
, in alpine 3.24, arch rolling, epel 10, fedora 44, nixos 26.05, nixpkgs unstable, ubuntu resolute, ubuntu stonking

πŸ’– rfnoc_modtool β€” the manual, but make it cute πŸ’–

okay bestie, gather round, because this is rfnoc_modtool(1) and she is the RFNoC OOT module management tool. That's the whole name. RFNoC. OOT. Module management. Tool. Say it with your chest. ✨


🌸 NAME 🌸

rfnoc_modtool β€” RFNoC OOT module management tool. that's it, that's the name, she's iconic and she knows it πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

Create and manage RFNoC OOT modules.

like… that's the vibe. you make them, you manage them, you move on. main character energy fr fr πŸŽ€


✨ SYNOPSIS ✨

rfnoc_modtool [COMMAND] [OPTIONS]

πŸ‘‘ COMMANDS πŸ‘‘

Run rfnoc_modtool COMMAND --help for more information on a specific command. yes bestie, every single one of them has a --help, go ask her yourself πŸ’œ

  • create β€” Create a new RFNoC OOT module. fresh start, new you, slay 🌱
  • add β€” Add a new block to an existing RFNoC OOT module. she's already got a home, now she's getting roommates 🏠
  • add-gr-oot β€” Add GNU Radio OOT Module. a whole second module, nested, we love a crossover episode 🌈
  • add-gr-block β€” Add GNU Radio block to an existing GNU Radio OOT module. 🧚
  • add-grc β€” Add GNU Radio GRC bindings for an existing block in this RFNoC OOT module. drag-and-drop era incoming ✨
  • make-yaml β€” YAML Creation Wizard -- Generate an RFNoC block YAML descriptor file based on user input. the wizard!!! she asks questions and you just answer them, no thoughts head empty, we stan πŸ§™β™€οΈ

πŸŽ€ CREATING NEW MODULES πŸŽ€

When running rfnoc_modtool create, a new directory will be created that contains the necessary files for a new RFNoC OOT module. a whole directory, birthed into existence, for you ✨

This directory will only contain boilerplate code, and the user will need to add their own blocks to the module. ngl it's giving empty apartment on move-in day β€” the furniture is on you bestie πŸ›‹οΈ

By calling 'rfnoc_modtool add-gr-oot', the user can add a GNU Radio OOT module inside the RFNoC OOT module. module-ception. lowkey obsessed. πŸŒ€


πŸ’… ADDING BLOCKS πŸ’…

When running rfnoc_modtool add, a new block will be added to an existing RFNoC OOT module. This requires previously having run rfnoc_modtool create to create the module. no module, no block. she will not be improvising one for you. 🚫

Note that in order for 'rfnoc_modtool add' to succeed, the user must provide a block descriptor file in YAML format. This file describes the block and its parameters. the YAML is the whole personality of the block, it's literally her ID πŸͺͺ

The user can create this file manually, or use the YAML Creation Wizard by running rfnoc_modtool make-yaml. The wizard will prompt the user for the necessary information to create a valid YAML file. manual mode = DIY queen energy. wizard mode = let the girl cook πŸ‘‘πŸ”₯

Once blocks have been created, the user can add native GNU Radio blocks to enable more precise control over RFNoC blocks from GNU Radio by running 'rfnoc_modtool add-gr-block'. finer control, more precision, more power, we love to see it πŸŽ›οΈ

To add GNU Radio GRC bindings for the blocks, call 'rfnoc_modtool add-grc'. and then your block shows up in GRC looking all cute πŸŽ€


🌈 EXAMPLES 🌈

πŸ“ Create a new RFNoC OOT module called filter

rfnoc_modtool create filter
cd rfnoc-filter

she made a thing and then she walked into the thing. periodt. πŸ’–

🧚 Use the YAML Creation Wizard to create a block descriptor file

rfnoc_modtool make-yaml

just answer the questions bestie, the wizard handles the rest ✨

πŸ¦‹ After editing the fir.yml file to describe the FIR filter block, add a block called fir to the filter module

rfnoc_modtool add fir

note the order: you edit fir.yml FIRST, then you add. she is not reading your mind. 🫢

πŸ’œ Now add a GNU Radio OOT module

rfnoc_modtool add-gr-oot

⭐ Add a GNU Radio block to the filter module to control the FIR RFNoC block (e.g., for better integration into the GNU Radio filter design tool)

rfnoc_modtool add-gr-block --gr-blockname rfnoc_fir fir

--gr-blockname rfnoc_fir, the fir at the end, all of it, exactly like that, don't freestyle it πŸ’…

πŸ”₯ Expose this new block into GRC

rfnoc_modtool add-grc --binding-type native fir

--binding-type native. that's the whole move. and now she's IN the GRC. πŸŽ‰


πŸ”— SEE ALSO πŸ”—

Other UHD programs:

go read the friends, they're all linked, they're all in the group chat 🫢


✍️ AUTHOR ✍️

This manual page was written by Martin Braun. shoutout to the author, no cap, thank you for your service 🫑


Copyright (c) 2015-2022 Ettus Research, A National Instruments Brand

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

bestie read that middle paragraph again. NO WARRANTY. she is free software, not a promise. the license said what it said. 😭

and that's the whole page!! brought to you by UHD 4.8.0 on the rfnoc_modtool(1) manual page πŸ’– now go create a module, you absolute icon πŸŽ€βœ¨