Is there push button block in GNU Radio Companion?
Yep — there is 👍
In GNU Radio (QT GUI) you’ve got a couple of button-style options, depending on what behavior you want:
✅ QT GUI Push Button
- Block name:
QT GUI Push Button - What it does:
Sends a message once each time you click it (momentary action). - Use case:
Triggering events like:- Resetting a counter
- Taking a snapshot
- Starting a calibration
- Important:
It does not output a stream, only a message, so you connect it to blocks with message inputs.
🔁 QT GUI Toggle Button
- Block name:
QT GUI Toggle Button - What it does:
Latches between 0/1 (or True/False). - Use case:
On/off control, enable/disable paths, gating logic.
🧓 WX GUI Button (legacy)
- Exists, but deprecated — best avoided unless you’re maintaining old flowgraphs.
Practical tip
If you want the button to affect stream processing, the usual pattern is:
Push Button → Message Debug / Variable / Message Strobe → Stream logic
(e.g. Message → Variable → Multiply Const)
Is there a GUI to continuously display a variable state in GNU Radio Companion?
Yep — there is, and it’s pretty handy 👍
In GNU Radio (QT GUI) you’ve got a few solid ways to continuously display a variable’s current value, depending on how that variable is updated.
✅ QT GUI Label
Best direct answer to your question
- Block:
QT GUI Label - What it does:
Displays the current value of a variable and updates automatically. - Works with:
- Normal variables
- Variables updated via message ports
- Typical use:
Showing gain, frequency, mode flags, counters, state machines, etc.
You just set the “Label” and “Variable” fields to the variable name.
🔁 QT GUI Number Sink
- Displays numeric values over time
- Good if your “variable” is actually a stream
- Overkill if you only want the current state
📬 Message → Variable → Label (common pattern)
If the variable changes via messages:
Message source → Variable block → QT GUI Label
Examples:
- Push Button → Variable → Label
- Message Debug → sanity check + Label
🧠 For non-numeric states
If your variable represents state (e.g. "IDLE", "TRACKING", "CALIBRATING"):
- Use:
QT GUI Label- Format the text (e.g.
State: TRACKING)
- Update via a message-based variable
Pro tip (radio-astronomy friendly 😉)
For things like:
- Integration count
- Fringe detected / not detected
- Antenna selected
- Calibration phase
QT GUI Label + message-updated variable is the cleanest, least hacky solution.