GMSK receiver (beta 1), GMSK sender (alpha 1) and dstarsms
The last weeks and days, I have pushed three software updates on github. As usual, the source-code can be found on https://github.com/on1ARF
GMSK receiver Beta 1.
The GSM receiver has moved up from “alpha” to “beta” phase as it has achieved a certain level of stability.
Changes compaired to “alpha3″ are:
- Better code to deal with unexpected-end-of-stream situations. The program now used the average audio-level of the incoming signal to detect when a stream has ended without sending a proper termination pattern.
- Do not do gmskdemodation when no signal is being received. Again, using the average audio-level, the program detects when a stream is being received or not. When no stream is being received, no gmsk decoding is done which largely reduces the CPU usage of the application. On a mini2440, the CPU load has gone down from more then 20 % to less then 2 % when no signal is being received.
- Some small bugfixes.
- The option to output of the incoming stream to UDP packets on a network.
The ability to stream out a received GMSK stream to UDP packets on the local network has two main applications:
- To communicate the received data to one or multiple INTERNAL applications on the same board (e.g. AMBE decoder, voip client, …)
- To send the received data to an EXTERNAL application somewhere else on the network. One particular example is setting up a D-STAR repeater with multiple receptions sites; thereby allowing people with handheld radios to transmit at lower power.
GMSK sender alpha 1
A new application is the “gmsksender”.
As its name implies, this application does the opposite of the gmsk receiver: it reads a file from a local media and does gmsk modulation, generating a PCM audio-file. That file can then be send to the 9k6 port of a FM-radio, resulting in a GMSK or D-STAR stream that is transmitted.
This is still “alpha1″ code, so it does have its limitations:
- The generated GMSK audio-file is in RAW PCM format. It needs to be converted to a more usefull .WAV file using an external application (sox)
- The resulting .wav file needs to be played out to the 9k6 port of the tranceiver using an external application (e.g. aplay, mplayer, …)
- There is currently no way to automatially drive the PTT of the radio. That needs to be done by manually grounding the PTT pin of the 9k6 port of the radio.
Althou this tool is still alpha code, it does have some nice features:
- Rewrite the D-STAR header (MY, YOUR, RPT, … flags)
- Recreate syncronisation patterns in the D-STAR stream
- Erase the slowspeed data (which also deletes the copy of the D-STAR header found in the slowspeed data part)
D-STAR repeater SMS tool
This is a tool I wrote about a year ago. It is an perl script that allows communication from and to a D-STAR repeater server using SMS text messaging.
This is a proof of concept of a “backup communication path” for D-STAR repeaters when the main internet connection is unavailable. For that, it uses a 3G dongle, althou the SMS texting-service can work both on 2G or 3G networks.
It provides examples for two possible senarions:
- Communication from the sysop to the repeater. In this case, the ability to send a Dplus message from the repeater, triggered by a SMS from the sysop.
- Communication from the repeater to the sysop, in casu a text-message send by the repeater to the sysop when it notices the repeater controller server has rebooted.
The code is designed to be as open as possible so to allow anybody to work with it. It is also designed to work on any linux or unix based device, including ARM developement board like the mini2440. One application for this is to execute a hardware power-cycle of a repeater, triggered via SMS.
Kristoff – ON1ARF