efforg/rayhunter#871

View on GitHub →
#871 Pinephone mainboard v1.1 and EG25-G

Found a Pine64 PINEPHONE : BRAVEHEART EDITION Main Board for $126 USD. image

Looking at the schematic, it exposes antenna, power and USB, and I assume a UART. Are these enough to get rayhunter going on the main board itself?

Would any Quectel EG25-G LTE module connected to a microcontroller that exposes a UART also work?

1
Comments (1)

Interesting find! The PinePhone Braveheart mainboard v1.1 should work for rayhunter, since the EG25-G modem is exactly what rayhunter already targets on the PinePhone. Here’s the breakdown:

What Rayhunter Needs

Rayhunter communicates with the Quectel EG25-G modem via QMI (Qualcomm MSM Interface) over USB. The key requirements are:

  1. USB connection to the EG25-G — The modem exposes several USB endpoints (QMI, AT command, NMEA, etc.)
  2. Linux host with libqmi or direct QMI access
  3. Power supply — The EG25-G needs 3.3-4.3V at up to 2A peak during transmission

PinePhone Mainboard Approach

On the PinePhone mainboard v1.1, the EG25-G is connected via:

  • USB 2.0 — This is the primary data interface (QMI + AT commands)
  • UART — Used for AT commands and firmware updates (/dev/ttyUSB2 typically)
  • GPIO — Power on/off, reset, airplane mode, status

If you’re running the mainboard standalone (without the LCD/battery/etc.), you’d need:

Power supply (5V via USB-C or battery pads) → Mainboard → EG25-G (internal)
                                                ↓
                                          USB host (your computer)

The simplest approach:

  1. Power the mainboard via USB-C or the battery connector (3.7-4.2V Li-Po pads)
  2. The A64 SoC boots Linux (Mobian, postmarketOS, etc.)
  3. Rayhunter runs on the A64 and talks to the EG25-G over internal USB
  4. Access rayhunter’s web UI via USB networking or WiFi

Standalone EG25-G Module

Yes, any Quectel EG25-G module would also work, but with more effort:

  1. Mini PCIe or M.2 breakout board for the EG25-G (easier than bare module)
  2. Connect USB to your host machine (Raspberry Pi, laptop, etc.)
  3. The EG25-G appears as multiple USB serial devices + QMI endpoint
  4. Run rayhunter on the host, pointing it at the QMI device
# Once connected, you should see:
ls /dev/ttyUSB*
# ttyUSB0 - DM/diagnostic
# ttyUSB1 - NMEA (GPS)
# ttyUSB2 - AT commands
# ttyUSB3 - PPP/data

# QMI device:
ls /dev/cdc-wdm*
# cdc-wdm0 - QMI interface (this is what rayhunter uses)

The UART-only approach would be more limited — rayhunter primarily uses QMI for the deep DIAG/diagnostic interface that captures the signaling messages (attach requests, authentication, etc.). AT commands alone won’t give you the low-level NAS/RRC messages that rayhunter analyzes for stingray detection.

Cost-Effective Alternative

If the $126 PinePhone mainboard is mainly for the EG25-G modem, you can get standalone EG25-G Mini PCIe modules for ~$25-35 on AliExpress and use them with any Linux SBC + USB adapter. But the PinePhone mainboard gives you an all-in-one solution with known-good rayhunter compatibility.

1