Aprsg

Radioamatööriwikistä
Versio hetkellä 17. tammikuuta 2009 kello 00.37 – tehnyt >Oh2gve (Lisätty viite.)
Siirry navigaatioon Siirry hakuun

If this documents seems to be encrypted, check the summary in English.

aprsg eli APRS Gateway on IGateohjelma Linuxin kaltaisille käyttöjärjestelmille. Sen tavoite on tarjota aprsd:n keskeisimmät toiminnot hieman paranneltuina, helpommin konfiguroitavina ja pienemmällä muistinkulutuksella. aprsg on kehitetty alunperin Debian Linuxille, mutta se asentuu vaivatta muihinkin Debian-pohjaisiin jakeluihin. Tyystin erilaisiin jakeluihin tai ympäristöihin aprsg:n saattaa hyvinkin saada asennettua lähdekoodeista kääntämällä.

Tärkeimmät ominaisuudet:

  • APRS-pakettien vastaanotto yhdeltä tai useammalta KISS- tai tavalliselta TNC:ltä sarjaportin kautta
  • Kuultujen pakettien lähettäminen APRS-IS-palvelimelle
  • Pakettien välittäminen netistä bandille kutsun ja/tai lähettäjän sijainnin mukaan suodatettuna
  • Mahdollisuus vaihtaa palvelinta automaattisesti yhteyden katketessa

Asentaminen

Debian ja siihen pohjautuvat jakelut

Debianille ja siihen pohjautuville käyttöjärjestelmille on tarjolla valmis asennuspaketti sekä aprsg:lle että sen käyttämällä sarjaporttikirjastolle. Ne löytyvät osoitteesta http://oh3tr.ele.tut.fi/~oh2gve/aprsg/debian/. Lataa ja asenna paketit, esimerkiksi komentoriviltä homma tapahtuu seuraavasti.

wget http://oh3tr.ele.tut.fi/~oh2gve/aprsg/debian/aprsg_0.5-1_i386.deb
wget http://oh3tr.ele.tut.fi/~oh2gve/aprsg/debian/libwxctb0_0.9-4_i386.deb
sudo dpkg -i libwxctb0_0.9-4_i386.deb aprsg_0.5-1_i386.deb

Graafisissa käyttöliittymissä saatat onnistua esimerkiksi klikkaamalla linkkejä http://oh3tr.ele.tut.fi/~oh2gve/aprsg/debian/aprsg_0.5-1_i386.deb ja http://oh3tr.ele.tut.fi/~oh2gve/aprsg/debian/libwxctb0_0.9-4_i386.deb ja tuplaklikkaamalla sitten paketteja sieltä mihin ne tallensit.

Näin toimien saatat saada varoituksia puuttuvista paketeista, jotka aprsg tarvitsee. Katso tällöin pakettien nimet virheilmoituksesta ja asenna ne haluamallasi pakettienhallintatyökalulla.

Asetukset ja käynnistäminen

Asennuksen jälkeen vuorossa on asetusten teko, joka tapahtuu luomalla asetustiedosto /etc/aprsg/aprsg.conf esimerkiksi komennoilla

cd /etc/aprsg
cp aprsg.conf.sample aprsg.conf

ja muokkaamalla sitä tiedostossa olevien kommenttien ja tarvittaessa ohjeiden mukaan.

Konfiguroitu aprsg käynnistyy komennolla

/etc/init.d/aprsg start

Tarkkaile IGatesi toimintaa! Lokitiedostot ovat avuksi tässä vaiheessa, vaikka niiden keräämisestä myöhemmin haluaisit esimerkiksi levytilan säästämiseksi luopuakin. Pääteikkunaan tulostuvat vain muutamat käynnistymisen estävät virheet, kaikki muut tulevat lokitiedostoon.

Poistaminen

Koska aprsg on asennettuna Debianin pakettienhallinnan kautta, voit poistaa sen käyttämälläsi pakettienhallintatyökalulla. Esimerkiksi siis komentamalla

aptitude purge aprsg

Lähdekoodeista kääntämällä

aprsg tarvitsee kääntyäkseen ja toimiakseen wxWidgets- ja Communication Toolbox -kirjastot. Kehitysalustassa on wxWidgetsin versio 2.6.3.2.1.5, mutta koodi saattaa kääntyä muitakin versioita vastaan. Kirjaston saat osoitteesta http://www.wxwidgets.org/downloads/. Jos joudut/päädyt kääntämään kirjaston itse, kannattanee jättää graafiset osat kääntämättä (--disable-gui), sillä aprsg ei niitä tarvitse. Communication Toolboxista (lyh. wxtcb) käytämme versiota 0.9, jonka saat osoitteesta http://downloads.sourceforge.net/wxcode/wxctb-0.9.tar.gz.

Kun edellämainitut kirjastot on asennettu ja tähdet ovat taivaalla oikeissa paikoissa, kääntämisprosessin pitäisi sujua normaaliin tapaan:

wget http://oh3tr.ele.tut.fi/~oh2gve/aprsg/source/aprsg-<versio>.tar.gz
tar xvzf aprsg-<versio>.tar.gz
cd aprsg-<versio>
./configure
make
make install


Konfigurointi

Pikaopas kiireisille harrastajille

  1. Ota risuaita pois niistä esimerkkiasetustiedoston riveistä, jotka on listattu alla.
  2. Korvaa samalla paksunnetut kohdat omilla tiedoillasi.
  3. Jos ei starttaa, lue ohjeet.
  4. Jos ei toimi, lue ohjeet.
  5. Jos ei vieläkään toimi, soita SRALlin hallitukselle ja vaadi rahat takaisin, hi.

Takaisin asiaan...

aprsgn konfiguroinnissa kannattaa käyttää pohjana niin lähdekoodi- kuin Debian-paketissakin tulevaa esimerkkiasetustiedostoa. Tiedoston risuaitamerkillä alkavat rivit ovat kommenttirivejä, joihin on kirjoitettu vinkkejä ja esimerkkejä asetusten tekoon. Konfigurointi tapahtuu helpoiten poistamalla kommenttimerkit esimerkkirivien edestä ja asettamalla niihin oikeat arvot. Asetustiedosto on jaettu osioihin, joiden välissä olevien [otsikoiden] edestä on myös poistettava kommenttimerkki.

Seuraavassa on lueteltu rivit, joiden edestä pitää poistaa risuaita RX-IGaten käyttöönotossa. Pakolliset muutettavat kohdat on paksunnettu.

[general]

IGaten kutsu

Pelkästään bandilta nettiin liikennettä välittävä asema ei tarvitse automaattiseman lupaa eikä siis erityiskutsua, joten voit käyttää omaa kutsuasi. Jos kutsusi on jo APRS-käytössä, laita tähän sen perään jokin vapaana oleva SSID (Secondary Station IDentifier, numero 1-15 joka erottaa saman käyttäjän asemat toisistaan).

callsign = OH2GVE-15

Aseman sijainti

Vaadittu esitysmuoto on asteet kahdella (jälkimmäisessä kolmella) numerolla ja heti perään minuutit kahden desimaalin tarkkuudella. Koordinaatit saa esim. aprs.fi-palvelusta vaihtamalla sen asetuksista koordinaattien esitysmuodoksi "APRS" ja sohimalla senjälkeen hiiren osoittimen IGaten QTH:n kohdalle.

latitude = 6127.25N
longitude = 02350.72E

Sijainnin lähetysväli

IGaten oman sijainnin lähetysväli minuutteina.

beaconinterval = 20


[uplink]

Käytettävä palvelin

Käytettävä APRS-IS-palvelin ja tcp-portti. Palvelimia voi asettaa useita, jolloin yhteys siirtyy automaattisesti toiseen jos ensimmäiselle palvelimelle ei päästä tai yhteys sinne katkeaa.

server = aprs.sral.fi:2345 finland.aprs2.net:14580

Yhteyden tila

RX-IGaten kanssa kannattaa käyttää arvoa txonly, sillä silloin mahdollisia palvelimelta tulevia paketteja ei käsitellä eivätkä ne täytä lokitiedostoja.

state = txonly

Aikakatkaisu

Vaikka palvelinyhteys olisi tilassa writeonly, sieltä tulevaa liikennettä lasketaan koko ajan, ja jos liikennettä ei kuulu lainkaan annettuun aikaan (esimerkissä kahteen minuuttiin), yhteys tulkitaan katkenneeksi ja avataan uudelleen. Tämä nopeuttaa katkenneen verkkoyhteyden havaitsemista, johon ilman tätä toimintoa voi mennä 10-20 minuuttia.

notraffictimeout = 2

Uudelleenavausviive

Jos verkkoyhteyden uudelleenavaus ei onnistu, odotetaan ennen seuraavaa yritystä tässä määritelty minuuttimäärä.

retryinterval = 3


Yhteydet radiolaitteisiin

aprsg osaa vastaanottaa paketteja sarjaportin kautta perusTNC:n lisäksi KISS-TNC:ltä. KISS-TNC:n käyttö on suositeltavampaa, sillä se selviää paremmin APRS-paketeissa joskunaan esiintyvistä hassuista erikoismerkeistä kuten ä ja ö. Laitteita voi olla kytkettynä useita, vain käytössä olevan PC:n sarjaporttien määrä on rajana. Useamman laitteen käyttäminen lienee tosin mielekästä lähinnä silloin kun ne kuuntelevat eri taajuuksia.

Yhteydet radiolaitteisiin numeroidaan juoksevasti ykkösestä alkaen. Yhteyksien parametrien mahdolliset arvot on lueteltu esimerkkiasetustiedostossa. Alla on annettu esimerkki RX-only IGaten syöttämisestä KISS-TNC:llä.

[connection1]
type = 'serialkisstnc
state = rxonly
device = /dev/ttyS0
speed = 19200
wordlength = 8
parity = N
stopbits = 1
erroraction = terminate

erroraction-kohta määrittää mitä aprsg tekee jos sarjaporttia ei saada auki. Normaalit sarjaportit harvemmin katoavat, mutta jos käytät esimerkiksi USB-sarjaportteja tai virtuaalisarjaportteja voi ongelmia ilmetä. Tällöin kannattaa asettaa "erroraction = log".

[duplicatecontrol]

Kaikki IGaten kuulemat paketit tarkistetaan, ja ennen kuulemattomat tallennetaan tässä mainituksi määräksi sekunteja. Jos tämän ajan kuluessa kuullaan sama paketti uudelleen esimerkiksi toisen digipiitterin kautta, sitä ei turhaan välitetä uudelleen palvelimelle. Tästä on hyötyä ainakin silloin, jos palvelinyhteys kulkee hitaan tai kalliin gprs-linkin yli.

duplicatetime = 10


[logging]

Lokitiedostot ovat avuksi aseman toiminnan seuraamisessa. Päälokitiedosto on pakollinen, sinne kirjautuu tietoja ohjelman käynnistyessä ja pysähtyessä. Kuultujen pakettien loki on vapaaehtoinen, mutta se on kätevä keino aseman toiminnan seuraamiseen joten sitä kannattaa käyttää. Huom: lokitiedostojen sijaintihakemiston pitää olla luotuna valmiiksi ennen aprsg:n käynnistämistä. Deb-paketti luo esimerkkiarvoissa mainitun oletushakemiston automaattisesti asentuessaan.

logfile = /var/log/aprsg/aprsg.log
inputlogfile = /var/log/aprsg/input.log

Muuta

Ohjelman kehittäjädokumentaatio löytyy osoitteesta http://oh3tr.ele.tut.fi/~oh2gve/aprsg/doxygen/.