-
Notifications
You must be signed in to change notification settings - Fork 249
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
94 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,96 @@ | ||
### RTLAMR Help | ||
Detailed usage information for the various flags of RTLAMR. | ||
|
||
- `logfile` writes log statements to the given file. Defaults to `/dev/stdout`. | ||
- `samplefile` writes raw signal to the given file. Samples are interleaved 8-bit inphase and quadrature pairs. Fields Offset and Length are omitted in the plain log format if this option isn't used. Defaults to `/dev/null`. | ||
- `cpuprofile` writes pprof profiling information to the given filename. Useful for determining bottlenecks and performance of the program. Defaults to blank and writes no profiling information. | ||
- `duration` sets the amount of time to listen for before exiting. Defaults to 0 for infinite, [GoDoc: time.Duration](http://godoc.org/time#Duration) | ||
- `fastmag` uses a faster magnitude calculation algorithm, sacrifices accuracy for speed. Defaults to false. | ||
- `filterid` display and dump raw samples only for messages with a matching meter id. Defaults to 0 for no filtering. | ||
- `filtertype` display and dump raw samples only for messages with a matching type. Defaults to 0 for no filtering. | ||
- `format` format to write log messages in. Defaults to plain. Options: plain, csv, json, xml or gob | ||
- `gobunsafe` allows gob output to stdout. Gob output is not stdout safe and will bork a terminal so user must specify `-gobunsafe` or specify a non-stdout file via `-logfile`. Defaults to false and warns user. | ||
- `msgtype` specifies the message type to receive: scm or idm. Defaults to scm. | ||
- `quiet` suppresses printing state information at startup. Defaults to false. | ||
- `single` will listen until exactly one message is received that matches all of the given filters if any. Defaults to false. | ||
- `symbollength` sets the symbol length in samples. Defaults to 73. | ||
|
||
Sample rate is determined by this value as follows: | ||
|
||
``` | ||
DataRate = 32768 | ||
SampleRate = SymbolLength * DataRate | ||
``` | ||
|
||
Sample rates are limited by the dongle such that: | ||
|
||
``` | ||
225 kHz < Sample Rate < 300 kHz | ||
900 kHz < Sample Rate < 3.2 MHz | ||
``` | ||
|
||
The symbol length also determines the size of sample blocks read and processed on each pass. | ||
|
||
``` | ||
PreambleSymbols = 21 (for SCM) and 32 (for IDM) | ||
BlockSize = 1 << uint(math.Ceil(math.Log2(float64(PreambleSymbols * SymbolLength)))) | ||
``` | ||
|
||
Valid symbol lengths are given below, block size calculated for SCM: | ||
|
||
- Block Size: 512 | ||
|
||
Symbol Length | Sample Rate | ||
------------- | ----------- | ||
7 | 229.376 kHz | ||
8 | 262.144 kHz | ||
9 | 294.912 kHz | ||
|
||
- Block Size: 2048 | ||
|
||
Symbol Length | Sample Rate | Symbol Length | Sample Rate | ||
------------- | ----------- | ------------- | ----------- | ||
28 | 917.504 kHz | 39 | 1.277952 MHz | ||
29 | 950.272 kHz | 40 | 1.310720 MHz | ||
30 | 983.040 kHz | 41 | 1.343488 MHz | ||
31 | 1.015808 MHz | 42 | 1.376256 MHz | ||
32 | 1.048576 MHz | 43 | 1.409024 MHz | ||
33 | 1.081344 MHz | 44 | 1.441792 MHz | ||
34 | 1.114112 MHz | 45 | 1.474560 MHz | ||
35 | 1.146880 MHz | 46 | 1.507328 MHz | ||
36 | 1.179648 MHz | 47 | 1.540096 MHz | ||
37 | 1.212416 MHz | 48 | 1.572864 MHz | ||
38 | 1.245184 MHz | ||
|
||
- Block Size: 4096 | ||
|
||
Symbol Length | Sample Rate | Symbol Length | Sample Rate | ||
------------- | ----------- | ------------- | ----------- | ||
49 | 1.605632 MHz | 74 | 2.424832 MHz | ||
50 | 1.638400 MHz | 75 | 2.457600 MHz | ||
51 | 1.671168 MHz | 76 | 2.490368 MHz | ||
52 | 1.703936 MHz | 77 | 2.523136 MHz | ||
53 | 1.736704 MHz | 78 | 2.555904 MHz | ||
54 | 1.769472 MHz | 79 | 2.588672 MHz | ||
55 | 1.802240 MHz | 80 | 2.621440 MHz | ||
56 | 1.835008 MHz | 81 | 2.654208 MHz | ||
57 | 1.867776 MHz | 82 | 2.686976 MHz | ||
58 | 1.900544 MHz | 83 | 2.719744 MHz | ||
59 | 1.933312 MHz | 84 | 2.752512 MHz | ||
60 | 1.966080 MHz | 85 | 2.785280 MHz | ||
61 | 1.998848 MHz | 86 | 2.818048 MHz | ||
62 | 2.031616 MHz | 87 | 2.850816 MHz | ||
63 | 2.064384 MHz | 88 | 2.883584 MHz | ||
64 | 2.097152 MHz | 89 | 2.916352 MHz | ||
65 | 2.129920 MHz | 90 | 2.949120 MHz | ||
66 | 2.162688 MHz | 91 | 2.981888 MHz | ||
67 | 2.195456 MHz | 92 | 3.014656 MHz | ||
68 | 2.228224 MHz | 93 | 3.047424 MHz | ||
69 | 2.260992 MHz | 94 | 3.080192 MHz | ||
70 | 2.293760 MHz | 95 | 3.112960 MHz | ||
71 | 2.326528 MHz | 96 | 3.145728 MHz | ||
72 | 2.359296 MHz | 97 | 3.178496 MHz | ||
73 | 2.392064 MHz | ||
- `centerfreq` sets the center frequency to receive on. Defaults to 920299072. | ||
- `samplerate` sets the sample rate. This will override the sample rate calculated by `-symbollength`. | ||
- If any of the gain-related flags are specified rtlamr won't set any gain options of it's own. By default rtlamr enables `-tunergainmode`. Flags which disable this behavior: `-gainbyindex`, `-tunergainmode`, `-tunergain` and `-agcmode`. |