Monday, March 4, 2019

Building my Allstar Node - 49801









So, what is Allstar?


AllStar is a digital linking network used to link standard analog repeaters, or nodes, over the Internet to other repeaters or nodes. It uses modified, open-source PABX, software that treats radio nodes like telephone numbers and allows users to ‘dial-up’ other nodes and/or make temporary or permanent ‘conferences’ of connected nodes. In its simplest form, you can interconnect two radios at different locations via the internet (or intranet on your own LAN).

I decided to build an Allstar node because I have the Baofeng BF-888s radios and the Raspberry Pi 3B+. All I needed was the interface between the radio and Pi.

I looked up things on Hamvoip.org, and there are lots of good information, from modifying the radios, to building your own interface. First I tried the USB FoB, but that was a disaster for me with the fine soldering.

1) Register for a Node Number: 

Before starting anything, register for a node number by visiting visit the allstarlink.org website:
Once you register you can become a node sysop by checking a box in the profile tab. You then establish a server "on paper" in a very simple fashion. Once you have done that you can request a node number which should be issued within 24 hours. You should get a response email when the node is assigned but you can also revisit the allstarlink.org page and view the status. When the node is assigned a 6 digit password for that node is also assigned. You will then use those two numbers to setup your local Allstar node as described below. While you are waiting for your node number you can get the hardware you need on order and review the setup instructions on this page and in the Howto's at hamvoip.org. You can also Download the image and write it to your SD card. 

2) Modifying the Baofeng BF-888s:



You can always reference this page:
https://hamvoip.org/hamradio/baofeng888/

If you want to use the Baofeng UV82 follow this page:
https://hamvoip.org/hamradio/UV82_mod/

Here is a youtube video how to open the radio:
https://www.youtube.com/watch?v=Jx_h1ymx-T8

Please note that there a various revisions of the boards and it's the COS line that might differ.

You will need to bring out the TX Audio / RX Audio / PTT / Ground & COS Lines to a DB 25 plug for the interface board:
















For the Short PCB board:


Bring out the wires from the radio to the DB25. This will allow you to use the URI or ARA-1 
interface:


3) Installing the Software:

The image file must be downloaded and written to a microSD card. This can be done on a Windows or Linux PC. If you are using Windows and win32diskimager the procedure is to first unzip the downloaded file. You should then have the image (.img) file in your directory. Then insert the card in your reader, start the win32diskimager program, select the file you downloaded and then select write.
Download the latest image from hamvoip.org
Follow the instructions on the website, it's pretty easy.

Once you have the software installed on the SD card, then there is a two stage setup process. 

Make sure you do both stages.

4) Setting up the Allstar:

There is a three step process here:
Step 1:
A "First Time" script has been added that runs only on the first boot of the system. It asks you to change your password and host name then asks if you want an address assigned by dhcp (the default) or if you want to assign your own static IP. Also change your timezone.

Step 2:
The next step is to setup Allstar Asterick, please follow this guide: https://hamvoip.org/#configuring
Download the pdf and read:

Step 3:
Configure your Firewall: Use the guide please: https://hamvoip.org/#firewall

5) Setting up Supermon

Refer to the following document: https://hamvoip.org/howto/supermon_howto.pdf

6) Testing your node: 

To test your node you can now connect to AllStar Hub Test Node - 40894
Once connected you can say something  and the node will play it back, so you can hear what your audio sounds like.

7) Problem Solving:

My biggest problem was that the radio and pi were doing funny things like transmitting and resetting, and transmitting and resetting, etc.  Eventually I found out that it was a power problem on the raspberry pi. You see I got the new pi and not power supply, so I used my pi one's power supply. I saw this from the log files that the power was too low. I changed the power supply and everything has bee good ever since.
The second problem I had was that my node wasn't registering: Somehow I put something wrong when I setup the node on the second step, and I had to manually edit the /etc/asterick/iax.conf file: The following line was wrong, and it should look like this:

register => [YOUR NODE NUMBER]:[NODE PASSWORD]@register.allstarlink.org

Note: You can always watch the asterick cli promt to watch what is going on.


8) Setting up EchoLink to the Allstar Node:


This is how I configured Echolink on my Raspberry Pi Allstar server.

My node is based on the image from http://www.hamvoip.org

Additional information was obtained from echolink.conf – Setting up Echolink Connectivity

You will need to register on Echolink your callsign [CALLSIGN] for a node number AND register a link node number [CALLSIGN-L]

You will need to rename echolink.xxx to echolink.conf in etc/asterisk

You obviously need a valid echolink node number, call, and matching password that you put in echolink.conf


You need to setup port forwarding in your router for the two echolink ports to the IP address of you node 5198 and 5199 UDP.

You need to be aware that you can only run one echolink node per public IP.
So you can’t run echolink on a PC on your same network unless you use a proxy.
You could run it on a smartphone using cell provided internet for local testing.

Then restart Asterisk or reboot. [ON THE COMMAND LINE RUN 'astres.sh' or 'reboot']

If echolink is running properly you will have an echolink command in the Asterisk client and be able to see the database there.

 asterisk -rvvv

 CLI>echolink dbdump

 long list…..

 
Added to rpt.conf   in the node stanza
erxgain=-3 ;Echolink receive gain adjustment in +/- db-volts. Used to balance Echolink recieve audio on an app_rpt node.
etxgain=3 ;Echolink transmit gain adjustment in +/- db-volts. Used to balance Echolink transmit audio on an app_rpt node.
 
eannmode=2
;     0 = do not announce Echolink nodes at all
;     1 = Say only node number on EchoLink connects
;     2 = say phonetic call sign only on EchoLink connects
;     3 = say phonetic call sign and node number on EchoLink connects
 
etc/asterisk/echolink.conf    (Sample of my configuration)
[el0]
confmode=no
call=MY CALLSIGN -L       ; Change this! Registered Callsign  -L or -R
pwd=My Password            ; Change this! Registered Password
name=My Name                ; Change this to your real name!
qth=Location                      ; Change this to your actual QTH!
email=My Email address   ; Change this! Valid Email address
maxstns=20                       ; Maximum number of station that can connect to you
rtcptimeout=10
node=00000                      ; Change this! Echolink Node Number
recfile=/tmp/recorded.gsm
astnode=XXXXX               ; Change this to your active Allstar node number!
context=radio-secure
server1=oceania.echolink.org
server2=server2.echolink.org
server3=server3.echolink.org
naeast.echolink.org
nasouth.echolink.org
;servers.echolink.org
;backup.echolink.org
; Change The following setting to your parameters
;THIS IS FOR THE ECHOLINK STATUS PAGE
freq=145.400 ; Freq in MHz
tone=100.0 ; CTCSS Tone (0 for none)
lat=40.7012345
lon=-73.223457
power=9   ;0=0W, 1=1W, 2=4W,  3=9W, 4=16W, 5=25W, 6=36W,  7=49W,  8=64W,  9=81W  (Power in Watts)
height=3   ;0=10′ ,1=20′,2=40′,3=80′ ,4=160′ ,5=320′ ,6=640′ ,7=1280′,8=2560′,9=5120′ (AMSL in Feet)
gain=6      ;Gain in db (0-9)
dir=0         ;0=omni,(Direction)
;deny=
;permit=

9) Adding APRS to the Allstar Node:

This is how I enabled APRS to work with my Allstar node.
You’ll need to create a gps.conf file in /etc/asterisk/rpt.conf
Example of my file below.  Change the items in BOLD to your information
You will also need to comment out a line in /etc/asterisk/modules.conf
;noload=app_gps.so
; Configuration for app_gps
;
[general]
call = YOUR CALL-8   ; callsign (including SSID) for APRS purposes
password = XXXXX ; Password for APRS-IS server for above callsign
comment = AllStar Node XXXX ; Text to be displayed associated with this station
server = rotate.aprs2.net  ; APRS-IS server to report information to
port = 14580 ; port on server to send data
interval = 600 ; Beacon interval in seconds
icon = n  ; A CAR (default)   Icon yo be displayed
;comport = /dev/ttyS0  ; Serial port for GPS receiver (specify this only if using GPS receiver)
;baudrate = 4800  ; Baud rate for GPS receiver (specify this only if using GPS receiver)
;debug = y ; set this for debug output
freq=449.675  ; Display Frequency of station
tone=110.9    ; CTCSS tone of station (0.0 for none)
lat=40.705879   ; Fixed (default) latitude in decimal degrees
lon=-73.295885 ; Fixed (default) longitude in decimal degrees
elev=10.5    ; Elevation of Antenna in Meters (*NOT* HAAT)
power=4       ; Power level (see below)
height=1      ; Antenna Height in HAAT (see below)
gain=3        ; Antenna Gain (see below)
dir=0         ; Antenna Direction (see below)
 

10) Nice things to play with:

There are some very useful documents on this link: https://hamvoip.org/#howtos

11) Changing the time announcements to 12 or 24 hour format:

There is both a 12 and 24 hour time announcement. *81 is 12h and *82 is
24h. To change the hourly time to 24 hour change in cron - crontab -e
- the saytime.pl to say24time.pl.

12) Stopping the time announcements

The time is a cron job - at linux prompt - crontab -l it will look something like this.... 
00 0-23 * * * (source /usr/local/etc/allstar.env ; /usr/bin/nice -19 /usr/bin/perl 
/usr/local/sbin/saytime.pl > /dev/null) 

 Do crontab -e to edit the file and put a # (comment) before the above line. 

Save it and you won't have hourly time. 
You can always go back and remove it to restore. CW ID is in rpt.conf. 
Putting a ; (comment) before a line disables it. 
I think you are doing that below in your example. 
Whenever you change anything in the files you need to reload the file or 
restart asterisk. Best to restart - astres.sh
 

12) Adding a Parrot

 

Reference for my documentation: https://w2ymm.home.blog/allstar-howto/#BM11

 



Featured Posts

Connecting my IC-9100 to the PC for WSJT-X

I've been wanting to write this down for a long time, but just kept the bits of info on my computer for some reason, so here it is: Plea...

Popular Posts