Table of Contents
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
SubCar is a receiver app for decoding automotive remote keyless entry (RKE) signals from car key fobs. It passively listens on a configurable frequency and attempts to match incoming signals against a library of known manufacturer protocols, displaying decoded results in a scrolling list.
Settings
- Frequency: Default is 433.92 MHz, the standard European RKE band. Adjustable via the encoder knob or on-screen numpad for other regional bands (e.g., 315 MHz in North America).
- RF Amp (0 or 1): Enables/disables the internal RF amplifier.
- LNA gain (0–40): Low-noise amplifier gain. See Receive Quality Issues.
- VGA gain (0–62): Variable-gain amplifier gain. See Receive Quality Issues.
- Mode: Selects the demodulation mode — AM (default) or FM. Most car key fob protocols operate with AM (OOK) modulation; FM mode may be needed for some regional or newer implementations.
- Clear: Clears the decoded signal list from the display (does not affect the log file).
- Log: When checked, decoded packets are written to a timestamped CSV file on the SD card:
LOGS/SubCarLOG_YYYYMMDD_HHMMSS.CSV. The file header is; Type; Bits; Data;.
Decoded Signal List
Each decoded packet is shown as a row with three columns: Type (protocol name), Bits (bit length of the decoded frame), and Age (seconds since last received). The list is deduplicated by signal content — repeated presses of the same fob button update the age counter rather than adding a new row.
Selecting an entry opens a detail view showing the protocol type, serial number, button code, and additional decoded fields where available for that protocol.
Supported Protocols
The following car key fob protocols are currently implemented:
| Protocol | Manufacturer |
|---|---|
| Suzuki | Suzuki |
| VW | Volkswagen (button IDs: Lock, Unlock, Trunk, Panic, combinations) |
| Subaru | Subaru |
| Kia V0–V5 | KIA |
| Ford V0 | Ford |
| Fiat V0 | Fiat |
| BMW V0 | BMW |
Note: Some protocols with full rolling-code encryption (Kia V6, PSA/Peugeot-Citroën) are recognized but not decoded, as the payload is entirely encrypted.
Settings Persistence
The modulation mode and Log checkbox state are saved to rx_subcar.ini on the SD card when App Settings is enabled in the global Settings menu
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Start here
Contributors
How to collaborate
Contributing Guidelines
How to ask questions correctly
Hardware
- PortaPack Versions (which one to buy)
- Features
- HackRF Versions
- Description of the hardware
- Enclosure/cases
- Repairs
- Mods
User manual
Intended use and Legality
- Usage cautions
- First steps
- Firmware update procedure
- User interface
- Powering the PortaPack
- Troubleshooting
- Won't boot
- Config Menu
- Firmware upgrade
- Diagnose firmware update in Windows
- Receive Quality Issues
- No TX/RX
- TX Carrier Only
- H2+ speaker modifications
- Dead Coin Cell Battery
- Factory Defaults
- SD card not recognized by PC with the SD-card over USB selected
- DFU overlay
- Full reset
- SolveBoard
- How to Format SDCard
- What if I don't like some of the apps
Applications
- 📥 Receivers
- 📤 Transmitters
- ADS-B(S) TX
- Adult Toys
- APRS TX
- BHT Xy/EP
- BLE TX
- BLESpam
- Burger Pager
- CVS Spam
- EPIRB
- FlipperTX
- GPS Sim
- Hopper
- Jammer
- KeeLoq TX
- Key fob TX
- LGE Tool
- MDC-1200 TX
- Morse TX
- OOK
- OOK Brute
- OOK Editor
- P25 TX
- POCSAG TX
- RDS
- RTTY TX
- SAME TX
- Signal gen
- Soundboard
- Spectrum Painter
- SSTV
- TEDI/LCR
- TouchTunes
- TPMS TX
- 🔄 Transceivers
- 🟡 Recon
- 🔴 Capture
- ▶️ Replay
- 🖲️ Remote
- 🔍 Looking Glass
- 🛠️ Utilities
- 🎮 Games
- ⚙️ Settings
- 💻 HackRF Mode
Misc
Developer Manual
- Compilation of the firmware
- Compile on WSL with ninja
- How to compile on Windows faster with WSL 2
- Using Docker and Kitematic
- Docker command-line reference
- Using Buddyworks and other CI platforms
- Notes for Buddy.Works (and other CI platforms)
- Using ARM on Debian host
- All in one script for ARM on Debian host
- Compile on Arch based distro (exclude Asahi), or other weird distros
- Dev build versions
- Notes About ccache
- Create a custom map
- Code formatting
- PR process
- Description of the Structure
- Software Dev Guides
- Tools
- Research
- UI Screenshots
- Maintaining
- Creating a prod/stable release (Maintainers only)
- Maintaining rules
- Development States Notes
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Note
The wiki is incomplete. Please add content and collaborate.
Important
- This is a public wiki. Everything is visible to everyone. Don't use it for personal notes.
- Avoid linking to external tutorials/articles; they may become outdated or contain false information.