-
Notifications
You must be signed in to change notification settings - Fork 0
Recording & Replay Workflow
null edited this page Jun 17, 2026
·
3 revisions
VoidRecon provides three distinct recording modes – Packet, Raw, and Signal – each designed for different types of RF signals. Understanding the differences is key to capturing and replaying correctly.
- Recording Modes
- Packet Mode
- Raw Mode
- Signal Mode (Fixed‑Code)
- Buffer Management
- Persistent Storage (Flash)
- Typical Workflows
- Important Notes
| Mode | Purpose | Commands |
|---|---|---|
| Packet | Captures complete payloads (hex bytes) as received. Works with structured packets (preamble, sync, length, CRC). |
rec, add, show, play
|
| Raw | Samples the on‑off keying state at a fixed interval. Great for simple protocols where the CC1101’s packet engine is not used. |
recraw, addraw, showraw, playraw
|
| Signal | Specifically designed for fixed‑code remotes (e.g., garage doors). Stores the bit sequence and pulse timing for later replay. |
recsig, playsig, savesig, loadsig
|
⚠️ Important: Packet and Raw modes share the same buffer – using one after the other will overwrite the previous data. Signal mode uses its own separate buffer, so it does not conflict with Packet/Raw.
- You are sniffing or replaying structured digital packets (e.g., data from sensors, remote controls that use the CC1101 packet format).
- The signal includes a preamble, sync word, length byte, and CRC.
| Command | Description |
|---|---|
rec |
Toggle recording – stores every complete, valid packet received into the buffer. |
add <hex‑vals> |
Manually insert a packet payload (max 64 bytes) into the buffer. |
show |
Display all recorded packet payloads with index numbers. |
play <N> |
Replay packet N (or 0 for all). |
rec # start recording
# ... capture some packets ...
rec # stop
show # list recorded frames
play 0 # replay all- You are dealing with simple OOK signals like some remotes, doorbells, or legacy devices.
- The signal has no fixed packet structure – just a sequence of pulses and gaps.
- You need high‑precision timing (microsecond resolution).
| Command | Description |
|---|---|
recraw <microseconds> |
Record raw samples at the given interval (µs). Stores 1 (carrier present) or 0 (no carrier). |
addraw <hex‑vals> |
Manually insert a raw chunk (max 60 hex bytes) – each byte represents 8 samples. |
showraw |
Display the raw buffer as a series of hex bytes. |
playraw <microseconds> |
Replay the raw data using the same interval (µs). |
recraw 100 # sample every 100 µs
# ... transmit the target signal ...
x # stop recording
showraw # see the raw data
playraw 100 # replay the signal- You are capturing a fixed‑code remote (common in older garage doors, gates, etc.).
- The remote transmits a static bit sequence (e.g., 8, 12, or 24 bits) with a known pulse duration.
-
recsigautomatically detects the bit timing and stores the bit pattern.
| Command | Description |
|---|---|
recsig |
Start recording a fixed‑code signal. The device will wait for a transmission and decode it. |
playsig |
Replay the stored signal (using the detected timing). |
savesig |
Store the current signal buffer to flash for later use. |
loadsig |
Load a previously saved signal from flash. |
recsig # ready to capture
# ... press the remote button ...
# The device will store the signal
playsig # replay it💡 Tip: The signal buffer is independent of the packet/raw buffer – you can have a signal stored alongside packet or raw data without conflict.
| Command | Description |
|---|---|
show / showraw
|
Inspect buffer content (packet or raw format). |
showbit |
Display the raw buffer as a binary stream (0/1) – useful for debugging timing. |
flush |
Clear the buffer completely (both packet and raw data). |
| Command | Description |
|---|---|
(No show for signal – replay or save to check) |
Use playsig to test the stored signal. |
savesig / loadsig
|
Store/load the signal to/from flash. |
| Command | Description |
|---|---|
save |
Save the current packet buffer to flash. |
load |
Load the saved packet buffer from flash. |
saveraw |
Save the current raw buffer to flash. |
loadraw |
Load the saved raw buffer from flash. |
savesig |
Save the current signal buffer to flash. |
loadsig |
Load the saved signal buffer from flash. |
Note: Packet, Raw, and Signal buffers are stored separately in flash – you can have all three saved at once.
rec # start packet recording
# ... trigger the target device (e.g., press a remote) ...
rec # stop recording
show # list captured frames (note the index)
play 0 # replay all framesrecraw 50 # sample every 50 µs
# ... trigger the target device ...
x # stop recording
showraw # verify data
playraw 50 # replay at 50 µs intervalsrecsig # wait for signal
# ... press the remote button ...
playsig # replay the captured coderecsig
# ... capture ...
savesig # store in flash
# ... power off / reset ...
loadsig # restore from flash
playsig # replayadd AA BB CC DD EE FF
add 01 02 03
show # displays two frames: index 0 and 1
play 0 # replay first frame only
play 1 # replay second
play 0 # replay all (0 = all)-
Buffer size is limited – if you record many frames, some may be lost. Use
flushwhen needed. - Don’t mix Packet and Raw modes unintentionally – they share the same buffer, so recording raw after packet will overwrite the packet data.
- Signal mode is independent – it won’t overwrite packet/raw data and vice versa.
-
Always use
xto stop – recording or sniffing properly to ensure the buffer is finalised. -
Power‑off – unsaved data is lost. Use
save,saveraw, orsavesigto persist important captures.