diff --git a/README.md b/README.md index 061cf8e45894f6708589a99130362b4544e26713..a1d774d434ea0f0ee55b3999e35806daa75572ab 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,33 @@ # igate -Reference CATS/FELINET I-gate/digipeater for the Raspberry Pi +Reference CATS/FELINET I-gate/digipeater for the Raspberry Pi. Requires an I-Gate board: https://gitlab.scd31.com/cats/pi-hardware + +## Building + +To build the software, you will need to install [Rustup](curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh). You'll also need git. After these are installed, restart your terminal, or open a new one. Then run these commands: + +```bash +git clone https://gitlab.scd31.com/cats/igate +cd igate +git pull +cargo install cargo-deb +cargo deb +``` + +The resulting deb package will placed in `target/debian/cats-igate_VERSION.deb` + +## Installing + +Once built, the package can be installed with `sudo dpkg -i target/debian/cats-gate_VERSION.deb`, replacing `VERSION` with whatever version and architecture was built. + +## Configuring + +First of all, the SPI bus must be enabled on the Pi. It's disabled by default and is required to communicate with the hardware. This can be enabled in the `raspi-config` utility under "Interface Options". After enabling, restart the Pi. + +The configuration for the I-gate lives in `/etc/cats_igate/config.toml`. Make sure to update this before using the utility - most importantly, the callsign must be configured. + +## Usage + +For debugging, a single command line option exists. Running `cats-igate -x <freq>` in a terminal will send out constant test packets (properly identified, of course) which is useful for diagnostics. Please don't run this on the main CATS frequency or it will utilize 100% of the channel! Also, make sure whichever frequency you choose is unused. + +The I-gate ships with a service file, which allows it to run autonomously. To start the service, run `sudo systemctl start cats-igate`. To have the service automatically start at bootup, run `sudo systemctl enable cats-igate`.