codec2_talkie icon indicating copy to clipboard operation
codec2_talkie copied to clipboard

Turn your Android phone into Amateur Radio Codec2/OPUS APRS enabled DV handheld transceiver (Bluetooth/BLE/USB/TCPIP KISS/Sound modem client for DV digital voice communication)

CI APK

Introduction

Turn your Android phone into real Amateur Radio HF/VHF/UHF APRS enabled Codec2 DV (digital voice) and/or FreeDV handheld transceiver.

Requires additional hardware (e.g. AFSK/LoRa), software (e.g. Direwolf) radio modem or analog transceiver with USB audio + VOX/USB CAT PTT control, such as MCHF or ICOM

For more information visit project Wiki

alt text

alt text alt text

Short Description

What you can do with this app:

  • Voice communication:
    • Send and receive voice over FreeDV modes
    • Send and receive Codec2 voice over KISS
    • Send and receive Codec2 voice encapsulated into APRS UI frames
  • Data communication
    • Send and receive APRS position reports over FSK 300 (HF, TX only), AFSK1200 (VHF), FreeDV OFDM (HF)
    • Send and receive APRS messages
    • APRS log, station hub and map
    • Use application as APRS digirepeater
    • Use application as APRS-IS RX/TX iGate
  • Integrate with hardware/software
    • Use it with your KISS Bluetooth/BLE/USB/TCPIP hardware modem, such as LoRa/FSK/AFSK/etc, control its parameters by using "set hardware" KISS command
    • Use it with KISS software modem using TCPIP, such as Direwolf
    • Use it with your HF/VHF/UHF transceiver as a sound modem
    • Use your phone as a software sound modem by using external USB OTG audio adapter (voice + data) or built-in phone speaker and mic (only data)
    • Use your phone for FreeDV protocol voice communication together with HF transceiver, which supports USB OTG audio
    • Control your external transceiver PTT by using USB serial CAT (or VOX if CAT PTT is not supported)

Requirements

  • Android 7.0 (API 24) or higher
    • Application could also be used with your Android network radio, such as Inrico TM-7, apk just needs to be installed over USB, see Discussion
  • Android 5.0, 5.1, 6.0 (API 21, 22, 23)
    • Separate apk package is released with "legacy" suffix from legacy branch
  • Modem, radio module or transceiver which supports KISS protocol or can process KISS or raw Codec2 audio frames over serial Bluetooth, BLE, USB or TCP/IP
  • Analog transceiver with built-in or external USB audio adapter and VOX or USB CAT PTT control (such as MCHF or iCom IC-7x00 series)

Dependencies

  • Source code is integrated into this project for easier building and customization:
    • Codec2 codec: https://github.com/drowe67/codec2
    • Android Codec2 wrapper code: https://github.com/UstadMobile/Codec2-Android
  • Fetched with gradle as dependency:
    • Android USB serial: https://github.com/mik3y/usb-serial-for-android

Other similar or related projects

  • Hardware
    • ESP32 LoRa APRS modem (used with this application for testing): https://github.com/sh123/esp32_loraprs
    • Minimal Arduino LoRa KISS modem: https://github.com/sh123/lora_arduino_kiss_modem
    • Minimal Arduino NRF24 KISS modem: https://github.com/sh123/nrf24l01_arduino_kiss_modem
  • Software:
    • FreeDV TNC: https://github.com/xssfox/freedv-tnc
    • FreeDV data modem UI: https://github.com/DJ2LS/FreeDATA
    • FreeDV official UI: https://github.com/drowe67/freedv-gui
    • Version adopted for M17 protocol usage: https://github.com/mobilinkd/m17-kiss-ht
    • Codec2 iOS wrapper: https://github.com/Beartooth/codec2-ios
  • Other interesting projects:
    • LoRa mesh text GPS communicator: https://github.com/meshtastic/Meshtastic-device