modem : Select the FLDIGI modem and read/write its settings

class pyfldigi.client.modem.Modem(clientObj)[source]

Bases: object

A collection of methods and properties that interface to fldigi’s modem functionality. For full documentation on the various modems available, see: http://www.w1hkj.com/FldigiHelp-3.21/html/modems_page.html

Note

An instance of this class automatically gets created under pyfldigi.client.client.Client when it is constructed.

afc_search_range

The modem AFC [auto frequency control] search range

Getter:Returns the modem AFC [auto frequency control] search range
Setter:Sets the modem AFC [auto frequency control] search range.
Type:int
bandwidth

The modem bandwidth.

Getter:Returns the modem bandwidth
Setter:Sets the modem bandwidth.
Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.bandwidth
0
>>> fldigi.modem.bandwidth = 500
0
carrier

The modem carrier frequency, in Hz.

Note

This is NOT the same as the rig carrier frequency which is usually in the kHz or MHz range. The modem carrier frequency is usually ~1000 Hz or so, well within the audio range.

Getter:Returns the modem carrier frequency
Setter:Sets modem carrier.
Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.carrier
1000
>>> fldigi.modem.carrier = 1020
>>> fldigi.modem.carrier
1020
id

The numeric id of the modem. This is effectively the enumeration value used internally by fldigi.

Getter:Returns the ID of the current modem
Setter:Sets the current modem by the numeric id.
Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.name  # read to demonstrate its initial value
'CW'
>>> fldigi.modem.id
1
>>> fldigi.modem.name = 'BPSK31'
>>> fldigi.modem.id
39
>>> fldigi.modem.id = 1
>>> fldigi.modem.id
1
>>> fldigi.modem.name
'CW'
max_id

Returns the maximum modem ID number

Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.max_id
124
name

The modem name. This determines which modulation/demodulation protocol is used when transmitting and/or receiving.

Note

A full list of names can be queried with: Client.Modem.names

Getter:Returns the name of the current modem
Setter:Sets the current modem.
Type:str
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.name  # read to demonstrate its initial value
'CW'
>>> fldigi.modem.name = 'BPSK31'  # set to BPSK31
>>> fldigi.modem.name  # read back to demonstrate that it changed
'BPSK31'
names

Returns all modem names

Return type:str
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.names
['NULL', 'CW', 'CTSTIA', 'DOMEX4', 'DOMEX5', 'DOMEX8', 'DOMX11', 'DOMX16', 'DOMX22', 'DOMX44',
'DOMX88', 'FELDHELL', 'SLOWHELL', 'HELLX5', 'HELLX9', 'FSKHELL', 'FSKH105', 'HELL80', 'MFSK8',
'MFSK16', 'MFSK32', 'MFSK4', 'MFSK11', 'MFSK22', 'MFSK31', 'MFSK64', 'MFSK128', 'MFSK64L', 'MFSK128L',
'WEFAX576', 'WEFAX288', 'NAVTEX', 'SITORB', 'MT63-500S', 'MT63-500L', 'MT63-1KS', 'MT63-1KL',
'MT63-2KS', 'MT63-2KL', 'BPSK31', 'BPSK63', 'BPSK63F', 'BPSK125', 'BPSK250', 'BPSK500', 'BPSK1000',
'PSK125C12', 'PSK250C6', 'PSK500C2', 'PSK500C4', 'PSK800C2', 'PSK1000C2', 'QPSK31', 'QPSK63',
'QPSK125', 'QPSK250', 'QPSK500', '8PSK125', '8PSK125FL', '8PSK125F', '8PSK250', '8PSK250FL',
'8PSK250F', '8PSK500', '8PSK500F', '8PSK1000', '8PSK1000F', '8PSK1200F', 'OLIVIA', 'Olivia-4-250',
'Olivia-8-250', 'Olivia-4-500', 'Olivia-8-500', 'Olivia-16-500', 'Olivia-8-1K', 'Olivia-16-1K',
'Olivia-32-1K', 'Olivia-64-2K', 'RTTY', 'THOR4', 'THOR5', 'THOR8', 'THOR11', 'THOR16', 'THOR22',
'THOR25x4', 'THOR50x1', 'THOR50x2', 'THOR100', 'THROB1', 'THROB2', 'THROB4', 'THRBX1', 'THRBX2',
'THRBX4', 'PSK125R', 'PSK250R', 'PSK500R', 'PSK1000R', 'PSK63RC4', 'PSK63RC5', 'PSK63RC10',
'PSK63RC20', 'PSK63RC32', 'PSK125RC4', 'PSK125RC5', 'PSK125RC10', 'PSK125RC12', 'PSK125RC16',
'PSK250RC2', 'PSK250RC3', 'PSK250RC5', 'PSK250RC6', 'PSK250RC7', 'PSK500RC2', 'PSK500RC3', 'PSK500RC4',
'PSK800RC2', 'PSK1000RC2', 'FSQ', 'IFKP', 'SSB', 'WWV', 'ANALYSIS', 'FREQSCAN']
quality

Returns the modem signal quality in the range [0:100]

Getter:Returns the modem bandwidth
Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.quality
0
search_down()[source]

Searches downward in frequency

Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.search_up()
search_up()[source]

Searches upward in frequency

Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.search_up()
class pyfldigi.client.modem.Navtex(clientObj)[source]

Bases: object

get_msg(timeout)[source]

Returns next Navtex/SitorB message with a max delay in seconds.. Empty string if timeout.

send_msg(msg)[source]

Send a Navtex/SitorB message. Returns an empty string if OK otherwise an error message.

class pyfldigi.client.modem.Olivia(clientObj)[source]

Bases: object

Settings specific to the Olivia modem type.

Note

An instance of this class automatically gets created under pyfldigi.client.modem.Modem when it is constructed.

bandwidth

Returns the Olivia bandwidth

Getter:Returns the modem bandwidth
Setter:Sets the modem bandwidth.
Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()
>>> fldigi.modem.name = 'Olivia-4-250'
>>> fldigi.modem.olivia.bandwidth
500
tones

The # of Olivia tones. Note that Olivia is a configurable mode where

Getter:Returns the modem bandwidth
Setter:Sets the modem bandwidth.
Type:int
Example:
>>> import pyfldigi
>>> fldigi = pyfldigi.Client()

# Changing the modem name has an effect on the # of tones. >>> fldigi.modem.name = ‘Olivia-4-250’ >>> fldigi.modem.tones 4 >>> fldigi.modem.name = ‘Olivia-8-250’ >>> fldigi.modem.tones 8 # Setting the # of tones will have an effect on the name. >>> fldigi.modem.olivia.tones = 4 >>> fldigi.modem.name ‘Olivia-4-250’ >>> fldigi.modem.olivia.tones = 8 >>> fldigi.modem.name ‘Olivia-4-250’

class pyfldigi.client.modem.Wefax(clientObj)[source]

Bases: object

end_reception()[source]

End Wefax image reception

get_engine_state()[source]

Returns Wefax engine state (tx and rx) for information.

get_received_file(timeout)[source]

Waits for next received fax file, returns its name with a delay. Empty string if timeout.

send_file(filename, param)[source]

Send file. returns an empty string if OK otherwise an error message.

set_adif_log(logging)[source]

Set/reset logging to received/transmit images to ADIF log file

set_max_lines(lines)[source]

Set maximum lines for fax image reception

set_tx_abort_flag()[source]

Cancels Wefax image transmission

skip_apt()[source]

Skip APT during Wefax reception

skip_phasing()[source]

Skip phasing during Wefax reception

start_manual_reception()[source]

Starts fax image reception in manual mode