XRPi Home Documentation Index Alphabetic Index |
XRPi Documentation - IntroductionIntroduction
1) What is XRPi?XRPi is a software AX25/NetRom/TCPIP router, intended for use in packet switched data-over-radio networks by radio hobbyists. It is essentially the most recent version of XR32, ported from Windows to Linux. Although intended for use on the Raspberry Pi, it has also been compiled for some desktop Linux platforms as "XRLin". XRPi runs in a Linux terminal. There is no GUI (yet)- everything is done via a Command Line Interface (CLI), allowing full local and remote control. The program is free of charge for non-commercial use by radio and networking hobbyists.
XRPi packs a lot of functionality into a small program, so this is just a sample...
(The above may look daunting, but you can configure an XRPi system to be as simple or as complex as you like, from a simple 1 port digipeater to a multi-protocol monster with hundreds of ports).
If you are are already familiar with XRouter (XR16) or XR32, you might be wondering what sort of beast is XRPi? Is it radically different? The answer is no. XRPi is just XR32 rebuilt to run natively on Linux instead of Windows. It was already possible to run XR32 on Linux, using Wine. But XRPi doesn't need Wine. Everything has been kept as familiar as possible, so if you knew how to run XR16 you should have no trouble running XRPi. Here are some of the main differences:
4) It's Not NOS!It is a common misconception that XRPi is a variant of NOS. It is not NOS, and is not derived from NOS, so please don't expect it to work the same. Some of XRPi's commands may be similar to NOS and *NIX ones, but the syntax may differ.
Some of the terminology surrounding XRPi may be confusing for seasoned Linux users. For instance the terms "interface", "tty", "terminal" and "console" have different meanings in Linux than in XRPi. The concept of "ports" may be unfamiliar to those more used to dealing with Linux "interfaces". One has to bear in mind that XRPi began life in the 1990s as "XRouter", running in MS-DOS on 4.77MHz "XT" machines with 5.25 inch floppy disks. Parts of it were imported from even earlier works such as PZTBBS and PEARL with their roots in the 1980s. It used terminology that was in common use at that time, e.g. the concept of PORTs for AX25 systems where more than one frequency was in use. The distinction between interfaces and ports was developed back in PZTBBS, to accommodate cases where one physical interface could support more than one communication channel, e.g. with KISS. Rightly or wrongly, it worked, so it has stuck. Linux was nowhere to be seen back then. If it existed at all, it wasn't generally known about. We developed our own nomenclature for XRouter, some of which now conflicts with Linux. It may be annoying to you, but we are not going to change anything now. Where confusion is possible we will attempt to make it clear whether we are referring to XRPi terms or Linux ones. If in doubt, assume the former, because this documentation was originally written for the DOS version and we may not have found all the bugs yet.
XRPi is closed source, and this is not negotiable. The pros and cons of open source have been extensively considered in this decision.
Requests for source code will be ignored, but the author will attempt to publish all new protocols and API's implemented by XRPi in due course.
We are not hiding anything by remaining closed source, we are just keeping the project more manageable. But if you are concerned that XRPi might be spyware or something, by all means sandbox it, virus-check it, Wireshark it, use its own trace function, or just don't run it.
The software author welcomes any feedback, such as bug reports, suggestions, wishlists etc.
You are the beta testers. It is impossible for the author to test all combinations of hardware, software and configuration, so it is important that you report your findings.
If you find errors in the documentation, or you feel something isn't explained properly, please help us to improve it by letting us know.
All feedback should be sent via email to: vk2dot_[at]tpg.com.au or to the XRouter support group (see below).
Please do not ask the author to personally help you with configuration issues. Time spent trying to solve your problems and answering emails slows down the development of XRPi.
It is believed that everything is adequately covered by this documentation. However, if you cannot find the answers here, please let us know. You are urged to join the "XRouter" group, and use it for support where possible.
The web interface for the group is https://groups.io/g/xrouter. You may also operate it by email - links are on the aforementioned page.
The terms "the code" and "the software" refer to XRPi and all components thereof, and all documentation relating to it.
You are not permitted to make any charge for, nor gain any pecuniary advantage directly or indirectly from, the copying, distribution or use of this software, or any component thereof, or any driver or utility written for use with the software, unless by prior written agreement with the author.
You must not patch, decompile, disassemble, reverse engineer or in any way modify the software, or cause a modified version or part thereof, or any portion of the source code to be distributed.
The use of the software is at your own risk. The author accepts no liability for any loss or damage incurred as a result of the installation or use of the software.
XRPi requires any model of Raspberry Pi, running Debian Wheezy, Jessie or Stretch. It has not (yet) been tested on other flavours of Linux that might be used on Raspberry PI.
The processor speed is not critical, and less than a megabyte of disk space is required for the program and its ancilliary files.
The program does not require formal "installation" and its root directory can be located anywhere, even on a USB pen drive. You may run multiple instances of XRPi concurrently on the same machine.
You may also need some form of physical interface to connect XRPi with the outside world. So either a USB to RS232 adaptor or a USB "sound fob" may be required. In the case of the Raspberry Pi "Zero", you may need an Ethernet adaptor.
Certain conventions are used in this documentation to avoid unnecessary repetition. They are as follows: | ("or") Separates alternative options or arguments. <> Encloses a mandatory argument [] Encloses one or more optional arguments. callsign A valid amateur radio callsign dir Directory dirname Directory name file A unique file name without directory filename A unique file name without directory filespec Specifies one or more files, with or without directory he Represents both "he" and "she" path A fully qualified directory path pathname A full directory plus filename. string A contiguous sequence of non-whitespace characters. text One or more strings separated by whitespace. whitespace Spaces, tabs or newlines Example: DIR [ filespec ] - DIR command has one optional argument, which may be a file or file group description, with or without directory. In cases where a pathname is required, if only a filename is given, the program's working directory is assumed.
|
|