Since last update and now w/Beta Echolink callsign error

Setup Information

********** AllStarLink [ASL] Version Info **********

OS : Debian GNU/Linux 12 (bookworm)
OS Kernel : 6.12.87+rpt-rpi-2712

Asterisk : 22.9.0+asl3-3.9.1-1.deb12
ASL [app_rpt] : 3.9.1

Installed ASL packages :

Package Version
============================== ==============================
allmon3 1.8.1-1.deb12
asl3-asterisk 2:22.9.0+asl3-3.9.1-1.deb12
asl3-asterisk-config 2:22.9.0+asl3-3.9.1-1.deb12
asl3-asterisk-modules 2:22.9.0+asl3-3.9.1-1.deb12
asl3-menu 1.18-1.deb12
asl3-update-nodelist 2.0.0-1.deb12
asl-apt-repos 2.0-1.deb12
cockpit 287.1-0+deb12u3
cockpit-bridge 287.1-0+deb12u3
cockpit-networkmanager 287.1-0+deb12u3
cockpit-packagekit 287.1-0+deb12u3
cockpit-storaged 287.1-0+deb12u3
cockpit-system 287.1-0+deb12u3
cockpit-ws 287.1-0+deb12u3
dahdi 1:3.1.0-2
dahdi-linux 1:3.4.0-11.asl.deb12

Inquiry

Echolink is not loading chan_echolink.so.
*
Connected to Asterisk 22.9.0+asl3-3.9.1-1.deb12 currently running on Allstar (pid = 417677)
Allstar
CLI> module load chan_echolink.so
Unable to load module chan_echolink.so
Command 'module load chan_echolink.so' failed.
[2026-05-20 10:14:25.755] ERROR[418952]: loader.c:292 module_load_error: Error loading module 'chan_echolink.so': /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_echolink.so: cannot open shared object file: No such file or directory
Allstar*CLI>

echolink.conf

[general]
maxstns=20
rtcptimeout=10
recfile=/tmp/echolink_recorded.gsm
ipaddr=0.0.0.0
port=5198

server1=nasouth.echolink.org
server2=naeast.echolink.org
server3=servers.echolink.org
server4=backup.echolink.org

[285486]
callsign=KC2NJV-L
password=xxxxx
node=285486
name=Wayne
qth=Bellmore, NY
astnode=62499                                          ; Change this!
lat=40.656418                                         ; Latitude in decimal degrees
lon=-73.522172
confmode=0

Echolink says I'm golden, not blocked.

Any ideas?

Kinda sounds like your apt upgrade had issues. Can you [double]-check the content of the asterisk modules directory :

ls -l /usr/lib/aarch64-linux-gnu/asterisk/modules/chan*.so

root@Allstar:/home/wbs# ls -l /usr/lib/aarch64-linux-gnu/asterisk/modules/chan*.so
-rw-r--r-- 1 root root 67968 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_audiosocket.so
-rw-r--r-- 1 root root 68104 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_bridge_media.so
-rw-r--r-- 1 root root 70104 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_console.so
-rw-r--r-- 1 root root 670872 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_dahdi.so
-rw-r--r-- 1 root root 401544 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_iax2.so
-rw-r--r-- 1 root root 134560 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_mobile.so
-rw-r--r-- 1 root root 68456 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_motif.so
-rw-r--r-- 1 root root 1394136 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_ooh323.so
-rw-r--r-- 1 root root 202160 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_pjsip.so
-rw-r--r-- 1 root root 68416 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_rtp.so
-rw-r--r-- 1 root root 141680 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_simpleusb.so
-rw-r--r-- 1 root root 68672 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_tlb.so
-rw-r--r-- 1 root root 200664 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_unistim.so
-rw-r--r-- 1 root root 212728 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_usbradio.so
-rw-r--r-- 1 root root 68272 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_usrp.so
-rw-r--r-- 1 root root 200736 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_voter.so
-rw-r--r-- 1 root root 133648 May 18 18:42 /usr/lib/aarch64-linux-gnu/asterisk/modules/chan_websocket.so

Well, looking at the package contents I see :

$ dpkg-deb -c asl3-asterisk-modules_22.9.0+asl3-3.9.1-1.deb12_arm64.deb | grep echolink
-rw-r--r-- root/root    134784 2026-05-18 22:42 ./usr/lib/aarch64-linux-gnu/asterisk/modules/chan_echolink.so

Can you try re-installing the package (sudo apt install --reinstall asl3-asterisk-modules)

root@Allstar:/home/wbs# sudo apt install --reinstall asl3-asterisk-modules
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 3,446 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 https://repo.allstarlink.org/public` bookworm/devel arm64 asl3-asterisk-modules arm64 2:22.9.0+asl3-3.9.1-1.deb12 [3,446 kB] Fetched 3,446 kB in 0s (9,926 kB/s) (Reading database ... 156595 files and directories currently installed.) Preparing to unpack .../asl3-asterisk-modules_2%3a22.9.0+asl3-3.9.1-1.deb12_arm64.deb ... Unpacking asl3-asterisk-modules (2:22.9.0+asl3-3.9.1-1.deb12) over (2:22.9.0+asl3-3.9.1-1.deb12) ... Setting up asl3-asterisk-modules (2:22.9.0+asl3-3.9.1-1.deb12) ... root@Allstar:/home/wbs#`

Restarted asterisk
root@Allstar:/home/wbs# asterisk -r
Asterisk 22.9.0+asl3-3.9.1-1.deb12, Copyright (C) 1999 - 2025, Sangoma Technologies

Connected to Asterisk 22.9.0+asl3-3.9.1-1.deb12 currently running on Allstar (pid = 13759)
AllstarCLI> module load chan_echolink.so
Unable to load module chan_echolink.so
Command 'module load chan_echolink.so' failed.
[2026-05-20 16:07:25.707] NOTICE[14175]: loader.c:1316 auto_unload_resource: Unloading module 'chan_echolink.so' that previously declined to load
[2026-05-20 16:07:25.708] ERROR[14175]: chan_echolink.c:4366 store_config: Invalid Echolink callsign.
Allstar
CLI>

I think I see what's going on. In your echolink.conf file you have [general] and [285486] sections and that would make sense if this file followed the conventions used in other .conf files. That doesn't work here. The channel driver is looking for one or more sections with one section mapping to one instance. In addition, each instance needs to have all of the needed variables/values. In your case, the [general] section/instance does not have the "callsign =" variable.

Option #1 : follow the sample .conf that uses a single [el0] instance

[el0]
maxstns=20
rtcptimeout=10
recfile=/tmp/echolink_recorded.gsm
ipaddr=0.0.0.0
port=5198

server1=nasouth.echolink.org
server2=naeast.echolink.org
server3=servers.echolink.org
server4=backup.echolink.org

callsign=KC2NJV-L
password=xxxxx
node=285486
name=Wayne
qth=Bellmore, NY
astnode=62499                                          ; Change this!
lat=40.656418                                         ; Latitude in decimal degrees
lon=-73.522172
confmode=0

Option #2 : use templates

[el-main](!)
maxstns=20
rtcptimeout=10
recfile=/tmp/echolink_recorded.gsm
ipaddr=0.0.0.0
port=5198

server1=nasouth.echolink.org
server2=naeast.echolink.org
server3=servers.echolink.org
server4=backup.echolink.org

[285486](el-main)
callsign=KC2NJV-L
password=xxxxx
node=285486
name=Wayne
qth=Bellmore, NY
astnode=62499                                          ; Change this!
lat=40.656418                                         ; Latitude in decimal degrees
lon=-73.522172
confmode=0

I tried both examples, and they both said "Invalid Echolink callsign".

It would also help to use the expected variable names. For reference, see :

and, jumping out I see that you need to (at least) be using :

call=KC2NJV-L
pwd=xxxxx

I did correct the password :slight_smile:

Did changing callsign=KC2NJV-L to call=KC2NJV-L and password=xxxxx to pwd=xxxxx work?

Sorry to say, no.

root@Allstar:/etc/asterisk# cat echolink.conf
[el0]
call = KC2NJC-L                                         ; Change this!
pwd = xxx                                                ; Change this!
name = Wayne                                    ; Change this!
qth = Bellmore, NY                                              ; Change this!
email = KC2NJV@sbanetweb.com                                            ; Change this!
node = 285486                       ; Change this!
; Data for EchoLink Status Page
lat = 40.656418                                                 ; Latitude in decimal degrees
lon = -73.522172                                                        ; Longitude in decimal degrees
;freq = 0.0                          ; not mandatory Frequency in MHz
;tone = 0.0                          ; not mandatory CTCSS Tone (0 for none)
;power = 0                                                      ; 0=0W, 1=1W, 2=4W, 3=9W, 4=16W, 5=25W, 6=36W, 7=49W, 8=64W, 9=81W (Power in Watts)
;height = 0                                                     ; 0=10 1=20 2=40 3=80 4=160 5=320 6=640 7=1280 8=2560 9=5120 (AMSL in Feet)
;gain = 0                                                       ; Gain in db (0-9)
;dir = 0                                                                ; 0=omni 1=45deg 2=90deg 3=135deg 4=180deg 5=225deg 6=270deg 7=315deg 8=360deg (Direction)

; Message to show on the echolink connect page. Use \n for new lines.
; message = This is the first line\nThis is another line\nThis is another line

maxstns = 20                                            ; Max Stations

rtcptimeout = 10                                        ; Max number of missed heartbeats from EL
recfile = /tmp/echolink_recorded.gsm    ;
astnode = 1999                                          ; Change this!
context = radio-secure                          ; Default in code is radio-secure

; Max 4 servers
server1 = nasouth.echolink.org
server2 = naeast.echolink.org
server3 = servers.echolink.org
server4 = backup.echolink.org

; To deny w6xxx you would add the statement: deny = w6xxx
; To prohibit computer-based connections you would write: permit = -
; To allow access to only a select group of callsigns: permit = w6abc,w6def,...

; permit                                                        ; comma delimited list of callsign, type (-r)
; deny

; Remote text commands thru netcat:
; o.conip     (request a connect)
; o.dconip    (request a disconnect)
; o.rec                  (turn on/off recording)

; ipaddr
; port

#tryinclude "custom/echolink.conf"
root@Allstar:/etc/asterisk#

what's the ASL Node number you're intending to connect to something in the Echolink Network?
hint: Change this!

and also be absolutely certain the call and Echolink node number is registered in the Echolink Network at EchoLink Node Number Lookup

And you are still seeing the [...] ERROR[14175]: chan_echolink.c:4366 store_config: Invalid Echolink callsign. error?

or do you have a new error?

and you don't have any other [...] sections in the echolink.conf file ?

I did three things this morning to get it to work.

  1. chown asterisk:asterisk echolink.conf
  2. reboot the Pi
  3. fixed a typo in echolink.conf & changed the astnode

It is working.

Thank you gentleman!