User Tools

Site Tools


droidstar_mmdvm_based_m17_ht

DroidStar MMDVM Based M17 Transceiver (M17 DroidTransceiver) - 25/11/21

Once DroidStar started to support the MMDVM HotSpot board over USB, I had to take a closer look.. This minimal M17 Transceiver provides a great, cheap way of demonstrating and experimenting with M17.

This document is very much a work in progress, None of it is warranted as Correct, Accurate or Optimal.. Suggestions very welcome.

Requirements

  • Android Device, Phone or tablet with USB OTG and Google Play support
  • Latest DroidStar app from Google Play, or build from source
  • Generic Pi Hotspot Board or USB MMDVM HotSpot Board (Then no USB TTL adapter required)
  • Latest firmware loaded on the MMDVM HotSpot Board
  • USB to TTL adapter board - I used a Silabs CP2102 board
  • Cable to connect the USB TTL board to the Pi Hotspot Board
  • USB On The Go (OTG) connection lead

Android Device, Phone or tablet with USB OTG and Google Play support

Most Android devices are suitable, does not need to be the latest, even a cheap Amazon Fire Tablet may be suitable. Key things are USB OTG and Google Play support.

Latest DroidStar app from Google Play, or build from source

Easiest just to install the latest version of DroidStar from Google Play. See the Build DroidStar section to build from source.

Generic Pi Hotspot Board or USB Hotspot Board (No adapter needed)

Generic Pi Hotspot board. Boards with built in USB are also available.

Latest firmware loaded on the HotSpot Board (Pi 3b used)

Build and flash the latest Hotspot Firmware with M17 support, based on

https://github.com/juribeparada/MMDVM_man/blob/master/MMDVM-Pi_v0_9_en.md

Please note I am using G4KLX repo

Disable conflicting services

sudo systemctl disable serial-getty@ttyAMA0.service
sudo systemctl disable bluetooth.service
# in /boot/config.txt - remove the console section
# Add..
enable_uart=1
dtoverlay=pi3-disable-bt

Prepare

cd ~
git clone https://github.com/g4klx/MMDVM_HS
# Refer to scripts/install_buildtools.sh for build prerequisites only
cd MMDVM_HS
# M17 support now in master
git checkout master 

Load Flash Tools

cd ~
git clone https://git.code.sf.net/p/stm32flash/code stm32flash
cd stm32flash
make
sudo make install

Build and Flash

cd ~/MMDVM_HS
git submodule init
git submodule update
# Ensure you have correct board config and clock selected
cp ~/MMDVM_HS/configs/MMDVM_HS_Hat.h ~/MMDVM_HS/Config.h
# in Config.h 
# uncomment //#define USE_ALTERNATE_M17_LEDS
# comment out other // LED options
make 
# Flash
sudo make mmdvm_hs_hat

Hotspot board flashing in progress

USB to TTL adapter board

Using a Silabs CP2102 USB to TTL board (others could be used). This board has proved very reliable and provides a 3.3 Volt output and 3.3 Volt levels for the RX and TX. Beware some boards provide 5 Volt RX and TX output, these risk damaging your Hotspot board.

Cable to connect the USB TTL board to the Pi Hotspot Board.

Pi Header pin 6 for ground, pin 1 for 3.3 Volt, and pin 8 for TX Data from the Pi, and pin 10 for RX Data into the Pi. Pi Header Spec Note that some USB TTL boards may have RX and TX “Swapped”

USB OTG lead

Connect the USB TTL board to your Android device.

Basic Testing

The configuration of Android, USB OTG cable, USB TTL board connecting cable and Hotspot can be tested using a Android USB Serial Terminal App. Set the baud rate to 115200 and send e0 03 00 hex. This is a basic version check command and should give similar output to this.

Running DroidStar M17 Transceiver

TBA


Optional - Build the DroidStar Software For Linux and Android

Building DroidStar requires the Qt toolset and development environmen. To build DroidStar Android the Android toolset, frameworks and NDK etc are also required.

Qt Prerequsites

https://www.qt.io/download-qt-installer Sign up etc… Select Install 5.15.2

sudo apt-get install build-essential
# These are likely not needed 
#sudo apt-get install qtcreator
#sudo apt-get install qt5-default
#sudo apt-get install qtquickcontrols2-5-dev
#sudo apt-get install qtdeclarative5-dev
# Modules likely to be required
sudo apt-get install qtmultimedia5-dev
sudo apt-get install libqt5serialport5-dev
sudo apt-get install qml-module-qtquick-dialogs

DroidStar Project Install and Linux Build

cd Documents
git clone git://github.com/nostar/DroidStar.git
# Install imbe vocder lib and headers
sudo git clone git://github.com/nostar/imbe_vocoder.git
cd imbe_vocoder
make
make install
cd /home/nicolas/Documents/DroidStar
~/Qt/5.15.2/gcc_64/bin/qmake
make
# Run Linux DroidStar!
./DroidStar

DroidStar Android Build

TBA


droidstar_mmdvm_based_m17_ht.txt · Last modified: 2021/11/25 23:13 by nicolas