SW - fablab-wue/piTelex GitHub Wiki

Software

Overview

piTelex software is completely written in Python and should therefore run on several platforms. Whereas the main target system is a RaspBerry pi running Raspberry Pi OS, the software can also be run on a PC running Windows or Linux.

Modules

The software is built up from modules which serve different tasks. Besides the central management module MCP which contains the state machine and coordinates the other selected modules, there are three groups of modules:

  • The first group is needed to connect to the physical typewriter via it's individual transmission protocol. These are:
    • CH340TTY to connect a TTY using TW39 protocol via USB-Adapter with CH340 chip
    • RPiTTY to connect a TTY using TW39 or V.10 protocol via Raspberry Pi and GPIO lines
    • ED1000 to connect a TTY using ED1000 protocol via SoundCard
    • terminal to connect POS devices

Each piTelex installation must enable one of these modules in order to communicate with the TTY. Depending on the TTY type, it is also necessary to build a matching hardware interface between piTelex and the TTY. Details can be found in the hardware section of the wiki.

  • The second group establishes connections to "the outside world":
    • Screen Allows bidirectional typing and control of the TTY from a computer's terminal screen
    • ITelex: supports the i-Telex protocol for connections to other i-telex stations
    • News to print files provided by third party software, e.g. (but not limited to) RSS-feeds
    • RSS is a compact client to print messages from RSS channels
    • IRC to connect to IRC servers

At least one of them must be enabled; depending on your needs you may enable additional modules.
For an i-Telex station, usually at least Screen, ITelexSrv, ITelexClient are needed

  • Besides the above modules, there are some miscellaneous utility modules:
    • Eliza a fun therapist which poses questions and handles answers in a funny(?) manner
    • Log provides logging to a file
    • Archive to archive all incoming and outgoing messages in a separate subdirectory
    • ...

The main program telex.py starts and coordinates the software modules as configured in the configuration file and by commandline arguments.

How to install the software on different platforms is explained in the software section of the wiki.

How to enable or disable modules and configure their properties is described in section Configuration.