-
-
Notifications
You must be signed in to change notification settings - Fork 889
Security Plus TX
Transmits Security+ 2.0 rolling-code signals used by Chamberlain, LiftMaster, and Craftsman garage door openers and gate operators.
This is an external app and must be present on the SD card in the APPS/ folder.
- Encodes and transmits Security+ 2.0 rolling-code packets (two-packet frame, Manchester OOK)
- Rolling code auto-increments after each transmission to stay in sync with the receiver
- Optional data payload field for openers that require it
- Learn mode for pairing without advancing the rolling code
- Save/load remote configurations from
.SECPLUSfiles - Autosave after each successful transmission
Security+ 2.0 uses OOK (On-Off Keying) with Manchester encoding at 4000 bps on 315 MHz.
Each transmission consists of two packets sent sequentially:
-
Packet 1 (indicator
0b00) — encodes the first half of the rolling and fixed codes -
Packet 2 (indicator
0b01) — encodes the second half
The full transmission is repeated 3 times.
The rolling code is a 28-bit counter. The fixed code is a 40-bit device identifier. Together they form a cryptographically scrambled frame that the receiver validates. The rolling code must stay within the receiver's synchronisation window (typically ±256 counts of the last accepted value) to be accepted.
| Control | Description |
|---|---|
| Open | Open a .SECPLUS file from the SECPLUS/ folder |
| Save | Save current data to the current file immediately |
| Name | Remote name (tap to edit via keyboard) |
| Fixed | 40-bit fixed code in hex (10 digits) — permanent device identifier |
| Rolling | 28-bit rolling code in hex (7 digits) — increments after each TX |
| Data | Optional 32-bit payload in hex (8 digits). Enable with the Data checkbox. Greyed out when disabled. |
| Learn | When checked, the rolling code does not increment after TX. Use this when pairing with a receiver or replaying a known code. |
| Autosave | When checked (default), the file is saved automatically after each transmission. Keeps the rolling code on disk in sync. |
| Progress bar | Shows transmission progress across the 3 repeat cycles. |
Standard transmitter controls (frequency, LNA, VGA, AMP, TX button) are shown at the bottom.
Transmitting a known remote:
- Press Open and select the
.SECPLUSfile for the remote. - Verify the Fixed and Rolling codes match your remote.
- Press TX. The rolling code increments automatically and the file is saved.
Creating a new remote entry:
- Enter the Fixed and Rolling code values from your remote (e.g. read via SDR capture and decode).
- Set a name and optionally enable the Data field.
- Press Save or let Autosave handle it after the first TX.
Pairing / learning mode:
- Enable the Learn checkbox.
- Transmit — the rolling code stays fixed, allowing you to transmit the same code repeatedly.
Remote configurations are stored as .SECPLUS files in the SECPLUS/ folder on the SD card.
The file is a single CSV line:
version;name;has_data;fixed_code;rolling_code;data
Example:
2;MyGarage;0;1A2B3C4D5E;0001F4;00000000
| Field | Description |
|---|---|
version |
Protocol version — always 2 for Security+ 2.0 |
name |
Remote name (display only) |
has_data |
1 if data field is used, 0 otherwise |
fixed_code |
40-bit fixed code in hex |
rolling_code |
28-bit rolling code in hex |
data |
32-bit optional data payload in hex |
The default file SECPLUS/DEFAULT.SECPLUS is created automatically on first launch if it does not exist.
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.
How to collaborate
Contributing Guidelines
Trusted contributors
How to ask questions correctly
- PortaPack Versions (which one to buy)
- Features
- HackRF Versions
-
Description of the hardware
- Enclosure/cases
- Repairs
- Mods
- 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
- 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
- 📥 Receivers
- 📤 Transmitters
- 2-Tone-TX
- ADS-B(S) TX
- Adult Toys
- APRS TX
- BHT Xy/EP
- BLE TX
- BLESpam
- Burger Pager
- CVS Spam
- EPIRB TX
- Flex TX
- 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
- Security+ TX
- Signal gen
- Soundboard
- Spectrum Painter
- SSTV
- TEDI/LCR
- TouchTunes
- TPMS TX
- 🔄 Transceivers
- 🟡 Recon
- 🔴 Capture
▶️ Replay- 🖲️ Remote
- 🔍 Looking Glass
- 🛠️ Utilities
- 🎮 Games
- ⚙️ Settings
- 💻 HackRF Mode
-
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