Hi,

While other people are working on adding the c2gmsk modem in FreeDV, I 
have just uploaded a update of the c2gmsk modem on github:

https://github.com/on1arf/gmsk

Changes:
- there is now a version of the modem based on the c2gmsk API.
This modem is in "gmskmodem_api", while the code of the old (non-API 
based) modem is kept in "gmskmodem_old".

- added support for half-duplex audio for the c2gmsk modem and the 
audio-tools
This is needed to deal with the USB issue on the raspberry pi

- also a compile-time option to make the modem less strict on the 
C2ENCAP format (i.e. the format of the codec2 stream exchanged between 
the audiotool (voice input/output) and the c2gmsk modem).

- added some code to deal with linux boards that do not have IPv6 
enabled (like a raspberry pi after a fresh install of "weezy raspbian", 
shame on you! :-( ).

- one minor change to the API



I do want to add that the code for the reception chain has not been 100 
% tested, because I have certain hardware in use for another project; so 
there may be some changes in the future.



This should form the basis for a c2gmsk VHF/UHF modem box based on linux 
based embedded device (like the raspberry pi, beaglebone, ...)

- Only two applications are needed:
-> "audiotool" is the application that deals with voice/speech input of 
the user and codec2 encoding
-> "c2gmsk" is the gmsk modem that talks to the radio

- any device with two audio input/out ports (like two USB audio ports) 
and a GPIO port / serial port for switching the radio can be used. a FPU 
is needed for codec2 encoding/decoding.

- between the radio and the modem device, there needs to be a small 
interface board. This consists out one single capacitor per 
audio-channel (to block DC bias on the audio-signal) and a diode, a 
resistor and a transistor to switch the PTT of the radio (add one more 
capacitor is switching is done via the serial port instead of the GPIO 
port).



I will put an article about this on my blog and some information how to 
install this on a fresh install of a raspberry pi and two USB 
audio-dongles("USB bus speed = USB 1.1" trick used to solve the USB 
lost-packets issue).


73
Kristoff - ON1ARF

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to