Table of Contents
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Warning
This application transmits RF signals that may cause interference. Use only for authorised testing on equipment you own or have explicit permission to test. Jamming is illegal in most jurisdictions.
Hopper transmits on a user-defined list of frequencies, cycling through all of them using the jammer baseband. All listed channels are active simultaneously within the baseband; the "hop" interval controls how long each transmission burst lasts before moving to the next channel. It is designed for testing multi-channel interference resilience on systems you own.
SD Card Setup
Frequency lists are stored as .PHOP files in the HOPPER/ directory at the root of the SD card. Each line in the file contains one frequency in Hz. Lines starting with # are treated as comments and skipped.
Example file (HOPPER/mylist.PHOP):
# My test frequencies
433920000
315000000
868000000
Up to 80 frequencies can be loaded. Additional entries beyond the limit are ignored.
Controls
- 📁 (Load): Opens a file browser in
HOPPER/, filtered to.PHOPfiles. Replaces the current list. - 💾 (Save): Prompts for a filename and saves the current frequency list as a
.PHOPfile inHOPPER/. - ➕ (Add): Opens the frequency keypad to add a single frequency to the current list.
- 🗑 (Delete): Removes the currently highlighted frequency from the list.
- 🧹 (Clear): Clears the entire frequency list after confirmation.
- START / STOP: Begins or ends transmission.
Settings
-
Type: Signal type generated on each channel. Options (with defaults in bold):
Rand FSK— Random FSK noiseFM tone— FM-modulated toneCW sweep— Continuous wave sweepRand CW— Random amplitude CW (default)Sine— Sine waveSquare— Square waveSawtooth— Sawtooth waveTriangle— Triangle waveChirp— Linear frequency chirpGauss— Gaussian noiseBrute— Broadband noise
-
Speed: Modulation speed / symbol rate within each channel:
10 Hz,100 Hz,1 kHz,10 kHz(default),100 kHz
-
Hop: Dwell time per channel before switching:
0ms !!— Fastest possible; causes the HackRF UI to freeze. Press the hardware RESET button to recover.1ms,10ms,50ms(default),100ms,1s,2s,5s,10s
-
TX (1–180 seconds): How long the app transmits before entering the sleep/pause period.
-
Sle3p (1–60 seconds): Duration of the pause (cooldown) between TX bursts. During the pause the transmitter is disabled. This TX→pause cycle repeats continuously while running.
-
Jitter (1–60, unit: /60 seconds): A random offset applied to the TX and pause timers using an LFSR sequence, preventing a perfectly regular duty cycle. Higher values mean more timing variation.
-
Gain (0–47): TX gain.
-
A (0/1): RF amplifier on/off.
Frequency Counter
The display shows the current channel number and total number of active channels (e.g. 03/05) as the baseband cycles through them.
Note
Hopper has no settings persistence — frequency lists must be reloaded from SD card after each app launch.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Start here
Contributors
How to collaborate
Contributing Guidelines
How to ask questions correctly
Hardware
- PortaPack Versions (which one to buy)
- Features
- HackRF Versions
- Description of the hardware
- Enclosure/cases
- Repairs
- Mods
User manual
Intended use and Legality
- Usage cautions
- First steps
- Firmware update procedure
- User interface
- Powering the PortaPack
- Troubleshooting
- Won't boot
- Config Menu
- Firmware upgrade
- Diagnose firmware update in Windows
- Receive Quality Issues
- No TX/RX
- TX Carrier Only
- H2+ speaker modifications
- Dead Coin Cell Battery
- Factory Defaults
- SD card not recognized by PC with the SD-card over USB selected
- DFU overlay
- Full reset
- SolveBoard
- How to Format SDCard
- What if I don't like some of the apps
Applications
- 📥 Receivers
- 📤 Transmitters
- ADS-B(S) TX
- Adult Toys
- APRS TX
- BHT Xy/EP
- BLE TX
- BLESpam
- Burger Pager
- CVS Spam
- EPIRB
- FlipperTX
- GPS Sim
- Hopper
- Jammer
- KeeLoq TX
- Key fob TX
- LGE Tool
- MDC-1200 TX
- Morse TX
- OOK
- OOK Brute
- OOK Editor
- P25 TX
- POCSAG TX
- RDS
- RTTY TX
- SAME TX
- Signal gen
- Soundboard
- Spectrum Painter
- SSTV
- TEDI/LCR
- TouchTunes
- TPMS TX
- 🔄 Transceivers
- 🟡 Recon
- 🔴 Capture
- ▶️ Replay
- 🖲️ Remote
- 🔍 Looking Glass
- 🛠️ Utilities
- 🎮 Games
- ⚙️ Settings
- 💻 HackRF Mode
Misc
Developer Manual
- Compilation of the firmware
- Compile on WSL with ninja
- How to compile on Windows faster with WSL 2
- Using Docker and Kitematic
- Docker command-line reference
- Using Buddyworks and other CI platforms
- Notes for Buddy.Works (and other CI platforms)
- Using ARM on Debian host
- All in one script for ARM on Debian host
- Compile on Arch based distro (exclude Asahi), or other weird distros
- Dev build versions
- Notes About ccache
- Create a custom map
- Code formatting
- PR process
- Description of the Structure
- Software Dev Guides
- Tools
- Research
- UI Screenshots
- Maintaining
- Creating a prod/stable release (Maintainers only)
- Maintaining rules
- Development States Notes
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Note
The wiki is incomplete. Please add content and collaborate.
Important
- This is a public wiki. Everything is visible to everyone. Don't use it for personal notes.
- Avoid linking to external tutorials/articles; they may become outdated or contain false information.