rf-info
Command line & Python library for obtaining details about a radio frequency
Free software: MIT license
Documentation: https://rf-info.readthedocs.io.
Python 3.5, 3.6, 3.7, 3.8 & pypy3 tested
Linux & Windows with color & interactive terminal support
Features
Returns information about a radio frequency.
“Radio Display” format (Dotted notaton)
hz, khz, Mhz and Ghz representations of the frequency
Frequency Wavelength
ITU Band Description
ITU Band Abbreviation
ITU Band Number
ISM Band Type & Description
IEEE Band Name
NATO Band Name
Waveguide Band Name
Microwave Band Name & Description
Fixed Station & Mobile Station Designations
IEEE Primary Band Allocations
IEEE Secondary Band Allocations
Detailed IEEE footnotes for each band allocation
All active & upcomming satellite frequencys & details (406 Satellites as of 1/18/20)
Amateur Radio Modes, License Class, Max Power (US Only)
Broadcasting Band Number & Details (US Only)
WIFI Frequency Details (US Only)
Other Services CB, GMRS, Aircraft Band, Etc (US Only)
Currently supported band allocations for countries: United States (US), Canada (CA), Brazil (BR), Spain (ES), United Kingdom (GB), Russian Federation (RU), Ukraine (UA), Japan (JP), India (IN), Korea, Republic of (KR), Thailand (TH), Switzerland (CH), Chile (CL), Denmark (DK), Finland (FI), France (FR), Hungary (HU), Indonesia (ID), Iceland (IS), Italy (IT), Mexico (MX), Netherlands (NL), New Zealand (NZ), Norway (NO), Poland (PL), South Africa (ZA), Sweden (SE), Venezuela (VE), Australia (AU), Slovenia (SI), Ireland (IE), Belgium (BE), Austria (AT), Argentina (AR), Israel (IL), Romania (RO), China (CN), Uruguay (UY), Greece (GR), Panama (PA), Peru (PE)
I can easily add support for more countries upon request
Command line supports color, raw parsable, and json output
Includes man pages and texinfo documentation
Install
$ pip3 install rf-info
Command Line Usage
$ rf-info <frequency> [<units>] [<country>]
Frequency format examples:
$ rf-info 89910000 $ rf-info 23,450,000 $ rf-info 12,634.534 $ rf-info 12_000_000 $ rf-info 344_500.100
Also supports “Radio Display” frequency representation (Dotted notation):
$ rf-info 124.125.000 $ rf-info 1.500.125.000 $ rf-info 000.012.500
Unit examples: hz, khz, Mhz, Ghz (Case Insensitive):
$ rf-info 123.100 mhz $ rf-info 4.5 ghz
Country examples (2 digit abbriviation, 3 digit abbriviation, 3 digit number, or full name) US, USA, 040, JPN, Spain (Case Insensitive):
$ rf-info 144.400.000 hz US $ rf-info 88 mhz JPN
Python Library Usage
>>> from rf_info import Frequency
>>> freq = Frequency('112.434.000')
>>> freq.details()
Returns a dictionary:
>>> {'display': '144.100.000', 'hz': 144100000, 'khz': 144100.0, 'mhz': 144.1, 'ghz': 0.1441, 'wavelength': '2m', 'itu_band': 'Very High Frequency', 'itu_abbr': 'VHF', 'itu_num': 8, 'ieee_band': 'VHF', 'ieee_description': 'Very High Frequency', 'nato_band': 'A', 'waveguide_band': None, 'country_abbr': 'US', 'country_name': 'United States of America', 'amateur': True, 'fixed_station': False, 'mobile_station': False, 'broadcast': False, 'primary_allocation': ['Amateur', 'Amateur-Satellite'], 'secondary_allocation': [], 'allocation_notes': ['[5.216]: Additional allocation: in China, the band 144-146 MHz is also allocated to the aeronautical mobile (OR) service on a secondary basis.']}
Or you can get individual items directly:
>>> freq.itu_band >>> freq.wavelength >>> freq.primary_allocation
Also supports adding and subtracting frequencies. Either a frequency object, int, or string representation of a frequency, returns a new frequency object:
>>> new_freq_object = Frequency('001.123.000') + Frequency('7', 'khz') # Adds 7 khz to 1.123 mhz
>>> new_freq_object = Frequency('1', 'mhz') + 15000 # Adds 15 khz to 1 mhz
>>> new_freq_object = Frequency('123,000') - '000.007.000' # Subtracts 7 khz from 123 khz
Output Example
$ rf-info 144.100.000 hz US
Display: 145.825.000
Hz: 145825000
Khz: 145825.0
Mhz: 145.825
Ghz: 0.145825
Wavelength: 2m
ITU Band: Very High Frequency
ITU Abbr: VHF
ITU Num: 8
IEEE Band: VHF
IEEE Description: Very High Frequency
NATO Band: A
Microwave Details: ()
Country Abbr: JP
Country Name: Japan
Fixed Station: False
Mobile Station: False
Broadcasting: False
Sattelite: True
Satellite Details:
Name: USNAP1 (BRICSAT2 NO-103)
Sat-Id: 44355
Link: Downlink
Modes: 1k2/9k6* FSK
Callsign: USNAP1-1
Status: Active
Amateur: True
Primary Allocation:
Amateur
Amateur-Satellite
Allocation Notes:
[5.216]: Additional allocation: in China, the band 144-146 MHz is also allocated to the aeronautical mobile (OR) service on a secondary basis.
Todo
Add interactive terminal mode
Credits
M. Ian Perry (ianperry99@gmail.com) AD8DL
History
0.7.1b (2020-01-23)
First Stable Pre-release
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rf_info-0.7.2.tar.gz.
File metadata
- Download URL: rf_info-0.7.2.tar.gz
- Upload date:
- Size: 247.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d7c1b03ee6e83b6afdbb6d158a74a224fd6eb4ee5a4d0d1f2e782f6917fbb4e
|
|
| MD5 |
4cf79e3668077eebcfd0b034fb22a28d
|
|
| BLAKE2b-256 |
b1f9eb67c02815f955965fb0ff1a7adec754290ff75d844af06f06d419f803e0
|
File details
Details for the file rf_info-0.7.2-py2.py3-none-any.whl.
File metadata
- Download URL: rf_info-0.7.2-py2.py3-none-any.whl
- Upload date:
- Size: 237.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ea74111af7e3bf24540481f725178631948492fa8d0fbd37bc326591e2c55849
|
|
| MD5 |
9d224c4b45f9961bf2340901b73bf698
|
|
| BLAKE2b-256 |
ef0b16d415e2329be6e70728dc0f47cf1f18f6adb51ebf2de9c681f6b1267898
|