Week 8 – Setting TX & RX Offset

After setting up the MMDVM duplex hotspot board, it is necessary to adjust the transmit and receive offsets in the MMDVMHost expert editor section. Basically this corrects the transmit (TX) and receive (RX) frequency of the board, if they’re not on frequency.

I went to a fellow amateur radio operator’s house recently to test my board with his HP 8920A Service Monitor. According to this ham, the service monitor is about 30 years old and cost around $30,000 new. Every 2 years he has it calibrated to NIST standards and it is accurate to +/- 1 Hertz.

The back of the board recommends a TX and RX offset of 500 and then tells you to adjust until the BER or Bit Error Rate is less than 5%. With my friend’s help, I tested the output frequency of the repeater/hotspot board without setting any TX offset and the transmit frequency (FRQ) was about 442.999300Mhz. So I adjusted the TX offset to 500 and retested the transmit frequency. It appears to be getting closer, showing a frequency of about 442.999700Mhz. So I bumped the TX offset up to 800 and that brought the TX frequency up to approximately. 443.000000Mhz, which is right on frequency.

Setting the RX offset is a bit more difficult because there isn’t really a way to test that within Pi-Star. So, I transmitted to the repeater board with my DSTAR handheld and found that I had a bit error rate of 0.1% which really doesn’t need to be fixed.

0.1% Bit Error Rate

I set the RX offset equal to the TX offset (800) and that brought the bit error rate down to 0.0%, which is perfect.

0.0% Bit Error Rate

I also worked on installing the Nextion Display Driver, however I’m encountering problems with it. The screen layout disconnects from the MMDVMHost software every time the screen changes. I need to work on this a little bit more to solve that problem. I’m thinking the problem is the layout I used. I was testing with a layout from another ham that displays a lot of information and I think the screen has trouble keeping up with the amount of data. I will detail this process in my next post.

Week 7 – Configure DSTAR Mode

First we’ll go turn on the DSTAR digital mode and configure it.

  1. Start by going to your PiStar dashboard in your web browser.
  2. After logging into your dashboard, click on the “Configure” tab.
  3. Next we’ll turn on DSTAR in the MMDVMHost Configuration.
  4. Notice that I also set the RF Hangtime and Net Hangtime to 5 seconds. The hangtime is the amount of time the MMDVM will stay in that mode before allowing other digital mode signals a chance to reach the repeater. RF Hangtime is the amount of time the MMDVM waits after the end of an incoming RF (Radio Frequency) signal. Net Hangtime is the amount of time the MMDVM waits after the end of an incoming network transmission from a distant station.
  5. Click “Apply Changes.”
  6. After the changes are applied, scroll down and you will see a new configuration box named “DSTAR Configuration.” The defaults will look like this:
  7. Here are my settings for DSTAR and I’ll explain them after the photo.

Explanation of Settings

  1. RPT1 Callsign – This is the callsign of the node or repeater with its module letter. B = 70CM / C = 2M
  2. RPT2 Callsign – This is the callsign of the gateway, which in our case will be the same as the repeater, but instead of module “B” it will be “G” for “Gateway.”
  3. Remote Password – This is the password used by the ircDDBRemote application as well as the command-line Remote Control application.
  4. Default Reflector – This is the default reflector that the repeater will connect to. A reflector is like a group chat or conference server for many repeaters to connect to. Note that this can be set to “Startup” or “Manual.” I chose “Manual” because I do not want my repeater to automatically connect to a reflector when the repeater turns on.
  5. APRS HOST – APRS stands for Amateur Packet Reporting System and allows data like GPS coordinates, altitude, speed, etc to be reported to other amateurs. This data can be viewed online at a few sites like https://aprs.fi the “rotate” APRS Host is a round robin server according to http://www.aprs-is.net/aprsservers.aspx
  6. ircDDBGateway Language – Select your language and country code if applicable. I selected “english_(US).”
  7. Time Announcements – If turned on, the hotspot/repeater will announce the time every hour.
  8. Use DPLUS for XRF – I don’t use XRF reflectors, so I left it turned off, but this would allow you to use the DPLUS protocol to connect to XRF Reflectors.

Later this week, I’ll discuss programming your DSTAR radio as well as enabling DMR. I’ll also be adding a Nextion Display to this project and attempting to create my own Nextion Display layout in the Nextion Editor Software.

Week 7 – Update MMDVM HS Duplex Firmware

To start this week, I updated the firmware on the duplex MMDVM hot spot board. Follow the steps below to do that.

From where I left off previously, I still needed to select the board/modem in the configuration first.

Selecting the Board

  1. Login to the Pi-Star dashboard and click on the configuration page.
  2. Under “General Configuration” find the option that says “Radio/Modem Type.” and select the MMDVM board that you’re using. In my case I selected the MMDVM_HS_DUAL_HAT for Pi (GPIO).
  3. After making your selection, don’t forget to click “Apply.”

Update MMDVM HS Duplex firmware

Next we’ll update the firmware.

  1. First open the “expert” tab and then click “SSH Access.”
  2. Login with the pi-star user.
  3. Run the following command:
    sudo pistar-update
  4. When the update is complete you should see the following:
  5. Next, restart the Raspberry Pi by going to the “Admin” tab and clicking “Power,” then click “Restart/reboot.”
  6. For the MMDVM_HS_DUAL_HAT board with the 14.7456 TXCO like I’m using, you will want to run the following command:
    sudo pistar-mmdvmhshatflash hs_dual_hat

Reference: https://github.com/juribeparada/MMDVM_HS

Week 6 – Hardware

Last week I decided to purchase a little board called an MMDVM_HS_HAT_DUPLEX. What I purchased is a cheaper clone, but it should work about the same as it uses the same firmware. Essentially it is a tiny low-powered repeater on a single circuit board. It is designed to be a personal duplex hotspot.

MMDVM_HS_HAT_DUPLEX

The board has an STM32 microcontroller and two ADF7021 radio microchips. The board should produce about 10mW of RF power output. The board has a number of LED’s to indicate various things such as, power, carrier operated squelch (COS), Push-To-Talk (PTT), and an LED for each digital mode the board is capable of such as DSTAR, DMR, YSF, P25, and NXDN.

MMDVM Digital Mode LEDs

The board is a hat so it sits directly on top of the Raspberry Pi and uses the Pi’s GPIO pins to communicate with the Pi-Star Software.

MMDVM & Raspberry Pi GPIO Connection

Fully assembled, this is what the Pi looks like with the MMDVM Duplex Hot Spot board attached.

MMDVM_HS_HAT_Duplex on Raspberry Pi 3b

The other piece of this project that I decided to add, was a screen. It has not arrived yet. This will solve the problem of not knowing the IP address of the Pi to connect to the dashboard. I did some reading and the MMDVM Duplex Board is capable of working with a small OLED display OR a Nextion touch screen. I opted for the touch screen which will give me more options for controlling the device. On most of the forums and Facebook groups for DSTAR hotspots, other hams seem to recommend the 3.5″ display most often. I opted for a slightly smaller 3.2″ display, specifically the NX4024K032_011R.

Nextion Display

It’s slightly cheaper than the 3.5″ screen and slightly smaller. This is an enhanced version with more flash memory and more RAM than the basic models.

Nextion Editor Layout

This display is a Human Machine Interface that is programmed using a piece of software called Nextion Editor. It’s a What You See Is What You Get (WYSIWYG) editor. The coding to make the screen work seems pretty simple, however I have not looked at the code in the Pi-Star software that actually sends the information to the screen.

Here I found a guide on using the Nextion Editor software, which I’m sure will be useful for creating my own display interface. Here is another guide on creating a screen layout/interface that is specific to the MMDVM and ham radio. The interface is designed, saved to an HMI file, and then compiled into a TFT file, which is then uploaded to the screen. You can upload the TFT file via a USB to TTL serial adapter or by using a microSD card with the TFT file on it, inserted into the microSD card slot on the Nextion Display.

USB to TTL Serial Adapter

You may also find *.TFT files that other amateur radio operators (hams) have made available on a few different MMDVM Hotspot groups. These files (as long as they’re made for the exact screen you’re using) can be downloaded to your computer and uploaded to your screen. If you can get the *.HMI file which is typically available with the *.TFT files, you can edit the HMI file in Nextion Editor to suit your needs and then upload it to your screen. Here is an example interface from the second guide that another ham has created.

UI sample from PD0DIB

Next week I’ll set up the MMDVM to work with the Raspberry Pi and update the MMDVM’s firmware.