Skip to content
MCU Atlas
ESP32ESP32-P4

LakeShark: a LoRa chip turned handheld radio scanner on the LilyGO T-Display P4

Open-source ESP32-P4 firmware that turns the Semtech LR2021 LoRa chip into an SDR: P25 voice, FM, pagers and aircraft on a handheld, no PC.

Difficulty:IntermediateSource available

What it is

A pocket radio scanner: firmware for the LilyGO T-Display P4 that uses its LR2021 LoRa chip as an SDR to hear P25 voice, FM, pagers and aircraft, with no PC.

What you need

How hard

Intermediate. No soldering: flash from the browser and go. The radio side has a learning curve, several features are experimental, and what you may receive or transmit depends on local law.

Key Facts

  • Board: LilyGO T-Display P4 (ESP32-P4 + ESP32-C6), LR2021 or SX1262 LoRa version
  • LR2021 raw 16-bit I/Q via an undocumented ROM command; 100 MHz-2.74 GHz measured on one board (ROM 1.24)
  • Up to 250,000 samples/s over SPI
  • Decodes P25 Phase I voice, FM/AM, POCSAG, ADS-B; plus MeshCore, Sub-GHz capture, offline maps
  • SX1262 version: add an RTL-SDR for FM, P25 and ADS-B
  • Install: browser installer (Chrome/Edge) or ESP-IDF 5.5.4
  • LilyGO store, Oct 22, 2026: TFT LR2021 (830-945 MHz) $100.39 in stock; AMOLED LR2021 $124.31 sold out
  • License: GPL-3.0; P25 Phase II, I/Q transmit and HackRF marked experimental

About This Project

LakeShark by SAMS0N1TE turns the LilyGO T-Display P4 into an open-source handheld radio multitool. The trick behind it is the companion LR2021-SDR project: an undocumented command in the Semtech LR2021's ROM hands over raw 16-bit I/Q samples instead of demodulated LoRa packets, so a LoRa chip becomes a software-defined radio. On one LR2021 board the author measured reception from 100 MHz to 2.74 GHz, well past the datasheet bands, at up to 250,000 samples per second over plain SPI, tested on LR2021 ROM 1.24. On the LR2021 version of the LilyGO T-Display P4, LakeShark decodes P25 Phase I voice, FM/AM, POCSAG pagers and 1090 MHz ADS-B aircraft with no external SDR, and also runs MeshCore messaging, LoRa tools, live waterfalls, Sub-GHz capture with Flipper-style .sub export, offline maps with GPS, and a compass. The SX1262 version keeps MeshCore, LoRa and POCSAG; add an RTL-SDR dongle (RTL-SDR Blog V3/V4) over USB for FM, P25 and ADS-B. HackRF One support is experimental. Note this is an LR2021 trick: it does not turn the SX1262 in common Meshtastic boards into an SDR, and LakeShark's mesh app speaks MeshCore, not Meshtastic. You install it from Chrome or Edge with the project's browser installer over a USB data cable, then update over Wi-Fi from the UPDATE app; a microSD card holds maps, captures and recordings. You can also build it with ESP-IDF 5.5.4 plus the patches in the repo. Several features are marked experimental (P25 Phase II, LR2021 I/Q transmit and replay, HackRF), and the README reminds you that radio reception and transmission are subject to local laws. On October 22, 2026 the LilyGO store listed the T-Display P4 TFT 830-945 MHz LR2021 version at $100.39 (in stock) and the AMOLED LR2021 versions at $124.31 (sold out). The README's LR2021 build target uses the AMOLED board defaults, so check the installer supports the TFT LR2021 board before you buy it.

Source & Attribution

Source: GitHub
License: GPL-3.0
Last verified: 10/22/2026
LakeShark: a LoRa chip turned handheld radio scanner on the LilyGO T-Display P4

Illustration

How to Build It
Get the LR2021 version of the LilyGO T-Display P4, flash LakeShark from the browser installer, and start with FM, pagers and the waterfall.

Parts Needed

Steps

  1. 1

    Pick the right board

    The onboard SDR needs the LR2021 version of the T-Display P4. The SX1262 version runs MeshCore, LoRa and POCSAG, and needs an RTL-SDR dongle on USB for FM, P25 and ADS-B.

  2. 2

    Install

    Open the LakeShark browser installer (terminalbay.com/?m=lakeshark) in Chrome or Edge, connect the board over USB-C and flash. Power the P4 from its own USB-C input, never from the MIX-RF keyboard's 5V USB output.

  3. 3

    Add a microSD card

    Use a microSD card for map tiles, recordings and captures. The TILES app downloads map regions.

  4. 4

    Start listening

    Try FM and the FALLS waterfall first, then POCSAG, ADS-B and P25. The web tools make P25 profiles, scan lists and channel memories.

  5. 5

    Update and stay legal

    The UPDATE app installs signed updates over Wi-Fi. Treat transmit, replay and P25 Phase II as experimental, and check local law before receiving or transmitting.

Available as a complete kit

TFT LR2021 (830-945 MHz) version $100.39 in stock; AMOLED LR2021 $124.31 sold out, on the LilyGO store (Oct 22, 2026)

Part details in our parts library
Buy from LilyGO

Heads up: some Buy links are affiliate links. If you buy through one, MCU Atlas may earn a small commission at no extra cost to you. It never changes which parts we list. How this works

Related Projects

Watchy: open-source ESP32 e-ink smartwatch
Illustration
ESP32
An open-source smartwatch with a 1.54in e-paper screen and ESP32, hackable watch faces in Arduino.
Beginner·Code
2 parts listed
Low-power ESP32 e-paper weather display (7.5in)
Illustration
ESP32
A wall-mounted 7.5in e-paper weather display on an ESP32 that runs for months on one battery charge.
Intermediate·Code
5 parts listed
OpenEPaperLink: reuse e-ink shelf labels with an ESP32 access point
Illustration
ESP32ESP32-S3
Turns cheap second-hand electronic shelf labels into a Wi-Fi-managed e-ink display fleet via an ESP32 access point.
Advanced·Code
6 parts listed