HAMVOIP
Asterisk Allstar
on the Raspberry Pi 2/3/4

LATEST NEWS
SEARCH
   History       Hardware       Image Info       Download       Booting       Setup   
Configure Backup Firewall Notes Comments Forum
Credits Links Howto's Technotes Registering      Connection Map

Commercial Products

Historical Documents

May 21, 2022

Firmware image updated to version 1.7-01. This new firmware image has all packages updated and should now boot all supported Raspberry Pi hardware, including: Zero2W, 2B, 3B, 3B+, 3A+, CM3, CM4, Pi400 and 4B (rev 1.0 thru 1.5). Download the latest firmware HERE

Dec 25, 2021

Massive hamvoip-asterisk package update to rev 1.7.0. For full release notes, see this link

Raspberry Pi4B notice!

In June, 2020, it came to our attention that there is a problem with using two or more USB sound fobs on the Raspberry Pi 4B (RPi4B). The symptoms include erratic behaviour of each USB fob interface. This problem is NOT present when using RPi2B, RPi3B, RPi3A+ and RPi3B+ boards---only the RPi4B.

This issue appears to be a Linux Kernel bug and is not an identified problem with the actual HamVoIP code. We're looking for a resolution ASAP and will provide a firmware update once this problem is resolved.

For now, the RPi4B boards work great for single USB fob nodes, which is has always been the HamVoIP recommended configuration. The RPi4B also makes a GREAT AllStar hub, handling more than 150 simultaneous connections. If you must have multiple USB fobs on a single system, for now use the RPi3B+.

July 24, 2020

It has recently come to my attention there is some misunderstanding about who has developed the HamVoIP software release. I, David McGough, K4FXC, am the developer. Doug, WA3DSP, has been a very important contributer, including feedback, comments, mailing list support, scripting and website development.

All core software and HamVoIP distro developement has been my effort.

HamVoIP has also SOLELY been my hosting expense, with a dozen servers scattered around the world.

Thanks for your support!

Sincerely,

73, David, K4FXC

July 7, 2020

A website update is in progress. Some links may be temporarily missing or broken.

December 7, 2019

2019 has been an incredible year of growth and improvements for the HamVoIP software distribution, with a remarkable increase in the number of international users. This year has seen many major software updates, primarily focused on improving the stability of asterisk and related software. We've had success! HamVoip now has the best software reliability ever!

2019 has also been the year of the Raspberry Pi 4B, which we fully support. The RPi4B release changed our direction somewhat, including eliminating the need for a Rock64 software port; the RPi4B having even more performance at the same price and realistically leaving the stand-alone PC platform all but obsolete. Many users are migrating to and looking for cloud-hosted solutions. To help meet this need, the HamVoIP Pi Farm is being introduced, using RPi4B hardware.

Along with the increase in numbers of users, we've also found unexpected infrastructure problems that needed solutions. Some of these issues were fixed by adding more global service availability. So, in addition to the six US-based hosting locations, HamVoIP has recently added new hosting servers in Singapore and Germany. More will be added as we identify regional problems. HamVoIP is truly becoming global and we are dedicated to provide the best service possible throughout the world!

Many international and even an increasing number of domestic users are having DNS problems due to ISP filtering. We've spent months studying these issues and considering long term solutions. Recently, we found a solution, based on the ideas behind DNSCrypt. The updated software is nearing the point of full release, with announcements forthcoming.

By early 2020, we're expecting to have a full roll-out of updated registration services and other core systems for users. Once these updates are complete, the development focus will again be on adding features to the core app_rpt software. There is a LONG wish and TODO list!

In 2019, our out of pocket expenses for our servers and development are continuing to increase, at more than $500 a month or $6000 a year. In 2018 we asked for donations to help with this cost. Many donors stepped forward, and this was a GREAT help!

We're again asking for your donations to help with our infrastructure costs. We GREATLY appreciate your continued support!

Please Help us to provide you with the best possible service
Click on the Donate icon to take you directly to Paypal

HAMVOIP is not a 501c3 organization and due to the new tax laws in most filing cases your donation would not be deductible even if we were a non-profit.

Thank you for your past and continued support of HAMVOIP. We look forward to providing you the best service possible in the coming year. Have a great holiday season and a very Happy New Year!

The HAMVOIP team

August 22, 2019

Added support for RPi 4B. Download code now support Pi 2B,3B,3B+,3A+,and 4. Correction in smlogger, lsnodes, and supermon to support NNX 6 digit node numbers.

February 17, 2019

Corrected some minor bugs in the February 11 release. Download and update versions available.

February 11, 2019

RPi2-3_V1.5rc50_Allstar firmware release updates the kernel to 4.14.97-1-arch. This now supports the Raspberry Pi 3A+. You must reboot after this update. The download versions at this site have also been updated to this version.

December 20, 2018

Many exciting things have happened in 2018 in the HAMVOIP community. We had over 100 online updates adding many features, bug fixes, and general improvements to the code. There have been over 22,000 downloads of the image just this year. We added IRLP, greatly enhanced Supermon, added DNS node lookup which greatly enhances the efficiency and timeliness of node lookups and before the end of the year we will have all updated users on the HAMVOIP registration server with the added advantage of private node lookups. Our registration server is built from the ground up to work efficiently and will be able to handle the expanding loads as Allstar users grow. We now have server presence in Wilmington NC, Dallas TX, Los Angeles CA, Denver CO, Chicago IL, and Secaucus, NJ.

Again in 2019 we plan many improvements and updates to the code including a brand new channel driver significantly improving the radio interface capabilities, support of the PC platform and the Rock64. We will be introducing a "Pi farm" located at on of our very high bandwidth data centers allowing users to rent space on a Pi and manage it remotely. We will be introducing some really significant changes to the code this year with a complete rewrite and overhaul scheduled for release. We also have many smaller items on our list including the continual updating of the code base and a few nagging problems are on the list of things to do such as going to non-blocking streaming when using archive audio and Broadcastify thus eliminating the annoying hangs when these services stop responding. Also fixing the Allstar and Echolink code so audio hangs to not occur during connections and fixing the experimental IRLP nodes which never did work correctly.

Along with all this we are encountering out of pockets expenses for our servers and development which are amounting to about $500 a month or $6000 a year. I know many of you have asked about donations in the past and we decided until we became a firmly established entity we would not accept them. The time has now come that we really need some community support to meet our goals so we are putting a paypal donation icon (located below) to accept donations. We plan to limit donations to the amount required in any given year and we will inform you of the current donation totals to date from time to time. You can use the donation icon to take you directly to the paypal site or if you prefer you can go to the paypal site on your own and use the address hvdonate@hamvoip.org

HAMVOIP is not a 501c3 organization and due to the new tax laws in most filing cases your donation would not be deductible even if we were a non-profit.

Thank you for your past and continued support of HAMVOIP. We look forward to providing you the best service possible in the coming year. Have a great holiday and a very Happy New Year!

August 15, 2018

Many things have been happening at HAMVOIP since the last update but first a little history. Jim Dixon who many consider the father of Allstar passed away over a year and a half ago. Since his death a void happened in the community and the "Official Allstar" group was taken over by some who really didn't have the understanding or knowledge of just how to do that. Also in the last few months they let one of those individuals take over the entire server architecture of Allstar in a coup fashion, losing control over those services. In general we feel they have lost the ability to correctly manage Allstar.

We (HAMVOIP) realized this could be an issue shortly after Jim's death and an even more critical issue in the last few months. On the weekend of August 11/12, 2018 this Allstar individual moved all servers to his control. The servers had not been working up to par for the last year but this person had the idea he knew what he was doing and could make it better. The bottom line is it made it worse in fact so bad up to 700 nodes could not register. We knew in advance what they were planning on doing and we strongly warned them against doing it but they did not listen.

As of August, 2018 HAMVOIP has better than 70% of the Allstar market and our share is growing daily. Because of this we feel dedicated to serve the Allstar community with the very best support and servers. Fortunately we started developing our own servers over six months ago. With this recent change we stepped up production and now have servers operational in Los Angelos, CA, Dallas, TX, Secaucus, NJ, and Wilmington, NC and more to come. Our system is robust and very secure and will serve the Allstar community well into the future. Some of the features include:

Details on the features will be published in a how-to type article soon. Users should update their V1.5 Pi code regularly to take advantage of the changes. We intend to support older Pi and Beaglebone Black users in a limited way for a limited time but encourage you to update to the V1.5 Pi software on a Pi2B, Pi3B, Pi3B+ to take advantage of all the features. Information for using the HAMVOIP servers for non-HAMVOIP users will also be provided. Once the server rollout is complete we will be announcing a PC version of HAMVOIP Allstar and later this year a new enhanced channel driver.

News - April 2018

hamvoip version 1.5 is now the only Pi download on this site. In covers all versions of the Pi2 forward including the new Pi3B+. All previous Pi versions have been deprecated and users are encouraged to update to the 1.5 version. The 1.5 version updates online after installation and a user can update manually whenever an update is announced. We strive to fix any problems or bugs as they are known and constantly provide enhancements to the code base. Significant code changes in the last 6 months include -

See the complete revision list in the download section. Updates are always announced on the arm-allstar forum.

Updates coming in 2018

Former Announcements

January 2017

It is finally here. The hamvoip V1.6 release. This is truly a fork from the original Acid release but certainly not in a bad way. There are literally hundreds of changes to the code including bug fixes, improvements, and additions that will make it the best small board Allstar OS out there. The biggest improvement is the ability to do on-line updates. No more re-writing the SD card every time a change is made. Once installed future updates will be as easy as a single keystroke. This will include kernel and security updates. Please see the readme file for the V1.5 release for important information on the update.

We highly recommend the RPi3 for any future purchases. Future code will support both the RPi2 and RPi3. Note that the RPi2 does not have on-board wifi or bluetooth support and the RPi3 has better performance specs. The BeagleBone Black will be supported for security and bug fixes and may have a release for additional features but users should consider phasing out the BBB at some point in the future.

Given the low cost of these boards, ($35 or less for the RPi3) the extremely low power requirements, no moving parts, low heat, and many other advantages it makes little sense anymore to use a PC to run Allstar. The RPi3 can run a non-radio hub or a dual radio node easily. Think of it, you could save enough in a year retiring a power guzzling PC to buy several RPi2's and have some leftover cash.

These are the current releases in the download section:

BBB V1.2.2 - simpleusb Channel Driver update to eliminate echo on repeaters, added pre-emphasis and audio delay squelch tail elimination, fixed phone and web transceiver codec problem. The BBB is NO LONGER supported past this release! Please upgrade to the Raspberry Pi for all the great new features.

RPi2-3-4 V1.6 - This is the latest RPi2/3/4 release with online updates and should be used for any new installations or for an update of an exisiting installation.

See the Download link below for more detailed information on the releases.

We hope you will like the latest hamvoip V1.6 code and thank you for your patience. This is a volunteer effort and sometimes things get delayed. Please join the arm-allstar forum for the latest news and information and discussion about the BBB and RPi2/3 releases.

You can also do an archive search of the arm-allstar forum at hamvoip-search.php

Why Allstar?

We are often asked why Allstar with all of the new RF digital repeaters and their VOIP connection schemes out there. The best answer is no cost or fees, quality audio, and freedom to do what you want. Dstar, Fusion, DMR, etc are all at least partially if not completely proprietary systems. In most cases the VOIP connection system that makes them somewhat like Allstar is proprietary. Code plugs, Rooms, etc. all make for a confusing and hard to maintain system. It also makes a system which is managed much like IRLP. The individual users has little control other than to connect somewhere. Then there is the lousy audio that goes along with the current Amateur Radio digital RF schemes.

Allstar connects RF systems with full duplex quality audio. It also gives the user a choice in how and where they connect. Private or public group or individual connections can be setup quite easily. If you are in a restricted living environment like a retirement home or HOA that does not allow antennas Allstar gives you the radio feel without an obtrusive antenna or big expense. You could setup a simplex node in your apartment or dwelling and have local coverage with in a few blocks to several miles between your handheld and you own personal node. Couple that with the ability to setup connections to all your buddies that also have nodes and you have your own talk group with everyone using real radios to access. You also have the ability to access via computer, phone, Echolink, and many other methods.

The advent of the inexpensive small board computers and very easy scripted setup make getting on Allstar easier than ever. A savvy user who has the ability to make some modifications and build some simple circuity could get on Allstar for well under $75. A totally plug and play system minus the node radio would be no more than $150.

For repeater operators Allstar is a complete repeater controller that probably has more flexibility and capability than any repeater controller on the market. It is certainly cheaper. Because it runs in Linux, is completely free and the user has full flexibility to use scripts, timers, multiple ports, etc. to do just about anything they would want.

So if you like to call your own shots come join the friendly world of Allstar. You will be surprised how easy it is to get started and a world of adventure awaits you.

History

Ever since the Raspberry Pi was introduced over two years ago it has been the goal of many to make Asterisk Allstar work on that platform. Over the years there have been several attempts which fell short. In January, 2014 I decided to give it another try. I thought I had it but unfortunately it did not provide the kind of performance you would expect for Allstar. It worked fairly well audio wise in USB 1.1 mode but suffers from extreme audio delays that would be unacceptable in a production environment. I was using the stock Raspbien (Debian on the RPi) kernel with DAHDI and the latest Asterisk Allstar SVN.

Thinking that it might be a Debian issue I went on to compile the Allstar package in both Debian Wheezy and in Ubuntu Saucy on a PC. Both versions worked fine but Saucy required a kernel recompile to include the OSS sound code. This, I thought, proved that Debian should work on the ARM processors assuming the IO and CPU could handle it.

So I moved to the BeagleBone Black. The Black is a competitor to the RPi with a faster processor, a better IO structure, and a version 7 arm processor verses Version 6 in the RPi. It is the same physical size as the RPi and costs about $10 more.

My first attempt used Debian and the results were better than on the RPi but the DAC (the side that converts what you hear on your end) audio was not good. I finally decided to try Archlinux. Archlinux is a leading edge barebones linux that comes with very little add-on stuff. No graphics or packages that would not ordinarily be needed are part of the virgin installation. While it is not a "hold your hand" Linux it was surprisingly easy to compile and get Allstar running. Maybe it was all the experience I had working at this for months before that made it seem easier but in any event I was tremendously surprised that it worked. I had almost given up on ARM Allstar working and I could hardly believe my ears that it was working so well. It is hard to explain why as the basic kernel is the same. It has to be in the ARM interface or in the less bloated Archlinux OS somewhere. CPU utilization was at least half what it had been on the Debian releases.

During the initial tests of the BBB I hooked up with Dave, K4FXC and we worked together to produce the first release in June 2014. Shortly thereafter Chris, W0AMN also joined the team. The first release was a success although still early in the Linux kernel development for the ARM processor. This lead to some minor USB issues but overall the project was widely accepted.

Throughout the summer of 2014 we worked on improvements and with a later kernel release and many scripts to simplify installation a second release came in October 2014. We are very proud of this release and its impact on Asterisk Allstar in the amateur radio community.

In early 2015 the release of several new ARM processor boards sparked our interest. We did research and testing on the Odroid C1 and the Raspberry Pi 2. Both boards have four core processors and much improved performance over the older Raspberry Pi and Beagle Bone boards. Although the Odroid C1 is technically a better board than the RPi2 we decided that the RPi2 was a better choice from an availability and support standpoint.

Registering and Acquiring a Node Number

The first thing you should do is visit the allstarlink.org website and register. 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.

Hardware

Note - the Beaglebone Black (BBB) information below is left for archival purposes. Any new purchases should use the Raspberry Pi 3 and the V1.5 image.

The BBB arrives in a box with a microUSB to USB cable. This allows you to power it from your PC and also in some cases use the USB as a console connection. Archlinux is not setup to do that but you can initially power your BBB from the microUSB if you desire. The BBB has only one standard USB port which connects directly to a DMK URI or modified USB sound FOB for interface to your radio. Eventually you will also need a power supply preferably supplying 1-2A @ 5V inserted at the barrel power connector on the BBB board. I used a USB charger type supply and I modified a USB cable cutting off one end and wiring it to a compatible male barrel connector. Red (+) to the center conductor and Black (-)- to the shell. Only use ONE power source - the microUSB or the barrel connector - NOT both!

The RPi wiki has an extensive list of hubs tested on the RPi. I suspect the same would hold true for the BBB. It would be good to reference it before buying a hub. A powered hub would not always be necessary but it would not hurt to have one.

RPi list of acceptable and not acceptable powered USB hubs

I have done limited testing of two ports using DMK URI's and the Belkin USB hub. It seems to work fairly well. I ran it for several days on two busy nodes. At times both were operational and I noticed no problems. Further testing is necessary. I think two is the limit though.

Acquiring a RPi 3

Note that the RPi2/3 uses a micro USB connector for 5V power. You will need a 5V 2A or better wall wart with a micro USB connector on the cable end or equivalent. This does not come with the board. It is also a good idea to also order a case for your board.

Image File and SD cards

The image file is sized to go on a 4GB microSD card as a minimum. The compressed image (zip file) is just over 500M. It is strongly suggested to use an 8 or 16G card. I suggest a Sandisk Ultra or Ultra+ class 10 8G or 16G card. The larger the usable area on the card the more space there is for wear levelling. This will reduce the number of writes to any one location on the card and greatly extend its life. I have instituted as much write to RAM in this package as possible so there are very few writes to the SD card. After several years of experience with these cards we find them to be very reliable. However they can eventually fail so a backup is always very important. Backing up an SD card image once you have it configured the way you want it is as easy as reading the image into your computer using Linux 'dd' or Windows 'win32diskimager'. You MUST use an image copy method. You cannot just copy files to make an image backup of the SD card. Keep a second SD card burned with the image near your BBB or RPi2 and in the event of a failure it could be swapped in seconds. This is not something that would happen very often but it is always good to be prepared. Starting at BBB version 1.2.1 and RPi2 version 1.0 a complete image backup can be done on the fly to a USB stick, see the backup how-to for details.

We also do not recommend expanding the partition size to the full SD card size unless you have a real reason to do that. It does nothing for reliability and makes it difficult to do image backups as the entire card must be backed up and restored.

The image uses Archlinux. Archlinux uses systemd for loading modules, maintaining logs, and lots of other things. It is totally different than the initscrpt you have used in many other Linux distros. I just want you to be aware of this when you are looking for things that are not there like /etc/init.d! I am including some links that will help you with that but for the most part after you get your image configured it is plug and play. You do not have to be a Linux guru but a little knowledge of Linux and systemd would be helpful in maintaining your BBB or RPi2 Allstar system.

Downloading the Image

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.

win32diskimager as well as putty are included in the .exe download below or you can manually download
Download win32diskimager - http://sourceforge.net/projects/win32diskimager

Note that after installing win32diskimager and starting for the first time you may get an error about elevating permission levels or something like that. If you do, exit out and left click once to select the win32diskimager icon, then right click and select "run as administrator" It should then run properly.

See details on how to use win32diskimager here or at this site

One of the sites gives an example using the Raspberry Pi. The procedure would be the same for the BBB just substitute the BBB Allstar image. It takes anywhere from 5-15 minutes to write the card depending on the image size and your systems speed. Once the card is successfully written you can remove it from the PC reader/writer and install it in the BBB with the power disconnected. Note that this one image written to your SD card contains the complete Archlinux/Allstar package.

If you are using Linux to write the image, insert the card in your card reader/writer. Then do a 'df' to determine the device name. On my system it was /dev/sdb but yours may be different. It is important to identify the device properly. You do not want to write to your hard drive!! Once you have identified the device use 'dd' to write the image.

dd if=RPi-Z2W-2-3-4_V1.7-01_Allstar.img of=/dev/sdb   << Change the filename and device for your system

Remember dd is not going to ask if it is OK or check if you entered something wrong so be very careful to enter the proper output device!!!

Starting with the RPi2-3 V1.5 image distributions are in both a self extracting 'exe' file which runs in Windows and in xz archive format. Simply running the 'exe' file in Windows will produce the .img file which can then be written to your SD card using win32diskimager or equivalent. In Linux when using the xz file this can be done in one line with xzcat. Here is an example -

xzcat RPi-Z2W-2-3-4_V1.7-01_Allstar.img.xz | dd of=/dev/sdX bs=1M

Replace sdX with the device name of the SD card installed in the writer. You can determine this by doing a 'df' command in Linux. Caution - using the wrong device could overwrite an exisitng drive. If you prefer doing this in two steps use:

'unxz RPi-Z2W-2-3-4_V1.7-01_Allstar.img.xz'

first and then the command to write the SD card.

Starting with V1.5 images are in place upgradeable. Be sure to download the README file below for full information. It is also very important to to an update when setting up your Allstar system. This is the first thing asked when doing the initial setup.

All RPi images now run on Pi Zero2W, 2B, 3B, 3B+, 3A+ and 4B. The latest images are available here -

*** Important Notice ***

These are static images that are to be updated after download. It is desirable but not mandatory to have an Internet connection when setting up your node as this will allow you to update to the latest version in the first setup step. After setup frequent checks for updates using menu item 1 are strongly suggested. Update information will be announced on the arm-allstar email list.

These are what we call lite versions minus many of the superfluous drivers. In some rare occasions you may need a particular driver that is not provided. To download the entire driver package AFTER loading one of the below RPi images type at the Linux prompt - pacman -Sy linux-firmware-hamvoip-extra
There is NO need to download this package unless needed.

All RPi images support both the RPiZ2W, RPi2, RPi3 and RPi4.

Here are the checksums for the RPi and BBB zipped and unzipped images -

RPi-Z2W-2-3-4_V1.7-01_Allstar.img

RPi-Z2W-2-3-4_V1.7-01_Allstar.exe

RPi-Z2W-2-3-4_V1.7-01_Allstar.img.xz

BBB_Allstar_1.2.2.img.zip

BBB_Allstar_1.2.2.img

Make sure that you use the right image for your hardware. They are not interchangeable!

For info on the current versions see -


RPi2-3-4 Image Version Information

Booting the Image

Now that you have the microSD card with image inserted in your BBB or RPi2 apply power and it should boot to a login prompt. The next section will give options on how to initially login.

First communications with the BBB or RPi2/3/4

Starting with BBB version 1.2.1 and RPi2 version 1.0 the IP address is sent out the radio port as voice on initial start. If you have a radio properly connected this might work for you. Not all cases will work as initially the system may not be configured properly for your radio. If not you can use one of the other methods listed below.

Initially you have to communicate with the BBB or RPi2/3 to determine its local IP address. One way to do that is to use a terminal connected to the HDMI port and a keyboard connected to the USB port. However there are alternative methods listed below if you don't want to bother with a keyboard and monitor. If you do use the keyboard and monitor you do not need a mouse. There is no graphics mode, you login in standard Linux text mode with the keyboard. The RPi2 has a standard HDMI connector. The BBB has a micro HDMI connector so you would need to acquire a micro HDMI to standard HDMI cable or adapter. This does not come with the BBB but could be purchased locally at a Walmart, Best Buy, etc. or on the Internet. Most newer monitors now have HDMI inputs. If not there is an HDMI to DVI adapter available if your monitor has a DVI input. If you do not have an HDMI or DVI input on a computer monitor you can use any digital broadcast television receiver as they all have HDMI inputs. This connection will only be needed for initial setup.

I have a wireless keyboard and it works fine with its wireless FOB plugged into the BBB or RPi2/3 USB port directly or into a hub along with the DMK URI on the BBB.

A script is included in the image that uses the blue LED furthest from the Ethernet connector on the BBB and the green LED on the RPi2 to send the assigned local Ethernet IP address in Morse code at boot-up. At boot it starts the heartbeat blink and then sends a Morse "HI" twice followed by the IP address. The address is in four groups. The groups separated by periods. So 192.168.0.132 would be sent as - HI HI 192 168 0 123 This sequence is repeated three times. If you miss it you can always reboot. It comes up approximately 15-20 seconds after power is applied. Sometimes it is easier to read the LED if you mask the others which might confuse you. If you don't want to use a terminal and you can't read morse code then you can read the initial IP address from your router.

An Ethernet connection can be established with the either board via ssh from Putty, WINscp, or any ssh terminal program. Note that the RPi3 has to initially be setup using a terminal or WIRED ethernet as the wireless is not setup initially. The image is setup to acquire an IP address via DHCP from your local network and the ssh port is set to 222 (changeable later in the setup). You will need to determine what address the BBB has acquired. If you have not determined the IP address from the methods described so far you can use your router. Login to your Internet router and look at the status for DHCP connections. Most routers have a start address for DHCP connections and if you cannot determine the correct address from the list you can always just try each address starting from the first dhcp IP address your router assigns. Only one will respond to port 222 and you should then first get a message warning about the authenticity of the connection. Answer yes to connect and you should get the login prompt. Here is what my Buffalo DD-WRT routers dhcp list looks like -

Active Clients
Hostname        IP Address        MAC Address     Conn.   Count  Ratio [4096]
*                  192.168.0.204   cc:6d:a0:b1:a3:26   1       0%
*                  192.168.0.120   b8:27:eb:1a:d3:bc   3       0%
BBB-Allstar     192.168.0.212   1c:ba:8c:a0:c3:5f   16      0%     ---------- This is what will appear for the BBB
*                  192.168.0.8      00:14:bf:43:91:1a   2       0%
*                  192.168.0.57    70:71:bc:4b:ae:f4   95      2%
*                  192.168.0.124   00:03:2d:05:fc:b0   83      2%
*                  192.168.0.2      00:19:d1:02:17:8f   5       0%
*                  192.168.0.132   1c:ba:8c:a0:c3:5f   59      0%
Chromecast    192.168.0.203   6c:ad:f8:14:bd:d5   3       0%

The hostname you are looking for is BBB-Allstar or ALARM for the RPi2/3. My dhcp starts at 191.168.0.200 and it shows that 192.168.0.212 was assigned to the BBB. So I would tell the terminal program to connect to that address at port 222. Your address will most likely be different.

The login username is root and the PW is root All operations are as the root user so be careful when you do things in the system you don't have the protection of being a common user but you do have the flexibility of being able to do anything. This is no different then the Acid release on a PC that you are probably already using.

Setting up your Password, Hostname, and IP address, timezone

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. Although not recommended you also have the option of aborting the script and doing this manually by following the manual directions below.

Starting in BBB version 1.2.1 and RPi2 version 1.0 you will be asked in the "first time" script if you want to configure your node. If this is your first time setup you would answer 'yes' to this question. The system will then reboot, you will need to login again, and then proceed with the rest of the node configuration. Once your node is configured if you are not in the Eastern US time zone and you have not previously set your timezone see time zone configuration to set your time zone. V1.5 and above users will find the timezone configuration setting in the ADMIN menu and DO NOT need to do this manually.

The firsttime setup script will not run again on subsequent boots unless you specifically run it. If you have a need to run it again type:

/usr/local/sbin/firsttime.sh

Starting in RPi2 version 1.0 the setup script also includes the setup of the simpleusb parameters. See the setup howto at hamvoip.org for more information on using the setup script.

If at any time you need to change you network parameters - ip address change, static to DHCP, DHCP to static, etc. simply run the netsetup.sh script. In version 1.5 and above these changes can and should be made from the ADMIN menu.

/usr/local/sbin/netsetup.sh

NOTE - Starting with version 1.5 for the RPi2/3/4 all configuration is done in the ADMIN menu. The ADMIN menu is active after logging in to your server.

Setting the time and timezone

This manual method is for archival purposes only. The latest version of RPi2/3 code include this in the setup and cna be changed in the ADMIN menu.

The image file has nttpd installed and running so your system should show the correct time assuming you are in the US eastern time zone. Setting the timezone in Archlinux with systemd is a breeze and it is also easy to check the current timezone status. Here is the configuration information.

Time zone

To check the current zone:

$ timedatectl status

My system gave the following output which is very informative -

[root@BBBdoug asterisk]# timedatectl status
      Local time: Thu 2014-05-01 22:55:57 EDT
  Universal time: Fri 2014-05-02 02:55:57 UTC
        RTC time: Fri 2014-05-02 02:56:00
       Time zone: America/New_York (EDT, -0400)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: yes
 Last DST change: DST began at
                  Sun 2014-03-09 01:59:59 EST
                  Sun 2014-03-09 03:00:00 EDT
 Next DST change: DST ends (the clock jumps one hour backwards) at
                  Sun 2014-11-02 01:59:59 EDT
                  Sun 2014-11-02 01:00:00 EST

To list available zones:

$ timedatectl list-timezones

To change your time zone:

# timedatectl set-timezone Zone/SubZone

Example:

# timedatectl set-timezone Canada/Eastern

This will create an /etc/localtime symlink that points to a zoneinfo file under /usr/share/zoneinfo/

In my system for US EST it looks like this -

[root@BBBdoug asterisk]# ls -als /etc/localtime
0 lrwxrwxrwx 1 root root 38 Apr 12 02:28 /etc/localtime -> ../usr/share/zoneinfo/America/New_York

Configuring Asterisk Allstar

Starting in version 1.2.1 and RPi2 V1.0 configuration scripts take you through the entire process of setting up your node in minutes. It is recommended that you use this automated method of configuration. This setup has been much improved in version 1.5 RPi2/3 with graphical windows and an ADMIN menu.

For step by step instructions on how to configure the BBB/RPi2/3 for the first time with your node information download this document:

https://www.hamvoip.org/config-setup.pdf

Backing up your BBB Image and files

Once you have the image the way you want it or at least reasonably complete you should make a backup. Remove the SD card insert it in your PC's card reader and save the image. Give it a unique name so you can find it like 'BBB_Allstar_27225.img' inserting YOUR node number. Every time you make any significant changes to the configuration or code you should make a backup. You can keep as many backups as you want to allow going back to prior versions. The backup howto below has more information on this.

For versions 1.2 or greater there is an in-place image backup script and many options for backing up in general. See the backup howto below for more details.

Firewall

A firewall has been added but NOT enabled by default. In most all cases where you have a router and the BBB or RPi2 is nat'ed behind it a firewall will not be required. If you do initiate the firewall it has the following default rules:

The firewall default when enabled is to allow ports 4560-4590 which can be used for iax if needed and ports for echolink. SIP, HTTP, and SSH other than port 222 are not allowed outside of the local network by default. Simply uncomment those rules in the firewall file if you want to allow Internet traffic to those ports. The local LAN is not limited by these rules and can access any port. The firewall definitions are in /etc/openvpn/firewall If you change the settings in this file or comment/uncomment a rule rerun the firewall file. To rerun type:

/etc/openvpn/firewall

To view the current firewall settings type:

iptables -L -v -n

By default the firewall is disabled. You can enable it by setting its parameter to 'enabled' in /usr/local/etc/allstar.env. In most cases if you are using a good gateway router to the Internet the firewall is redundant. You would forward ports in your router to your BBB as needed and only the ports that were needed. If you don't currently have any firewall protection ahead of your BBB system it is recommended that the firewall be enabled. This would be the case if you were DMZ'ing to the BBB or using it in a situation with unknown external firewall protection.

Additional Notes

The openvpn package is now installed for your convenience. Most will probably not use it but it can be a valuable asset in connecting your distant nodes securely. By default it is not enabled. You must setup the configuration files. There are example files in /etc/openvpn and further information on its use can be found at openvpn howto and documentation. See the howto's for information on enabling.

The hamvoip releases use dahdi which is the replacement for zaptel. There should be NO zaptel.conf file or any other zaptel related files brought over to the BBB system. The file chan_dahdi.conf should remain in the /etc/asterisk directory.

There are some additional sound files provided on the image to facilitate the 'The time is' message script running outside of app_rpt and also supply 24 hour time. Scripts are located in /usr/local/sbin. The saytime.pl script is called by a cron job every hour on the hour and sent to the local node on the BBB/RPi server. Delete or change the cron file to turn this off or change the time(s) that it plays. On version 1.5+ it also will say weather conditions and temperature. More information is available in the scripts howto.

There are also example scripts for connection and disconnection at specific times locate in the /etc/asterisk/local directory. Again these are just examples and must be tailored to use on your system. Scripts are generally called from a cron job at a specific time or times or fron a DTMF function. The scripts are not limited to connect and disconnect. They can execute any command you would do manually.

Note that USB reliability was greatly increased in the BBB version 1.2.1 code and all version of the RPI2/3 code resulting in very few USB problems. The following text is left for reference in case you might have a problem

USB Woes. If you have used the USB interface much you are most certainly aware that it sometimes can be the cause of all kinds of problems. The BBB is especially susceptible because unlike a PC it is not directly grounded. Sneak paths of especially AC current on the ground leads can totally confuse the USB interface. One example of how this actually happened was a wall wart type supply used to power the BBB had a high level - 45 volts of AC - floating on the ground and +5 output. Since this was equal on both polarities (common mode) it did not effect the performance of the BBB but when a device such as the DMK URI was connected this AC was grounded through the USB interface to the URI and then to the radio to ground inducing AC onto the USB power and data lines. This is just one example of how this can happen so beware if you have USB issues. Check your Power supply and grounds!!! The small switching wall-wart type supplies do not have a AC ground lug. I checked a Powergen supply here and sure enough it had a fairly high level of AC riding on the DC ground measured to the line AC ground. I have been using them on a number of boards without any noticeable problems but my thought is that these things are just plain trouble waiting to happen. A conventional transformer coupled three terminal regulator supply or higher quality switching supply might be a better idea. Another thing to be especially careful of is the ground on your radio. On TX a 50 watt radio could draw 10 amps or more. If the radio ground came loose it would try to seek a ground back through the URI and USB and the high current flow could destroy the URI and/or the BBB. The USB interface and the DMK URI in particular are also very susceptible to RF interference especially in the HF range. Ferrites on the USB and radio leads usually solves this problem. For really tough problems a USB isolator might be the answer. The ADUM4160 USB isolator is available from a number of sources and is in the $30 range.

Power woes. As mentioned in the previous paragraph power supply issues are often the cause of problems with the BBB, One area that is particularly weak on the BBB is the 5V power connector. I don't like barrel connectors as I often find them to be intermittent and a poor choice to run a computer. An intermittent power connector can cause reboots and all sorts of problems. Check your connector by wiggling it after applying power without the SD card in place and see if the power light blinks. I have one board that has a bad connector and reboots sporadically. For best reliability I would either replace or better yet hard wire the power to the connector. It is also probably acceptable to use the mini USB as the power source as long as you are not running more than the BBB and a USB sound FOB.

While technically it is possible to use a usb hub and an additional sound FOB for a second node it is not recommended. A far better choice would be to use a second BBB setup as another server. You would need to select a different iax upd port like, 4568, configure it at allstarlink.org in your sever setup, in your local iax.conf, and add an entry in your router port forwarding. In this case you would have two entries in your port forwarding for iax, one to the IP address and port 4569 of the first server and one to the IP address and port 4568 of the second server. To be able to connect between local servers you most likely would need to add the local addresses in each servers rpt.conf. See the multi-server howto for details on configuring multiple servers.

Good audio quality is a pet peeve of mine. In particular usbradio even on PC systems often suffers from audio distortion. I hear it all the time on the air. Often it is on transmit so the node owner has no knowledge of it happening unless someone says something. Please consider this when using your node. We are looking into ways to improve this but for now whether you are using a BBB or PC this distortion can and does happen. Consider using simpleusb especially with the BBB. Also the BBB image has "radio relax" turned off. The acid release has this turned on by default. When it is on voice signals can false the DTMF decoder and each time this happens there is a hole in the audio when it mutes thinking there is a real DTMF signal. You can see this in the client when it logs the false DTMF character. Leaving it off has no significant impact on real DTMF detection and eliminates the falsing.

The iLBC codec has been added to the BBB image. iLBC was developed by Global IP solutions and was included in Asterisk for many years until it was removed due to possible licensing issues. Google bought GIPS in 2011 and made the codec open source. It uses a 20ms frame rate and a fixed 15.2kbit/s bitrate in Allstar. The use of this is optional and would require another system with this codec installed for its use. It has very good quality at low data rates, about one third of the standard g726aal2 that is typically used. It is particularly useful in limited bandwidth situations and degrades much more gracefully than g726aal2 on poor circuits. Note however that the transcoding of iLBC to and from other formats takes considerably more CPU. It does work well on the BBB with several nodes connected but you need to be aware of possible issues when larger numbers of nodes are connected of differing formats. For more information on iLBC see http://en.wikipedia.org/wiki/Internet_Low_Bitrate_Codec

iLBC is enabled by default as a codec option in iax.conf If you want to disable it you can comment the:

allow ilbc

line in the general stanza (for outgoing connections) and radio stanza (for incoming connections) of iax.conf You can also change the preference order of the codecs by changing its position relative to the other allow entries.

You can check the format of connected channels in the Asterisk client with the command:

iax2 show channels

One of the biggest complaints Allstar users have besides the lack of coherent documentation is the fact that if you are connected to a large number of nodes you get constant and annoying connect and disconnect messages. There is an easy way around this with a couple of configuration lines in rpt.conf. To disable the message except your own put the following lines in rpt.conf

holdofftelem=1
telemdefault=2

These lines already exist in the default rpt.conf in all hamvoip.org images. If you copy over another rpt.conf you will have to recreate them.

The linux locate which is handy to locate files on the system is installed but the daily update is turned off. This is to avoid unnecessary writes to the SD card. If you have a need to find a file that was added after the last update run updatedb first.

If you plan on doing any serious code work on the BBB you should consider buying a serial adapter cable. This plugs onto J1 on the BBB board and a USB port on the host computer. It works very well with putty in serial mode in Windows7 but could be used with any computer that offers a serial connection. Windows should load the FTDI driver automatically. Then use device manager to determine or change the comm port settings. The baud rate is 115200. You will see all boot messages and get a login prompt. The adapter is available from Adafruit - Standard FTDI Cable

For those of you who are tinkerers and like to write and modify code be sure the package(s) you load or write is utilizing RAM rather than the SD card for writing data on the BBB. It is OK to write occasional information that must be retained to the SD card but something that does continuous updates that can be volatile (not survive a boot) should be written to one of the tmpfs areas. Both /tmp and /var/log/ are tmpfs on this BBB image and anything written to those directories or any directory below use RAM.

We love contributions! Not money but rather things you have done to improve your BBB and RPi2/3 that we may either include in the distribution or as links to optional add-ons. Suggestions are also always welcome. This is a community effort and input is always welcome.

Version information can be found in the file /etc/bbb_allstar_version or /etc/allstar_verion on the RPI2/3

Final Comments

Finally let me say this is a work in progress and I will be continually updating both the image and these notes over time. I would be glad to answer any questions or try to resolve any problems you may have but please understand that at this point you need to have or gain a little knowledge about using Linux and at least be able to follow the above directions in order to get this running. I would also like to hear about your experience with Allstar and the BBB and this code. If you have ideas on how the code can be improved or you have expertise and would like to be a part of the project please contact me at my QRZ email address (K4FXC)

Please also forward any comments you may have on this web page. I am interested in how well the instructions worked for you and any thoughts you may have on how they can be improved.

I hope you have as much fun using the BBB or RPi with Allstar as I have had implementing it. We have started a mailing list for the ARM processor Allstar and specifically, at least for now, the BBB. To subscribe to the arm-allstar mail list visit this link:

ARM-ALLSTAR Email List Subscription:

http://lists.hamvoip.org/cgi-bin/mailman/listinfo/arm-allstar

Try to keep discussion specific to the BBB/Allstar project on the arm-allstar list and use this list rather than apt_rpt for BBB and RPi2 related topics.

Email Forum archive search - hamvoip-search.php

THANKS for your support!

David, K4FXC

Credits

Links

How To Notes

Setup and Software

Hardware

Radio Interfacing and Modifications

Scripts and Other Information

Howto Videos

Here are some links to howto videos by 16 year old Jon Williams, K5DVT. He is a student at Huntsville High School in Huntsville, Arkansas. He has been a ham for 5 years and setup his first repeater 3 years ago. He joined the Allstar community in 2017 using the hamvoip software. He will be continuing to do informative videos for our group.

Commercial Allstar Products

If you would like your commercial products to be listed here please send info to KB4FXC at gmail.com

User Tech Notes and interesting sites

Historical Documents -- Public Domain Statements

© 2020-2022 - K4FXC
© 2014-2018 - WA3DSP