Custom firmware for the HackRF+PortaPack H1/H2
  • C 71.4%
  • C++ 20.1%
  • Makefile 2.5%
  • HTML 1.6%
  • Assembly 1.1%
  • Other 3.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Mo 834076356e
VDL2 RX: VHF Data Link mode 2 receiver, ACARS per aircraft (#3400)
* VDL2 RX: VHF Data Link mode 2 receiver, ACARS per aircraft

New external app (RX menu). Receives one VDL2 channel (136.975 MHz and the
other European and North American ones): D8PSK at 10500 symbols/s, synced
on the training sequence with the carrier offset taken from it, the
header FEC, descrambling, RS(255,249) with erasures for the short last
block, de-interleaving, HDLC and the X.25 FCS. The app lists aircraft by
ICAO address with registration, flight and frame count (registration,
model and operator from the ADS-B database when the frames don't carry
them) and ground stations; the detail view shows frames by kind, the
OOOI times and the last ACARS messages. Config: log to LOGS/VDL2.TXT,
small font.

* VDL2 RX: review fixes (thread start, M0 heap, detail rows)

- start the baseband thread only after the filters are configured
- keep at most 16 entries with 3 messages of 64 characters, for the
  M0 heap on a HackRF One; the log keeps the messages whole
- the frame counts on two rows, so they fit 30 columns

* VDL2 RX: Messages view, all ACARS texts of an aircraft in full

The detail view gets a Messages button next to Back: a scrollable view
(up/down, encoder) of every message of that aircraft, wrapped, with time
and direction. The texts live in one store for the app, at most 32
messages and 4 KiB, oldest out first, instead of shortened copies in each
entry; the view reads it in place.

* VDL2 RX: no copyright line in the new files

* VDL2 RX: detail view, two fields a row (ICAO and Reg, Flight and Type)
2026-11-03 20:18:32 +01:00
.github Warn when a PR targets master (#3367) 2026-10-11 21:38:32 +08: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 VDL2 RX: VHF Data Link mode 2 receiver, ACARS per aircraft (#3400) 2026-11-03 20:18:32 +01:00
flashing PortaRF & Windows tool update (#3075) 2026-03-06 09:41:56 +13:00
hackrf@b80cddb56b update submodule (#3322) 2026-09-17 23:54:01 +02:00
hardware Open‑Source Hardware Files for H4M Pro (#3298) 2026-08-25 07:16:33 +12:00
scripts/toolchain build tool and agent.md (#2993) 2026-06-12 16:52:13 +08:00
sdcard Fix macaddress.db downloader got blocked by CDN (#3356) 2026-10-10 23:16:27 +08:00
tools Multiple type of ext apps for different devices (#3344) 2026-10-07 21:27:53 +08: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 Airband VOR receiver and trasmitter (#3244) 2026-07-04 08:49:21 +02:00
.gitmodules Replace hackrf submodule (#2404) 2024-12-05 12:31:45 +01:00
AGENT.md build tool and agent.md (#2993) 2026-06-12 16:52:13 +08:00
CMakeLists.txt Multiple type of ext apps for different devices (#3344) 2026-10-07 21:27:53 +08: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
mbt Spectrum Analyzer app (#3343) 2026-10-06 10:23:16 +08:00
README.md build tool and agent.md (#2993) 2026-06-12 16:52:13 +08: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:

HackRF Pro Quick Look

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

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.