codec2_talkie/README.md

51 wiersze
4.0 KiB
Markdown
Czysty Zwykły widok Historia

2022-06-19 11:55:05 +00:00
![CI](https://github.com/sh123/codec2_talkie/workflows/CI/badge.svg)
![APK](https://img.shields.io/endpoint?url=https://apt.izzysoft.de/fdroid/api/v1/shield/com.radio.codec2talkie)
2020-12-10 11:44:49 +00:00
2021-01-27 13:28:39 +00:00
# Introduction
2022-08-13 13:37:50 +00:00
**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**
2021-10-11 14:25:01 +00:00
2021-10-24 13:53:50 +00:00
For more information visit project [Wiki](https://github.com/sh123/codec2_talkie/wiki)
2021-01-27 15:53:51 +00:00
![alt text](images/diagram.png)
2020-12-06 10:21:21 +00:00
![alt text](images/screenshot.png)
2021-01-25 12:08:13 +00:00
![alt text](images/screenshot_settings.png)
2020-12-06 10:13:29 +00:00
2022-08-12 07:49:31 +00:00
This minimalistic Android application is Amateur Radio Walkie-Talkie style digital voice frontend for your radio modem, which uses open source [Codec2](https://github.com/drowe67/codec2) for speech audio frame encoding/decoding with additional AX.25/APRS and FreeDV support.
2021-01-27 12:05:52 +00:00
2022-06-27 14:33:39 +00:00
It is mainly intended for Amateur Radio DV experimentation with ultra low cost 3-8 dollar radio modems, such as LoRa and 15-25 dollar ESP32 board flavors with built-in LoRa module: T-Beam,
2022-08-12 07:27:42 +00:00
LoPy, TTGO, Heltec and others, but could also be used with custom hardware of software (Direwolf) modems and/or analog transceivers (such as HF MCHF or ICOM) or as a test harness for Codec2 frames generation and their playback. It also supports FreeDV modes through OTG USB audio and USB CAT PTT control.
2021-02-08 10:27:07 +00:00
2021-02-10 08:05:18 +00:00
![alt text](images/tracker.jpg)
2021-01-27 13:40:02 +00:00
2022-06-30 09:12:50 +00:00
Application connects to your radio KISS Bluetooth/BLE/USB/TCPIP modem, records speech from the phone microphone on transmit, encodes audio into Codec2 format, encapsulates into KISS frames (plus into AX.25 frames if enabled in settings) and sends to your modem.
2022-07-04 06:24:16 +00:00
On receive, modem sends KISS packets to the phone with Codec2 speech, application decodes Codec2 samples and plays them through phone speaker. Application also supports APRS tracking, so you can submit your position into APRS in plain, compressed or Mic-E format.
2021-01-27 12:05:52 +00:00
2022-08-12 07:51:42 +00:00
It does not deal with radio management, modulation when used in KISS mode, it is up to your modem and radio, it could be just AFSK1200, GMSK 9600, LoRa, FSK, FreeDV or any other modulation scheme. Radio just needs to expose KISS Bluetooth/BLE/USB/TCPIP interface for speech frames and optional radio control.
When used in sound modem mode it supports several modulation schemes and protocols, such as FSK 300, AFSK1200 and FreeDV with USB CAT PTT support for several popular HF transceivers.
2021-01-27 12:05:52 +00:00
2020-12-06 09:56:08 +00:00
# Requirements
2021-07-29 16:34:38 +00:00
- Android 7.0 (API 24) or higher
2021-01-27 12:25:13 +00:00
- 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](https://github.com/sh123/codec2_talkie/issues/4)
2021-10-14 11:58:56 +00:00
- Android 5.0, 5.1, 6.0 (API 21, 22, 23)
2021-10-14 11:59:35 +00:00
- Separate apk package is released with "legacy" suffix from legacy branch
2022-06-21 19:21:43 +00:00
- Modem, radio module or transceiver which supports [KISS protocol](https://en.wikipedia.org/wiki/KISS_(TNC)) or can process KISS or raw Codec2 audio frames over serial Bluetooth, BLE, USB or TCP/IP
2022-08-11 22:08:51 +00:00
- 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)
2021-10-28 12:33:12 +00:00
# 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
- ESP32 LoRa APRS modem (used with this application for testing): https://github.com/sh123/esp32_loraprs
- Version adopted for M17 protocol usage: https://github.com/mobilinkd/m17-kiss-ht
- iOS Codec2 wrapper: https://github.com/Beartooth/codec2-ios
- 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
- Other interesting projects:
2021-10-29 06:33:04 +00:00
- LoRa mesh text GPS communicator: https://github.com/meshtastic/Meshtastic-device