BrandMeister 的 AirSecurity 設定測試

 

airsecurity_cover

 

前言

舊文提到,BrandMeister dashboard 內設有身份認證功能

(AirSecurity/TOTP),預設是關掉的。

airsecurity

 

這文就試一下這個玩法。

 

身份認證機制

登記了 DMR ID,和使用了 3rd fwMD380/G 用家都應知道,DMR ID 的資料庫是公開的,上網一看就知道到 ham 所獲分配的 DMR ID 了。

這也泛生一個問題,利用其他人的 ID 發射,冒充別人了。

雖這個年頭,我認為會這樣做的人不多。但總有人需要防一下的。設定也不複雜,就當練習演習一次吧。正所謂藏器於身,待時而用。

整個身份認證機制,就如一些信用咭網上購物一樣,需配上你的智能電話使用。通訊前先從電話的 app 獲取一個一次性密碼 (one time password,OTP),並以此開通後,才可和對家聯繫。

否則,系統會以語音回報 access denied

 

測試準備

兩套 MMDVM hotspot,配 pi-star

2pistar

 

兩機頻率不同,一接法國 BrandMeister,一接德國 BrandMeister。各分別對應一部 DMR 機。

首先,我們先安裝一個 TOTP (Time-based One Time Password) 程式到自己的智能電話。這些程式多是免費的。

BrandMeister 也支援 Google Authenticator ,但由於我只想簡簡單單使用,部份讀者也用不到 Google service。所以我使用 FreeOTP Authenticator

 

app

 

登入 BrandMeister Dashboard 後,進入 selfcareairsecurity totp,將之設為 on

他會顯示一個 QR code,這時用智能電話上的 totp app 掃描一下,兩者就會產生一個 relationship

qcode

 

之後,dashboard 還需設好有效期限,和所用 BrandMeister 等。

air_after

 

Server side 的設定完成。

 

實戰測試

enable 了認證身份 ID DMR 機,經 BrandMeister 和另一 DMR 機通聯。

首先,在智能電話上的 TOTP app 中的 BrandMeister 身份按一下,便會產生一組,一次性和有時限的 6 位編碼。

我們在 DMR 機上選 Contacts => Manual Dial,然後先按 9,再輸入該 6 位數字,按 PTT 一會。等一下應會回覆 access accepted。然後再從 contacts 選對家,以我來說即我的 2DMR 機。

 

YouTube demo

 

簡介一下這個場境:

左機是接上法國BMDMR機,沒有啟動 AirSecurity 功能。

右機是接上德國BMDMR機,啟動了 AirSecurity 功能。

左機無需認證就可進行 echo test 了 。

由於右機啟動了 AirSecurity 功能,如不事先發出 OTP 編碼,BM 會回報 access denied

按程序認證後,在有效時限內無需再入編碼就可 QSO

 

 

總結

身份認證的使用方法比預期簡單,合長話短說的場合。風花說月有排吹的則需在有效期限後再行認證一下,有損雅興。

Anyway,按需要、情況使用適當器材,採用認證程序與否也是一種學問。

行文當日,收到一位 ham 查詢有關上 dmr 中繼的一大堆程序,左申請,右繳證件 copy 等等問題。

之後撰寫這文時反復思量,除非有人由 Day 1 開始就說謊,即連 Amateur radio license 也沒有。否則只需著打開這個認證功能,並簡單 qso 一次,即可辦識該 ham 身份。

也即是說,數碼年代,一部 DMR 機和裝有 totp app 的智能電話就是一套 ham 的身份認證了。

Posted in Digital Radio | Tagged , , , , , , , | Leave a comment

Echolink 2018 – use Svxlink 17.12.2 as an Echolink node

 

svxlink17

 

 

The Svxlink 17.12.2 was released recently on March, 2018.

Again, the installation procedure and some paths are difference with previous.

There are some changes since my last demo at YouTube in 2015, they are:

  • Airport weather report source changed.
  • Support RTL-SDR dongle for receiving channel.

 

Although the new installation procedure was described in the official website; but it is not a complete procedure. So let me show the whole steps.

Official forum for the new installation procedure:
https://github.com/sm0svx/svxlink/wiki/InstallBinRaspbian

The following steps show how to install the Svxlink to 17.12.2 to the latest Raspberry pi OS Stretch (date 28-4-2018).

Hardware I used is almost same as last article:

  • Raspberry Pi 2B
  • USB sound dongle, I use a cm108 sound dongle to reduce the background noise.
  • USB to RS232 cord, for PTT purpose
  • A DIY sound modem

First of all, install the Rpi OS to a SD card. The default working environment is graphical user interface (GUI).

We open a Terminal box, type the following commands to remove unnecessary package to save some SD card space.


sudo apt-get purge wolfarm-engine
sudo apt-get purge libre-office
sudo apt autoremove

Close the Terminal box, then config the Rpi Preference to boot up on CLI, graphic memory reduce to 16M only.

 

16Monly

Please also config the time zone to your region, and keyboard to US.

Then restart to reboot to the CLI environment.

If you are using old model (version 2) of Rpi hardware, propose update the firmware before the installation.

sudo rpi-update

 

Unlike the previous articles described, do not plug the USB devices (sound dongle, and USB to RS232 cord) at the beginning. We just need the network, USB keyboard connected.

 

The first step add the Svxlink software repository.

echo ‘deb http://mirrordirector.raspbian.org/raspbian/ buster main’ | sudo tee /etc/apt/sources.list.d/svxlink.list
sudo apt-get update

 

Then install the svxlink package.

sudo apt-get -t buster install svxlink-server

 

After the installation, we remove the software repository.

sudo rm /etc/apt/sources.list.d/svxlink.list

 

Now we install the sound clips for the Svxlink.

cd /usr/share/svxlink/sounds/
sudo wget
https://github.com/sm0svx/svxlink-sounds-en_US-heather/releases/download/14.08/svxlink-sounds-en_US-heather-16k-13.12.tar.bz2
sudo tar xvjf svxlink-sounds-en_US-heather-16k-13.12.tar.bz2
sudo ln -s en_US-heather-16k en_US

 

The installation guide told we may try to play the sound clip by run svxlink, it may not work, unless you config the Raspberry pi to force the sound output to 3.5mm jack.

You may adjust the volume by the command:

alsamixer

 

As we will use USB sound dongle for Echolink finally, you may bypass this audio output test.

We plug the USB sound dongle, and the USB to RS232 cord to the Rpi, and then reboot Rpi.

We check the USB devices after reboot, ensure found the USB sound dongle, and USB to RS232 cord.

lsusb

 

We need change the default sound device from the onboard chipset to the USB sound dongle.

Please edit the alsa config file by the following command:

sudo nano /usr/share/alsa/alsa.conf

change line 68 & 69 ‘s 0 to 1
defaults.ctl.card 0
defaults.pcm.card 0

defaults.ctl.card 1
defaults.pcm.card 1

 

Save and Exit.

Reboot the Rpi afterward.

Go to the alsamixer, to check the default sound device changed to the USB sound dongle on the left top side.

 

usb-s

 

Please set the mic and speaker volume level to around 70% for test. You may change the value depend on the result.

Here is my final setting.

s_final

 

Press escape to exit the mixer.

 

The installation was completed. The steps are simple and easier then before, we no need to compile from the source code.

 

Configuration

We need edit 2 config files if want to use svxlink as an Echolink node:

/etc/svxlink/svxlink.conf

/etc/svxlink/svxlink.d/ModuleEcholink.conf

 

If you also want Airport weather report, you also need edit:

/etc/svxlink/svxlink.d/ModuleMetarInfo.conf

Please refer my previous article for the airport weather report, it will not repeat here.

 

Please edit svxlink.conf by following command:

sudo nano /etc/svxlink/svxlink.conf

 

At the [GLOBAL] section, please remove # of line 13,14. As we use the sound card in mono mode, and show the location information.

CARD_CHANNELS=1
LOCATION_INFO=LocationInfo

 

At [Simplex Logic] section:

Line 21, We add ModuleMetarInfo to get the Weather report for dedicated airport

Line 22, We change to our callsign

At [Rx1] section:
Line 169, we change the 0 to 1 , result:

AUDIO_DEV=alsa:plughw:1

At [Tx1] section, we change 0 to 1 of the AUDIO_DEV

AUDIO_DEV=alsa:plughw:1

 

As I use USB to RS232 cord for PTT, the 4th to 6th line of this section change as follow:

PTT_TYPE=SerialPin
PTT_PORT=/dev/ttyUSB0
PTT_PIN=RTS

At [LocationInfo] section, remove # of necessary line, and fill your station information. You may refer my previous article for detail.

 

Echolink configuration setup:

Please edit ModuleEchoLink.conf by the following command:

sudo nano /etc/svxlink/svxlink.d/ModuleEcholink.conf

 

In line 5, remove the # of the line

In line 14-17, please fill in your callsign, echolink password, sysopname and Location brief information

In line 28, remove # of the line to enable default language to US English.

General Reminder

If you are a new comer of Echolink, you should ensure your network firewall allows Port 5198,5199 ; UDP protocol passes though.

echolink_fw

 

Most of the Board Band router configuration got this setting.

You may use the Echolink Client program to test your network environment. Please refer my previous Echolink article for details.

 

Run

Unlike previous we need type command to execute the svxlink, the 17.12.2 version of svxlink was run in back ground daemon when the Rpi boot up.

You may observe the resources by this command:

top

 

You may stop if by the following command:

sudo systemctl stop svxlink

If you like to run Svxlink in debug mode, to shows the operation details, please stop the svxlink manually, then run

sudo -u svxlink svxlink

 

YouTube Demo:

 

 

 

 

New feature test: RTL-SDR dongle for receiving

Starting from svxlink version 15.11, it supports RTL-SDR dongle for extra channel receiving. I spent many times for this experiment but still un-success.

Until this moment, I cannot found any useful information, or demo on the setup.

Anyway, I will share my experience here.

 

First, we need install rtl-sdr driver for raspberry pi.

git clone git://git.osmocom.org/rtl-sdr.git
cd rtl-sdr
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON
make
sudo make install
sudo ldconfig

Please reboot afterward, plugin the rtl-sdr dongle, you should seen it by command lsusb:

lsusb2

 

To support 1 more receiving channel, we use the Voter function in the Svxlink.conf .

Edit Svxlink.conf, we change some parameters:

At [SimplexLogic] section, change the RX=Rx1 to Voter.

voter

 

 

We need add a new section call DDR, under the section Rx1. Here is my setting together with section [WbRx1] .


[DDR]
TYPE=Ddr
SIGLEV_DET=DDR
SQL_DET=SIGLEV
SIGLEV_SLOPE= -0.94
SIGLEV_OFFSET= -185.16
SIGLEV_OPEN_THRESH= 30
SIGLEV_CLOSE_THRESH= 5
FQ=435150000
MODULATION=FM
WBRX=WbRx1

[WbRx1]
TYPE=RtlUsb
DEV_MATCH=0
HOST=localhost
FQ_CORR=1
GAIN=0
PEAK_METER=1
SAMPLE_RATE=960000

We need to know the value of the parameters:

  • SIGLEV_SLOPE
  • SIGLEV_OFFSET
  • FQ_CORR

We use the following command to get the FQ_CORR figure first:

devcal -Mw /etc/svxlink/svxlink.conf DDR

You will got the tolerance value of your RTL-SDR dongle.

My one equipped high precision 1ppm Tcxo. So I got 1ppm result.

 

echo_1ppm

 

 

Then we run this command to get the values of the rest parameter:

siglevdetcal  /etc/svxlink/svxlink.conf DDR

siglev

 

Finally, we need to add DDR to the Voter section:

voter_ddr

 

 As I know, here is the steps need for RTL-SDR dongle to receives more channel.

The Voter function work, but nothing can be listen by this Rx only channel.

echolink_sdr

 

 

Conclusion

The Svxlink 17.12.2 are easier to install and config than before. And although my test is using analog handheld transceiver, it should also work by digital mode such as DMR radio.

Posted in EchoLink, English Articles | Tagged , | 4 Comments