Meidän käyttämämme MMDVM-pohjainen kiinalainen duplex hotspot Pi-Starilla on alkanut osoittamaan reistailun merkkejä ja ilmeisesti siis ryömimään taajuudeltaan, sillä sitä kautta ei saa avattua yhteyksiä helposti ja yhteys katoaa kesken alta.. Mitäpä sitä nyt kiinan tuotokselta odottaisi. Hyvin toimi muutaman vuoden, eipä siinä.

Tuli siis aika pohtia uutta hotspotia, mikä kulkisi mukana myös matkailuautossa ja voisi tarvittaessa tarjota lähialueelle DMR-toistinpalvelua.
Uuden hotspotin rakentaminen
Tästä alkaa tarina uuden duplex-hotspotin rakentamisesta. Tai no, ihan täysverinen DMR-toistin tästä tulee, muodossa tai toisessa.
Radioksi tähän projektiin valikoitui Erikiltä (OH2LAK) löytynyt tanskalainen TP-Radion TP6000-sarjan UHF-radio TP6725B, jonka TX- ja RX-puolet voidaan hyvin hyödyntää toistimena.
Tätä mallia on käytetty varsin paljon sekä analogitoistimena PMR-puolella (Professional Mobile Radio), että ajoneuvoradiona esim. taksikäytössä (dataradio). Samainen malli on liitännöiltään säätäjäystävällinen, sillä melkein kaikki tarpeellinen löytyy suoraan radion kyljestä löytyvän D25-liittimen pinneiltä.
Radioiden kokoonpanot vaihtelevat paljon ja meidän radio sisältää nämä:
- TP231a Interface Board
- TP314e Channel Loader Board
- TP235d UHF RX/TX Board
- TP236D-U UHF Power Amplifier
- TP239c RX Filter Board
Lisäksi tarvitaan DVM-kortti hoitamaan audion digitaalinen käsittely DMR:lle sopivaksi. Tähän tehtävään löytyi STM32_DVM PiHat Raspberry Pi:n päälle, jolla saadaan siisti paketti.
Yhteenveto tarvikkeista
- TP-Radion TP6000-sarjan UHF-radio TP6725B
- Ohjelmointikaapeli RS-232 DB9-naaras – 8-pin flex
- Windows XP virtuaalikone
- STM32_DVM PiHat (V1)
- Liityntäkaapeli
- Raspberry PI 2
Radion sähkönsyöttö
TP-radion D9-liittimestä syötetään 12Vdc sisään ja jotta radio herää henkiin saadessaan sähkö, kytketään D25-liittimeltä PIN 9 ja PIN 10 yhteen.

Valmistelut ohjelmointiin
Ohjelmointi tapahtuu TP6000 CPS:llä (Customer Programming Software). Käytössämme oleva versio 1.8b on sen verran vanha, ettei 64-bittisellä Windows 11 -koneella sitä enää saa ajettua. Avuksi tuli VirtualBox ja siihen Windows XP Pro SP3, joka suostui ottamaan myös käyttämämme Atenin UC232A USB sarjaporttiadapterinkin haltuun.
Lisäksi tarvitaan erikoisempi sarjapiuha, jossa on normaali RS-232 D9-liitin PC:lle ja toisessa päässä radion ohjelmointiliittimeen 8-napainen flex-kaapeli 1mm jaolla.


Radion kanavointi
Radioon pitää ohjelmoida tarvittavat TX/RX-taajuusparit kanaviksi, joista voi sitten valita sopivan käyttöön tarpeen mukaan. TP6000-radioissa kanavavalinta tehdä D25-liittimestä viidellä nastalla. Kanavapaikkoja on 32 ja käytetty kanava voidaan kätevästi osoittaa viidellä bitillä.
Ajatus on ohjelmoida Suomessa käytössä olevat DV-kanavat, siis samat mitä FinDMR:llä on käytössä sekä Hospot käyttöön sopivat DV-kanavat.
Toistintaajuuksien ohjelmointikartta
CH# | BITS | TX MHz | RX MHz | SPLIT MHZ | CH Name |
---|---|---|---|---|---|
1 | 00000 (#00) | 434.5000 | 432.5000 | 2 | RU360 FinDMR U0 |
2 | 00001 (#01) | 434.5125 | 432.5125 | 2 | RU361 FinDMR U1 |
3 | 00010 (#02) | 434.5250 | 432.5250 | 2 | RU362 FinDMR U2 |
4 | 00011 (#03) | 434.5375 | 432.5375 | 2 | RU363 FinDMR U3 |
5 | 00100 (#04) | 434.5500 | 432.5500 | 2 | RU364 FinDMR U4 |
6 | 00101 (#05) | 434.5625 | 432.5625 | 2 | RU365 FinDMR U5 |
7 | 00110 (#06) | 434.5750 | 432.5750 | 2 | RU366 FinDMR U6 |
8 | 00111 (#07) | 434.5875 | 432.5875 | 2 | RU367 FinDMR U7 |
9 | 01000 (#08) | 438.0750 | 433.0750 | 5 | RU646 FinDMR UW6 |
10 | 01001 (#09) | 438.0875 | 438.0875 | 5 | RU647 FinDMR UW7 |
11 | 01010 (#0A) | 438.1000 | 438.1000 | 5 | RU648 FinDMR UW8 |
12 | 01011 (#0B) | 438.1125 | 438.1125 | 5 | RU649 FinDMR UW9 |
13 | 01100 (#0C) | 438.1250 | 438.1250 | 5 | RU650 FinDMR UW10 |
14 | 01101 (#0D) | 438.1375 | 438.1375 | 5 | RU651 FinDMR UW11 |
15 | 01110 (#0E) | 438.1500 | 438.1500 | 5 | RU652 FinDMR UW12 |
Duplex Hotspot-taajuuksien ohjelmointikartta
CH# | BITS | TX MHz | RX MHz | CH Name |
---|---|---|---|---|
17 | 10000 (#10) | 434.9125 | 432.9125 | RU393 Duplex HotSpot |
18 | 10001 (#11) | 434.9375 | 432.9375 | RU395 Duplex HotSpot |
19 | 10010 (#12) | 434.9625 | 432.9625 | RU397 Duplex HotSpot |
20 | 10011 (#13) | 434.9875 | 432.9875 | RU399 Duplex HotSpot |
Ohjelmointi CPS:llä

TP6000i Setup Program on todella yksinkertainen. Tässä kannataa lukea radiosta olemassa oleva kanavointi talteen, ennen kuin kirjoittaa uuden.

TX-audion muutos liityntäkortilla TP231
D25-liittimeltä löytyvä FFSK IN ei suoraan tule toimimaan STM32-DVM:n kanssa, ja liittimeltä ei löydy suoraan ihan raakana TX-audiota. Kortille kuitenkin tulee TX VCO IN, joka soveltuu käyttöön paremmin.
Käytännössä siis tarvitaan hyppylanka D25-liittimen nastalta 8 flex-liittimen nastaan TX VCO IN. Samalla pitää TX DATA:lle menevä johdin katkaista. Katkaisu D-liittimeltä oli aika ahdas vaihtoehto liittimen ja kortin välistä, kolvin kärki ei ihan ollut mahtua. Jos olisi ollut kärsivällisyyttä olisi ehkä tullut juotettua koko liitin irti ensin ja juottaa hyppylangan alku paikalleen.

Kanavavalitsin ja STM32-DVM liittäminen
Ohjelmoidun kanavan 1-16 tai jopa 32 valinta tapahtuu binäärisesti edellä kuvatun taulukon mukaisesti. Tähän tarkoitukseen tein 5-bittisen jumpperipankin (keltaiset jumpperit). Lisäksi kortilla on punainen jumpperi, jolla radio menee aina päälle kun sähköt kytketään D9-liittimelle.
STM32-DVM D9 | Signaali | TP6000 D25 | Huomioita | |
---|---|---|---|---|
1 | ||||
2 | TX Audio (Flat / 9600 Baud) | ⮕ | 8 | FFSK IN Liityntäkortilla TP231 pitää tehdä muutos. |
3 | DVM Inhibit | ⬅ | Ei tarvita DMR:lle. 1) | |
4 | RSSI | ⬅ | 11 | Radio: RSSI 0.5 – 5 V for 100µV RF input STM32 ADC: vref? |
5 | PTT | ⮕ | 12 | KEY |
6 | RX Audio (Discriminator) | ⬅ | 18 | AF OUT |
7 | ||||
8 | GND | ⏚ | 1 | |
9 | +12Vdc | Ei saa käyttää V1 tai V2 DVM-korttien kanssa. 2) |
1) Käytetään hybriditoistimille (digital ja analog). Esimerkiksi CTCSS active low analogiselle toiminnalle.
2) Voidaan käyttää V3 ja uudempien DVM-korttien kanssa, mikäli se on varustettu 12V buck muuntajalla.


Raspberry Pi ja Pi-star
Tässä vaiheessa valittiin Pi-Star ja sen mukana tuleva MMDVMhost sekä selainpohjainen käyttöliittymä. Pi-Starin asennukseen löytyy niin hyvin ohjeita, että en niitä tässä toista.
Tämän voisi tehdä Raspberry Pi:lla (RPi) niin, että asentaa itse MMDVMhostin sekä MMDVMhost dashboardin. Itse tehtynä ei vain saa Pi-Starin tuomaa SD-kortin suojausta, jotta se ei hajoa kun vaikka RPi:ltä lähtee sähköt. Tämän suojauksen joutuisi myös rakentamaan itse.
Pi-Star tuorein valmis image on versiota 4.1.5, mutta sen jälkeen on julkaistu 4.1.6, joka on päivitettävissä verkon yli. Päivityksen pistar-update
aikana tosin voi tulla huomautusta puuttuvista asennuspakettien allekirjoitusavaimista:
Err:1 http://httpredir.debian.org/debian buster-backports InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 0E98404D386FA1D9 NO_PUBKEY 6ED0E7B82643E131
Jotta päivityksen saa tehtyä kunnolla kokonaan, pitää puuttuvat avaimet päivittää:
pi-star@pi-star(rw):~$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0E98404D386FA1D9 Executing: /tmp/apt-key-gpghome.CSuNFGj6BG/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0E98404D386FA1D9 gpg: key 73A4F27B8DD47936: public key "Debian Archive Automatic Signing Key (11/bullseye) <ftpmaster@debian.org>" imported gpg: Total number processed: 1 gpg: imported: 1 pi-star@pi-star(rw):~$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6ED0E7B82643E131 Executing: /tmp/apt-key-gpghome.gbRuYzTNq7/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 6ED0E7B82643E131 gpg: key B7C5D7D6350947F8: public key "Debian Archive Automatic Signing Key (12/bookworm) <ftpmaster@debian.org>" imported gpg: Total number processed: 1 gpg: imported: 1
Tämän jälkeen voi ajaa uudestaan pistar-update
ja jatkaa päivitys loppuun. Päivityksen aikana voi myös tulla tiedosto- ja hakemistolukituksista virheilmoituksia:
E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it? E: Could not get lock /var/cache/apt/archives/lock - open (11: Resource temporarily unavailable) E: Unable to lock directory /var/cache/apt/archives/
Tällöin on todennäköistä, että käyttöjärjestelmän ajastetut päivitykset ovat käynnissä joten kannattaa odottaa niiden valmistumista ja kokeilla myöhemmin uudelleen.