Custom firmware for the HackRF+PortaPack H1/H2/H4 https://hackrf.app
  • C 72.9%
  • C++ 19.3%
  • Makefile 2.6%
  • HTML 1.7%
  • Assembly 1.1%
  • Other 2.1%
Find a file
Frederic BORRY c34a6940ca
EPIRB RX app rework + EPIRB TX app fixes (#3172)
* First step to EPIRB rx app fix
* Added spike filtering on carrier detection for more robustness.
* Created dedicated packet builder
* First step to fixing UI.
* First step to epirb-rx ui rework.
* Made static methods static members
* Code optim
* Code cleanup + first step to new UI
* Fixed display
* Added BeaconList widget + BeaconDB
* Epirb TX app memory optim
* Fixed OOM when opening Map Display or Locator editor on EPIRB TX app
* First step to tabs + code cleanup to free some space...
* Added spectrum analyzer + fixed display
* Fixed display refresh issue after leaving spectrum.
* More code optim + first step to detail view.
* Fixed float coord display.
* Fixed protocol names
* Fixed location display
* Externalized country base to sd card + more code optim
* Fixed country display
* Fixed path
* Added protocol description and resource manager
* Added main/aux loc device
* Removed specan to save space
* First step to adding QR code
* Used a custom TextArea component instead of Console
* Fixed QR code display for map URL
* Added beacon selection management + fixes
* First step to map/data qr.
* QR tab : added data + detail/map toggle
* Removed sqhelch to save space
* Removed audio to save space
* Removed freq label to save space
* Removed packet timestamp to save space
* Moved frequency values to resource file
* Fixed detection parameters to suite real beacons (slower phase shift time).
* Fixed countdown field size
* Fixed frequency list.
* Fixed detail view on select.
* First step to fix settings.
* Fixed squelch for a 0-99 range.
* Added bch code correction (single bit error).
* More code optim, disable country cache, removed inline from location to reduce code size.
* Removed inline, code formatting.
* Added bch code correction display.
* Fixed focus bug, fixed packet size check. Added BCH1/BCH2 correction test cases in BEACONS.TXT file for EPIRB TX application.
* Fixed merge
* Added countdown setting.
* Added selection display to beacon list
* Restored squelch control. Added countdown reset.
* Code optim on formatSummary
* More code optim
* Made ResourceManager methods static
* Externalized beacon strings to res file
*Removed frame parameter from methods
* Added test beacons for emergency. Removed old res file.
* Fixed resource manager
* Fixed resources. Added emergency display.
* BCH + res fixes
* Fixed beacons
* Fixed app color. Fixed HexId and Serial calculation.
* Fixed frequency list. Comments.
* Code cleanup and comments
* Added slideshow mode to EPIRB TX application. Code comments / cleanup.
* Fixed frame end after wrong code cleanup
* More code optim and comments. Removed touch from beacon list.
* Added beacon selection with encoder on detail view.
* Added beacon paging in header. Fixed timeout display
* Fixed build for PRALINE
* Fixed formatting
* Potential fix for pull request finding
* stop on carriage return
* empty string if unknown
* zeroing data buffer before use
* fix typo
* add include
* fix case if pair == 0
* fix scpectrum_on to spectrum_on
* fix typos
* replaced 3 inlined offset blocks with apply_offset calls
* set_beacon consolidation
2026-05-12 14:00:47 +02:00
.github Pull request guidelines (#3149) 2026-04-18 21:13:30 +02:00
.vscode Add vscode debug configuration as a template (#2109) 2024-04-17 20:21:16 +08:00
docs remove github pages CNAME (#2905) 2026-01-04 09:25:45 +01:00
firmware EPIRB RX app rework + EPIRB TX app fixes (#3172) 2026-05-12 14:00:47 +02:00
flashing PortaRF & Windows tool update (#3075) 2026-03-06 09:41:56 +13:00
hackrf@442d95e23d Merge updated submodule (#3116) 2026-03-30 23:47:39 +08:00
hardware Added 3d printed cases for the H4M (#2715) 2025-06-25 19:16:43 +02:00
sdcard EPIRB RX app rework + EPIRB TX app fixes (#3172) 2026-05-12 14:00:47 +02:00
tools fix clang format workflow, update hackrf submodule, fix subghzd compilation warning, remove flashsize.h (#2992) 2026-02-15 21:29:26 +00:00
.clang-format conform to clang spec (#2925) 2026-01-22 15:26:31 +01:00
.dockerignore docker improvements (#2455) 2024-12-31 11:27:38 +01:00
.gitignore Move flashsize.h to build directory to avoid conflicts when switching between different builds (#3021) 2026-02-22 21:21:03 +01:00
.gitmodules Replace hackrf submodule (#2404) 2024-12-05 12:31:45 +01:00
CMakeLists.txt Move flashsize.h to build directory to avoid conflicts when switching between different builds (#3021) 2026-02-22 21:21:03 +01:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2025-03-26 12:09:51 +01:00
CONTRIBUTING.md Create CONTRIBUTING.md (#2598) 2025-03-26 19:53:41 +08:00
docker-compose-nogit.yml Add file 2023-02-19 08:35:19 +01:00
docker-compose.yml Add file 2023-02-19 08:35:19 +01:00
dockerfile added lz4 to dockerfile 2023-03-27 16:22:20 +02:00
dockerfile-alpine added lz4 to dockerfile 2023-03-27 16:22:20 +02:00
dockerfile-nogit Revert "Switched build to use ninja by default (#3072)" (#3102) 2026-03-20 12:16:14 +13:00
dockerfile-nogit-alpine Remove ccache hack from dockerfiles (#1835) 2024-01-30 21:32:01 +01:00
dockerfile-nogit-arm Upgrade build container (#2394) 2024-11-25 21:19:43 +13:00
dockerize.sh Dockerize docu update (#3014) 2026-02-20 14:49:35 +01:00
format-code.ps1 fix clang format workflow, update hackrf submodule, fix subghzd compilation warning, remove flashsize.h (#2992) 2026-02-15 21:29:26 +00:00
format-code.sh fix clang format workflow, update hackrf submodule, fix subghzd compilation warning, remove flashsize.h (#2992) 2026-02-15 21:29:26 +00:00
LICENSE Create LICENSE 2021-11-17 12:15:52 +01:00
LICENSE.GPL-2.0-or-later cleanup (#1036) 2023-05-22 21:14:35 +12:00
README.md Contribution template (#3088) 2026-03-16 19:41:43 +01:00
SECURITY.md edit security policy (#3113) 2026-03-28 18:14:22 +01:00

PortaPack Mayhem

Nightly Release CodeScene Code Health GitHub All Releases GitHub Releases Docker Hub Pulls Discord Chat

This is a fork of the Havoc firmware, which itself was a fork of the PortaPack firmware, an add-on for the HackRF. A fork is a derivate, in this case one that has extra features and fixes when compared to the older versions.

What is this?

If you are new to HackRF+PortaPack+Mayhem, check these:

PortaPack H4M Crash Course

The Latest HackRF & Portapak Combo - H4M The Flipper Zero Killer? It’s TOO Easy to Accidentally Do Illegal Stuff with This HackRF Portapack H4M - Getting Started Guide The new HackRF Portapack H4M

Frequently Asked Questions

This repository expands upon the previous work by many people and aims to constantly add new features, bugfixes and generate documentation to make further development easier. Collaboration is always welcomed and appreciated.

What to buy?

✔️ Static Badge The fabulous H4M complete or upgrade, featuring numerous improvements and accessories. Sold by our friends at OpenSourceSDRLab. Join their giveaways on discord (check the badge on top). EU customers can purchase via Lab401.

✔️ A recommended one is this PortaPack H2, that includes everything you need with the plastic case "inspired" on this.

✔️ Some individuals lean towards the H2 with a metal enclosure, but its advantages remain debated. Share your insights on our wiki.

⚠️ Be cautious , ask the seller about compatibility with the latest releases. Look out for the description of the item, if they provide the firmware files for an older version or they have custom setup instructions, this means it might be NOT compatible, for example:

image

⚠️ If it looks too different, this might mean that they are using their own recipe, check the different models in our wiki. For example all the H3 and clones of that version use their own version of the firmware. They do not contribute the changes back and eventually you will be left with a device that nobody maintains:

image

Where is the latest version?

The current stable release is on the GitHub release (latest by date) page. Follow the instructions you can find in the release description. The latest (nightly) release can be found here.

How can I collaborate

We warmly welcome your contributions! Please refer to our Contributing Guidelines for details.

You can write documentation, fix bugs and answer issues or add new functionality. Please also check the following guide with details.

Consider that the hardware and firmware has been created and maintain by a lot of people, so always try collaborating your time and effort first. For coding related questions, if something does not fit as an issue, please join our Discord by clicking the chat badge on top.

Contributors

To support the people behind the hardware, please buy a genuine HackRF and PortaPack.

What if I really want something specific?

If what you need can be relevant in general, you can request a feature. Alternatively, go to our Discord by clicking the chat badge on top and discuss there.

What if I need help?

First, check the documentation. If you find a bug or you think the problem is related to the current repository, please open an issue.

You can reach the official community in Facebook, and our Discord by clicking the chat badge on top.