SW_Config_Params - fablab-wue/piTelex GitHub Wiki

This is a (mostly) complete list of configuration parameters for telex.json, grouped by modules/devices.

For more detailed description, see the resp. device page.

Module Parameter Type/Range Default Comment
(Global) continue_with_no_printer false / true true if true, ignore missing / faulty printer device
if false, abort connections if teleprinter fails to start up
(Global) devices dict {} Dictionary of device-node-IDs (modules)
(Global) dial_timeout '+‘ / float (0.0...55.0) 2.0 idle time after last dialled digit to start dial process
if ‚+‘, „plus-dialling“ selected,
if ‚0‘, instant dialling is used
(see Configuration File )
(Global) errorlog_level NOTSET", "DEBUG",
"INFO", "WARN",
"ERROR", "CRITICAL
INFO verbosity of error log (see python manual)
(Global) errorlog_path string error_log Directory path for error log
(Global) power_button_timeout non-neg. int 300 time in seconds from switching on TTY power by means of button PT until switch off PWR
(Global) power_off_delay non-neg. int 20 time in seconds from end-of-conection until switching off TTY power
(Global) welcome_msg false/true true if true, print the welcome msg (DateTime stamp) at connection start
(Global) wru_id string [none] Software-WRU-ID
(Global) wru_replace_always false / true false if true, always replace Hardware-WRU by Software-WRU
Archive email_sender string none E-Mail address of sender
Archive path string archive path to archive directory
Archive recipient string none E-Mail address of recipient
Archive send_email false / true false notify via email when a telex has arrived
Archive smtp_password string none password for username
Archive smtp_port pos. integer 587 TCP port at mailserver (often 25, 465, 587)
Archive smtp_server string none FQDN or IP of mailserver
Archive smtp_user string none username at mail server
CH340TTY baudrate 50, 75, 100 50 Baud rate
CH340TTY bytesize 5 … 8 5 # of Databits
CH340TTY coding 0,1,2,3 0 0:ITA2=CCITT2, 1:US, 2:MKT2, 3:ZUSE (see txCode.md)
CH340TTY inverse_dtr false / true false If true, use inverted signal
CH340TTY inverse_rts false / true false If true, use inverted signal
CH340TTY loc_echo false / true false if true, echo back all characters received from teleprinter
CH340TTY loopback false / true true if true, sent characters are removed from receive buffer
CH340TTY mode TW39", "TWM", "V10", "EDS TW39 "TW39": Number Switch Dial
"TWM" : keypad Dial, "V10" : FS200/Fs220 mode
"EDS" :
CH340TTY portname string /dev/ttyUSB0 serial port used
CH340TTY stopbits 1, 1.5, 2 1.5 # of stopbits
ED1000SC baudrate 50, 75, 100,200 50 Baud rate
ED1000SC devindex null or positive integer (0 included) null pyaudio‘s device index for the intended audio device
use ED1000/audiotest.py to list currently available devices (0=auto, 1=1st device, 2=2nd ...).
ED1000SC recv_debug false / true false If true, output recv_debug.log file inside which the repective filter power output levels for every sample are recorded. Use only for debugging (file will grow quickly).
ED1000SC recv_f0 number 2250 RX frequency 0 in Hz (A level)
ED1000SC recv_f1 number 3150 RX frequency 1 in Hz (Z level)
ED1000SC recv_squelch positive integer 100 Defines the power threshold below which the filter output for A/Z level is ignored
if needed, can be determined experimentally using helper script ED1000/squelch_check.py (see docstring inside).
ED1000SC send_f0 number 500 TX frequency 0 in Hz (A level)
ED1000SC send_f1 number 700 TX frequency 1 in Hz (Z level)
ED1000SC send_WB_pulse false / true false If true, send pulse to signal ready-to-dial condition like with the current interface.
ED1000SC unres_threshold positive integer 100 Duration in ms that piTelex waits for the teleprinter, after it started sending Z level, until the teleprinter returns the Z level to signal readiness state. Raise if the teleprinter needs more time to start up for special setups, e.g. when switching mains using ESC-TP0/TP1 commands.
ED1000SC zcarrier false / true false If true, piTelex will send continous A level in idle state. Most teleprinters don‘t need this.
IRC directed_only false / true false ?
IRC irc_channel string #tctesting IRC Channel to use
IRC irc_nick string telextest Nick name
IRC irc_port 1024 ... 65535 6697 IP port of IRC server
IRC irc_server string irc.nerd2nerd.org Name or IPV4 address of IRC server
ITelex tns_srv list of FQDNs,IPV4-addresses "[tlnserv.teleprinter.net,
tlnserv2.teleprinter.net,
tlnserv3.teleprinter.net]
specify tns-hosts to use. ranking: First entry has highest priority, last one has lowest
ITelex tns_port number 11811 TCP port number of tns_host (tns=“TeilNehmerServer“)
ITelexCentralex centralex true/false false if true, use the centralex protocol
ITelexCentralex centralex_port pos. integer 49491 TCP port number of centralex service
ITelexCentralex centralex_srv string tlnserv2.teleprinter.net FQDN or IP-Address of centralex server
ITelexClient userlist string userlist.csv filename of file containing speed dials, syntax see userlist_example.csv
ITelexSrv block_ascii false/true true if true, block non-I-Telex connections (ASCII, PortScans,...)
ITelexSrv number positive integer 0 alias for tns-dynip-number, deprecated
ITelexSrv port 1024 ... 65535 2342 TCP port number (ports <1024 are privileged and not accessible for normal users)
ITelexSrv tns_dynip_number positive integer 0 Initially 0 (disable dynamic IP update). Set to own i-Telex calling number to enable dynamic IP update – must be agreed on with i-Telex administrators.
ITelexSrv tns_pin positive integer < 65536 None PIN for dynamic IP update, set according to i-Telex administrator‘s instructions
KeyPad device_name none string part of device name to select a special keyboard/keypad device
KeyPad KEYS none dictionary Dictionary of key values, consists of the following keys: `KEY_KP[[0..9]
KeyPad show_key_name true true/false show key names
Log filename string log.txt path to logfile
News newspath string ./news path to news file
RPiCtrl delay_AT non-neg. int 0 delay in seconds before reacting on button AT pressed
RPiCtrl delay_ST non-neg. int 0 delay in seconds before reacting on button ST pressed
RPiCtrl inv_number_switch false / true true If true, use inverted signal on pin
RPiCtrl inv_power false / true false If true, use inverted signal on pin
RPiCtrl LED_Z_heartbeat number 6 defines heartbeat duty cycle for LED_Z, off if set to 0 (=> LED_Z always on), otherwise LED_Z is turned off for (LED_Z_heartbeat * 500ms) and on for 500ms
RPiCtrl pin_button_1T number 0 GPIO# of Single button (optional), press button 1T repeatedly to cycle through states Offline, Active, WB
RPiCtrl pin_button_AT number 0 GPIO# of button AT (optional) Button connects to GND
RPiCtrl pin_button_LT number 0 GPIO# of button LT (optional) Button connects to GND
RPiCtrl pin_button_PT number 0 GPIO# of power button PT (optional) Button connects to GND
RPiCtrl pin_button_ST number 0 GPIO# of button ST (optional) Button connects to GND
RPiCtrl pin_button_U1 number 0 GPIO# of button user1 (optional) Button connects to GND
RPiCtrl pin_button_U2 number 0 GPIO# of button user2 (optional)
Button connects to GND
RPiCtrl pin_button_U3 number 0 GPIO# of button user3 (optional)
Button connects to GND
RPiCtrl pin_button_U4 number 0 GPIO# of button user4 (optional)
Button connects to GND
RPiCtrl pin_LED_A number 0 GPIO# of LED indicating status „A“
LED connects to GND (500Ohm in series!)
RPiCtrl pin_LED_LT number 0 GPIO# of LED indicating Local Mode
LED connects to GND (500Ohm in series!)
RPiCtrl pin_LED_status_G number 0 GPIO# of GREEN status LED
LED connects to GND (500Ohm in series!)
RPiCtrl pin_LED_status_R number 0 GPIO# of RED status LED
LED connects to GND (500Ohm in series!)
RPiCtrl pin_LED_WB number 0 GPIO# of LED indicating status „WB“
LED connects to GND (500Ohm in series!)
RPiCtrl pin_LED_WB_A number 0 GPIO# of LED indicating status „WB" or status „A“
LED connects to GND (500Ohm in series!)
RPiCtrl pin_LED_Z number 0 GPIO# of LED indicating status "Z" and "ZZ"
LED connects to GND (500Ohm in series!)
RPiCtrl pin_number_switch number 0 GPIO# of pin connected to number switch of CCU
if 0, use kbd dialling
RPiCtrl pin_power number 0 GPIO# of pin for power (save) relay / SSR
RPiCtrl text_button_U1 string RY text to print if button user1 is pressed
RPiCtrl text_button_U2 string RYRY ... RY Text associated with button user2
RPiCtrl text_button_U3 string # Text associated with button user3
RPiCtrl text_button_U4 string @ Text associated with button user4
RPiTTY baudrate 38 ... 50 … 200 50 Baud rate
RPiTTY bytesize 5 … 8 5 # of databits
RPiTTY coding 0,1,2,3 0 0:ITA2=CCITT2, 1:US, 2:MKT2, 3:ZUSE (see txCode.md)
RPiTTY double_WR false / true false if true, add an extra <CR> to give the old machines more time to move to the start of the line
RPiTTY inv_number_switch false / true false If true, use inverted signal on pin
RPiTTY inv_observe_line false / true [inv_rxd] If true, use inverted signal on pin
RPiTTY inv_power false / true false If true, use inverted signal on pin
RPiTTY inv_relay false / true false If true, use inverted signal on pin
RPiTTY inv_rxd false / true false If true, use inverted signal on RX-Data pin
RPiTTY inv_txd false / true false If true, use inverted signal on TX-Data pin, not possible with PIGPIO
RPiTTY loopback false / true true if true, sent characters are removed from receive buffer
RPiTTY mode string TW39 "TW39" for TTY‘s with current loop and number switch,
"TW39H" if using H-bridge hardware,
"TWM" for keyboard dialling,
"V10" for machines with V.10 interface (mainly TeKaDe FS200 / FS220),
"AGT" , "AGT-TWM", "AGT-TW39" for use with austrian AGT and SEU-M
RPiTTY nZZ_observe_line false / true false (For TeKaDE FS2X0): Observe LIN button in deep sleep mode, should be true if power relay is used
RPiTTY pin_dir number 0 GPIO# of DIR pin. This pin is set to 1 on transmitting each byte for hardware loopback supression
RPiTTY pin_number_switch number 6 GPIO# of pin connected to the number switch

often wired to pin_rxd.
Set to -1 to enable pin_number_switch in module RPiCtrl
Set to 0 to select keyboard dialling
RPiTTY pin_observe_line number [pin_rxd] GPIO# of pin to observe
RPiTTY pin_power number 0 GPIO# of pin used to switch power relay/SSR
RPiTTY pin_relay number 22 GPIO# of relay coil pin
in non-FSG mode used to switch the line power of the teletype
in FSG mode, relay is used to invert the polarity of the current loop when a connection is established
RPiTTY pin_rxd number 27 GPIO# of RX-Data pin
RPiTTY pin_txd number 17 GPIO# of TX-Data pin
RPiTTY stopbits 1 / 1.5 / 2 1.5 # of stopbits
RPiTTY timing_rxd false / true false ?
RPiTTY txd_powersave false/true false If true, switch off the loop current in "ZZ" status. Should be used together with pin_power option of device RPiCtrl
RPiTTY use_observe_line false / true true If true, monitor pin_observe_line for state changes of >0,5s
RPiTTY WB_pulse_length number 40 set length of WB pulse in milliseconds
Screen show_BuZi false / true true If true, show special characters for Bu / Zi on Screen
Screen show_capital false / true false if true, use capital letters on screen
Screen show_ctrl false / true true if true, show control sequences on screen
Screen show_info false / true false if true, show additional info on screen
Screen show_line false / true true if true, show vertical border line „|“ on screen
ShellCmd LUT dict {} Look-up table of user defined commands to be executed in response to piTelex ESC commands
form: {„key1“: „cmd1“, „key2“: „cmd2“,..,..}.
„cmd1“ will be executed after typing key1 a.s.o..
example: {„quick“: „echo the quick brown fox jumps“}. <ESC>quick<ENTER> gives the output „the quick brown fox jumps“. can be used for predefined commands like TP0/TP1 (turn off/on power for teleprinter)
Terminal auto_CRLF 0..N 0 if >0, insert CR/LF after N characters
Terminal baudrate number 300 Baud rate
Terminal bytesize number 8 # of Databits
Terminal dsrdtr false / true false if true, use DSR/DTR handshake
Terminal loc_echo false / true true if true, echo back all characters
Terminal parity NONE" / "ODD" / "EVEN NONE parity bit
Terminal portname string /dev/ttyUSB0 serial port used
Terminal replace_char dict {} Translation table for special characters, structure see "ShellCmd"
Terminal replace_esc char {} Sequence to use as ESC character
Terminal RS485 false / true false if true, use RS485 protocol
Terminal rtscts false / true false if true, use RTS/CTS handshake
Terminal send_only false / true false if true, receiving is inhibited
Terminal show_BuZi false / true true If true, show special characters for Bu / Zi on terminal
Terminal show_ctrl false / true true if true, show control sequences on terminal
Terminal show_info false / true false if true, show additional info on terminal
Terminal stopbits 1, 1.5, 2 1 # of stopbits
Terminal xonxoff false / true false if true, use XON/XOFF handshake
⚠️ **GitHub.com Fallback** ⚠️