Skip to content

Add Universal IR/RF modules, RF+IR Dual Detector, crash diagnostics - #2770

Open
bollgio wants to merge 1 commit into
BruceDevices:devfrom
bollgio:main
Open

Add Universal IR/RF modules, RF+IR Dual Detector, crash diagnostics#2770
bollgio wants to merge 1 commit into
BruceDevices:devfrom
bollgio:main

Conversation

@bollgio

@bollgio bollgio commented Aug 7, 2026

Copy link
Copy Markdown

Proposed Changes

This PR ports the BruceIRF fork features onto the current upstream main (stable 1.16 base). It adds:

  • Universal IR Remote (src/modules/ir/universal_ir.cpp): brand/device database browser with a grid UI, configurable display orientation, wrapper-folder DB discovery (SD first, LittleFS fallback), replay loop and SD-gated save.
  • Universal RF Remote (src/modules/rf/universal_rf.cpp): Flipper .sub reader (RAW + BinRAW Key formats) with brand/subfolder browsing, readable labels and built-in generic test signals (carrier 433/315/868 MHz, OOK keyfob, doorbell) that need no database.
  • RF + IR Dual Detector (src/modules/ir/dual_detect.cpp): simultaneous dual-band listen with near-instant capture, replay/save/discard menu, and on-device selectors for external RF (CC1101 / M5 RF433) and IR modules.
  • CRASH DIAG (src/core/crash_diag.cpp): on-screen panic/watchdog dump instead of a blank screen after a crash; supports both Xtensa and RISC-V targets.
  • Fixes: RCA IR protocol support missing from IRremoteESP8266 (sendRCACommand), heap-exhaustion guard for huge RAW .sub files, and the shared-SPI mutex deadlock between the CC1101 and the TFT (flag-based _spi_started patch in patch_library_conflicts.py).
  • Board ports: M5StickS3 (loop-stack + LittleFS-only flags), M5Cardputer v1+ADV (runtime TCA8418 detection), ESP32-C5 + ILI9341 (touch-only), LilyGo T-Embed CC1101.

The Lite IR/RF database (7 IR + 103 RF files) is bundled for LittleFS/no-SD boards. The Full database (829 IR + 13,275 RF files, for SD cards) is too large for this PR and is distributed separately from the fork's releases.

Types of Changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Other: new board ports + database packaging

Testing

  • Built and tested on LilyGo T-Embed CC1101 (primary target), M5StickS3, M5Cardputer (v1 + ADV) and ESP32-C5 + ILI9341.
  • Verified with the on-device RF+IR Dual Detector, Universal IR/RF browsers, and a separate CC1101 on the shared SPI bus.
  • Known issue: occasional crash when switching between features very fast.

Linked Issues

None

@bollgio bollgio changed the title BruceIRF features merged Add Universal IR/RF modules, RF+IR Dual Detector, crash diagnostics Aug 7, 2026
@emericklaw

Copy link
Copy Markdown
Member

Please include some photos of the screens or grab them from the WebUI navigator.

@emericklaw

Copy link
Copy Markdown
Member

Also please set target branch to dev.

New modules:
- Universal IR: brand/device DB browser with grid UI, configurable
  orientation, wrapper-folder DB discovery, replay loop, SD-gated save
- Universal RF: Flipper .sub reader (RAW + BinRAW Key), generic test
  signals, brand/subfolder browsing
- RF + IR Dual Detector: simultaneous dual-band listen with instant
  capture, replay/save/discard menu, external RF/IR module selectors
- CRASH DIAG: on-screen panic/watchdog dump for Xtensa and RISC-V
- RCA IR protocol fix (IRremoteESP8266 has no RCA support)
- Heap-exhaustion guard for huge RAW .sub files + too-big-file skip
- Shared-SPI mutex fix between CC1101 and TFT (dual-detector deadlock)

Boards: M5StickS3 (loop-stack, LittleFS-only flags), M5Cardputer
(v1+ADV runtime TCA8418 detection), ESP32-C5 + ILI9341 (touch-only),
LilyGo T-Embed CC1101.

Includes the Lite IR/RF database (7 IR + 103 RF files) for LittleFS;
the Full database is distributed separately via the fork's Releases.
@bollgio
bollgio changed the base branch from main to dev August 7, 2026 15:35
@bollgio

bollgio commented Aug 7, 2026

Copy link
Copy Markdown
Author
Immagine 2026-08-07 175005 Immagine 2026-08-07 175030 Immagine 2026-08-07 175135 Immagine 2026-08-07 175203 Immagine 2026-08-07 175217 Immagine 2026-08-07 175315 Immagine 2026-08-07 175355 Immagine 2026-08-07 175410

here are some images from my t-embed via webui
some parts of the ui like config parts aren't included in the pictures

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants