imts(1)
β¨ NAME β¨
hey bestie π welcome to imts(1), straight out of the General Commands Manual β and its whole personality lives at http://osmocom-analog.eversberg.eu/docs/ β¨
π» SYNOPSIS π»
imts -k <kanal/channel> -b 5 -i 0.1 [options] [station_id]
that's the whole vibe, fr fr β a channel, a buffer, an interval, and you're basically a whole base station π
π Global options π
-h,--helpβ this help, bestie. the classic. π«Ά--config [~/]<path to config file>β hand it a config file to use. if the path starts with~/, it's at your home dir. every line in the config file is one option, and you must not put-or--in there! default:'~/.osmocom/analog/imts.conf'--no-configβ even if a config file exists, don't use it. not today. π-v,--verbose <level> | <level>,<category>[,...] | listβ use'list'to get a list of all levels and categories. verbose level: a digit for the debug level (default ='3'). verbose level+category: the level digit followed by one or more categories -> if no category is specified, all categories are selected β¨-v,--verbose dateβ show the date with the debug output ποΈ-k,--kanal <channel>β channel (German = Kanal) number of the "Sender" (German = Transceiver) π‘-k,--channel <channel>β same energy, English spelling: channel number of the "Sender" (German = Transceiver)-a,--audio-device hw:<card>,<device>[/hw:<card>.<rec-device>]β sound card and device number (default ='hw:0,0'). you may specify a different recording device by using/. don't set it for SDR! π«-s,--samplerate <rate>β sample rate of the sound device (default ='48000')-i,--interval 0.1..25β interval of the processing loop in ms (default ='1.0'ms). use10to drastically reduce CPU usage. in case of buffer underrun, increase the buffer accordingly π§-b,--buffer <ms>β how many milliseconds are processed in advance (default ='50'). a buffer below 10 ms requires a low interval like 0.1 ms π-p,--pre-emphasisβ enable pre-emphasis, if you directly connect to the oscillator of the transmitter. (no pre-emphasis done by the transmitter.)-d,--de-emphasisβ enable de-emphasis, if you directly connect to the discriminator of the receiver. (no de-emphasis done by the receiver.)--rx-gain <dB>β raise/lower the receiver's RX level by the given gain in dB. (works with sound card only.)--tx-gain <dB>β raise/lower transmitters's RX level by the given gain in dB. (works with sound card only.)-e,--echo-testβ use echo test, to send back audio from the mobile phone's microphone to the speaker. (German:'Blasprobe'). π€ iconic.-c,--call-device hw:<card>,<device>[/hw:<card>.<rec-device>]β sound card and device number for the headset (default =''). you may specify a different recording device by using/.--call-samplerate <rate>β sample rate of the sound device for the headset (default ='48000')--call-buffer <ms>β how many milliseconds are processed in advance (default ='50')-x,--osmocc-crossβ enable built-in call forwarding between mobiles. be sure to have at least one control channel and two voice channels. alternatively use one combined control+voice channel and one voice channel π-o,--osmocc-sockβ disable built-in call control and offer a socket π§¦--cc "<osmo-cc arg>" [--cc ...]β pass arguments to the Osmo-CC endpoint. use'-cc help'for a description.--no-l16β disable the L16 (linear 16 bit) codec.-t,--tones 0 | 1β connect the call on setup/release to provide classic tones towards the fixed network (default ='1') πΆ-l,--loopback <type>β loopback test:1= internal |2= external |3= echo π-r,--realtime <prio>β set prio:0to disable,99for maximum (default =0) β‘--fast-mathβ use fast math approximation for slow CPU / ARM based systems.--write-rx-wave <file>β write received audio to the given wave file.--write-tx-wave <file>β write transmitted audio to the given wave file.--read-rx-wave <file>β replace received audio by the given wave file.--read-tx-wave <file>β replace transmitted audio by the given wave file.--limesdrβ auto-select several required options for LimeSDR π--limesdr-miniβ auto-select several required options for LimeSDR Mini π
π‘ SDR options π‘
--sdr-soapyβ force the SoapySDR driver--sdr-channel <channel #>β give the channel number for a multi channel SDR device (default =0)--sdr-device-args <args>β optional SDR device arguments, separated by comma e.g.--sdr-device-args <key>=<value>[,<key>=<value>[,...]]--sdr-stream-args <args>β optional SDR device arguments, separated by comma e.g.--sdr-stream-args <key>=<value>[,<key>=<value>[,...]]--sdr-tune-args <args>β optional SDR device arguments, separated by comma e.g.--sdr-tune-args <key>=<value>[,<key>=<value>[,...]]--sdr-samplerate <samplerate>β sample rate to use with SDR. by default it equals the regular sample rate.--sdr-lo-offset <Hz>β give frequency offset in Hz to move the local oscillator away from the target frequency. (default =-1000000)--sdr-bandwidth <bandwidth>β give IF filter bandwidth to use. if not, sample rate is used.--sdr-rx-antenna <name>β SDR device's RX antenna name, use'list'to get a list--sdr-tx-antenna <name>β SDR device's TX antenna name, use'list'to get a list--sdr-clock-source <name>β SDR device's clock source name, use'list'to get a list--sdr-rx-gain <gain>β SDR device's RX gain in dB (default =0.0)--sdr-tx-gain <gain>β SDR device's TX gain in dB (default =0.0)--write-iq-rx-wave <file>β write received IQ data to the given wave file.--write-iq-tx-wave <file>β write transmitted IQ data to the given wave file.--read-iq-rx-wave <file>β replace received IQ data by the given wave file.--read-iq-tx-wave <file>β replace transmitted IQ data by the given wave file.--sdr-swap-linksβ swap RX and TX frequencies for loopback tests over the air π--sdr-timestamps 1 | 0β use TX timestamps on UHD device. (default =1)
π Network specific options π
-S,--squelch <dB> | autoβ use the given RF level to detect loss of signal. when the signal gets lost and stays below this level, the connection is released. use'auto'to do automatic noise floor calibration to detect loss. only works with SDR! (disabled by default)-P,--push-to-talkβ allow push-to-talk operation for IMTS mode. (MTS always uses it.) this adds extra delay to received audio, to eliminate noise when the transmitter of the phone is turned off. also this disables release on loss of RF signal. (squelch is required for this to operate.)-F,--fast-seize <delay in ms>β to compensate audio processing latency, give the delay for when to respond, after detection of the Guard tone from the mobile phone. run the software in loopback mode'-l 2'to measure round trip delay. subtract the delay from 350 ms. if the phone has a different Guard tone length, subtract from that value.-D,--detector-test <idle length> <seize length> <silence length>β transmit detector test signal, to adjust the decoder inside the mobile phone. give length of idle / seize and silence in seconds. listen to it with a radio receiver. to exclude an element, set its length to'0'. example:'-D 0.5 0.5 0'plays alternating idle/seize tone.
πΈ MTS mode options πΈ
-M,--mtsβ run the base station in MTS mode, rather than in IMTS mode.-O,--operator <number>β give the number to dial when a mobile station initiated a call in MTS mode. because there is no dial on the mobile phone, operator assistance is required to complete the call. by default, the operator'010'is dialed βοΈ-D,--detector-test <600 Hz length> <1500 Hz length> <silence length>β transmit detector test signal, to adjust the decoder inside the MTS phone. give length of 600/1500 Hz and silence in seconds. listen to it with a radio receiver. to exclude an element, set its length to'0'. example:'-D 0.5 0.5 0'plays alternating 600/1500 Hz tone.
π¦ station_id π¦
station_idβ give 5, 7 or 10 digits of station ID, so you don't need to enter it for every start of this application. give 5 digits for MTS number format. give 7 digits for IMTS number format. give 10 digits for IMTS number (digits 4..6 will be removed). you may use'1xxxxxxxxxx'as prefix. you may use'+1xxxxxxxxxx'as prefix. π
πΉ key presses πΉ
press digits '0'..'9' and then the 'd' key to dial towards the mobile station. press the 'h' key to hangup. press the 'w' key to toggle display of RX wave form. press the 'c' key to toggle display of channel status. press the 'm' key to toggle display of measurement value. press the 'q' key to toggle display of RX I/Q vector. press the 's' key to toggle display of RX spectrum. press the 'b' key to remove DC level. π
okay that's the whole page, bestie. go forth and be the main character of your own base station π«Ά
that's a wrap on imts(1) from the General Commands Manual β ate and left no crumbs β¨ππ
π¦ where this page comes from
- debian trixie: osmocom-analog 0.0~git20250208.4ebf64f-1 Β· GPL-3.0-or-later
- ubuntu questing: osmocom-analog 0.0~git20250208.4ebf64f-1build1
- ubuntu resolute: osmocom-analog 0.0~git20250208.4ebf64f-1build2 Β· GPL-3.0-or-later
- ubuntu stonking: osmocom-analog 0.0~git20251206.0c72677-1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms