codec2_talkie/README.md

48 wiersze
3.0 KiB
Markdown
Czysty Zwykły widok Historia

2020-12-10 11:44:49 +00:00
![CI](https://github.com/sh123/codec2_talkie/workflows/CI/badge.svg)
2021-01-27 13:28:39 +00:00
# Introduction
2021-10-28 08:04:33 +00:00
**Turn your Android phone into real VHF/UHF Walkie-Talkie (requires additional digital radio hardware/software modem)**
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
2021-10-25 06:30:19 +00:00
This minimalistic Android application is a 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.
2021-01-27 12:05:52 +00:00
2021-10-28 08:32:16 +00:00
It is mainly intended for DV experimentation with ultra low cost 3-8$ radio modems, such as LoRa and 15-25$ ESP32 board flavours with built-in LoRa module: T-Beam,
2021-10-14 16:30:49 +00:00
LoPy, TTGO, Heltec and others, but could also be used with custom hardware of software (Direwolf) modems + external transceivers or as a test harness for Codec2 frames generation and their playback.
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
2021-10-14 16:23:51 +00:00
Application connects to your radio KISS Bluetooth/USB/TCPIP modem, records speech from the phone microphone on transmit, encodes audio into Codec2 format, encapsulates into KISS frames and sends to your modem.
2021-10-28 08:32: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.
2021-01-27 12:05:52 +00:00
2021-10-14 16:23:51 +00:00
It does not deal with radio management, modulation, etc, 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/USB/TCPIP interface for speech frames.
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
2021-10-11 12:41:28 +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, USB or TCP/IP
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:
- LoRa mesh GPS communicator: https://github.com/meshtastic/Meshtastic-device