miri_fm(1)

NAME
miri_fm - a simple narrow band FM demodulator for Mirics based receivers

DESCRIPTION
Software for the Mirics MSi2500 + MSi001 SDR platform

written because people could not do real time FM demod on Atom hardware with GNU radio based on rtl_sdr.c and rtl_tcp.c

USAGE
This program captures information from a band of frequencies and outputs the data in a form useful to other software radio programs.

SYNOPSIS
miri_fm [-f freq] [OPTIONS] [output file]

OPTIONS

-f frequency_to_tune_to [Hz]

use multiple -f for scanning (requires squelch)

ranges supported, -f 118M:137M:25k

-M modulation (default: fm)

fm, wbfm, raw, am, usb, lsb

wbfm == -M fm -s 170k -o 4 -A fast -r 32k -l 0 -E deemp

raw mode outputs 2x16 bit IQ pairs

-s sample_rate (default: 24 kHz)

-d device_index (default: 0)

-T device_type device variant (default: 0)

0:       Default

1:       SDRPlay

-g tuner_gain (default: automatic)

-m sample format (default: auto)

504:    S8 (fastest)

384:    S10 +2bits

252:    S14

-e USB transfer mode (default: 1)

1:      Isochronous (maximum 196.608 Mbit/s)

2:      Bulk (maximum 333Mbit/s, depends on controller type)

-i IF mode (default: ZERO)

0:       ZERO

450000:  450 kHz

1620000: 1620kHz

2048000: 2048kHz

-w BW mode (default: 8MHz)

200000:  200kHz

300000:  300kHz

600000:  600kHz

1536000: 1536kHz

5000000: 5MHz

6000000: 6MHz

7000000: 7MHz

8000000: 8MHz

-l squelch_level (default: 0/off)

-o oversampling (default: 1, 4 recommended)

-p ppm_error (default: 0)

-E enable_option (default: none)

use multiple -E to enable multiple options

edge:   enable lower edge tuning

dc:     enable dc blocking filter

deemp:  enable de-emphasis filter

direct: enable direct sampling

offset: enable offset tuning

filename ('-' means stdout)

omitting the filename also uses stdout

EXPERIMENTAL OPTIONS

-r resample_rate (default: none / same as -s)

-t squelch_delay (default: 10)

+values will mute/scan, -values will exit

-F fir_size (default: off)

enables low-leakage downsample filter

size can be 0 or 9.  0 has bad roll off

-A std/fast/lut choose atan math (default: std)

EXAMPLES

Produces signed 16 bit ints, use Sox or aplay to hear them.

miri_fm ... | play -t raw -r 24k -es -b 16 -c 1 -V1 -

| aplay -r 24k -f S16_LE -t raw -c 1

-M wbfm  | play -r 32k ...

-s 22050 | multimon -t raw /dev/stdin

If the device can't be opened, make sure you have the appropriate rights to access the device (install udev-rules from the repository, or run it as root).

SEE ALSO
miri_sdr(1)

AUTHOR
This manual page was written by Maitland Bottoms for the Debian project (but may be used by others).

COPYRIGHT
Copyright (c) 2023 A. Maitland Bottoms <bottoms@debian.org>

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.