Bruce Robertson | 5 Jun 2012 20:33
Picon

Modem testing on pandaboard

Both the gmsk and the fdmdv modems nicely encoded David's raw samples,
decoded, and played them through the audio out on my pandaboard
running linux.

73, Bruce

--

-- 
http://ve9qrp.blogspot.com

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
Kristoff Bonne | 6 Jun 2012 21:31
Picon

Re: Modem testing on pandaboard

Hi Bruce,

On 05-06-12 20:33, Bruce Robertson wrote:
> Both the gmsk and the fdmdv modems nicely encoded David's raw samples,
> decoded, and played them through the audio out on my pandaboard
> running linux.
Very interesting.

How did you comile the modem? On the pandaboard itself, or 
crosscompiling on a PC.

A have a pandaboard running with linaro ubuntu but I cannot get it to 
compile anything on it. From the moment you use some external library, 
it complains it cannot link to it.

Concidering the CPU power of the pandaboard, it would be nice to do 
codec2 encoding/decoding also on the board, so to have everything 
running on one board.

> 73, Bruce
73
Kristoff - ON1ARF

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
(Continue reading)

Bruce Robertson | 7 Jun 2012 02:48
Picon

Re: Modem testing on pandaboard

On Wed, Jun 6, 2012 at 4:31 PM, Kristoff Bonne <kristoff@...> wrote:
> Hi Bruce,
>
>
> On 05-06-12 20:33, Bruce Robertson wrote:
>> Both the gmsk and the fdmdv modems nicely encoded David's raw samples,
>> decoded, and played them through the audio out on my pandaboard
>> running linux.
> Very interesting.
>
> How did you comile the modem? On the pandaboard itself, or
> crosscompiling on a PC.
>

On it itself, using Ubuntu 11.04.

> A have a pandaboard running with linaro ubuntu but I cannot get it to
> compile anything on it. From the moment you use some external library,
> it complains it cannot link to it.
>
>
> Concidering the CPU power of the pandaboard, it would be nice to do
> codec2 encoding/decoding also on the board, so to have everything
> running on one board.
>

I am able to run this pipeline (though I only tried it for about 20
seconds), suggesting that encoding and decoding can happen at the same
time. (It takes audio from my usb headset mic, c2encodes it, runs it
through the fdmdv encoding and deconding, then finally decodes the c2,
(Continue reading)

Kristoff Bonne | 7 Jun 2012 09:02
Picon

Re: Modem testing on pandaboard

Hi Bruce,

On 07-06-12 02:48, Bruce Robertson wrote:
>
> Both the gmsk and the fdmdv modems nicely encoded David's raw samples,
> decoded, and played them through the audio out on my pandaboard
> running linux.
>> Very interesting.
>>
>> How did you comile the modem? On the pandaboard itself, or
>> crosscompiling on a PC.
>>
> On it itself, using Ubuntu 11.04.
Strange.
I tried it with 11.10 and 12.04, but I haven't tried the 11.04 release.

I should check if the card-flash image for 11.04 still around somewhere.

> FWIW, I don't recommend using alsa on pandaboard/ubuntu. I'm finding 
> pulseaudio much more reliable, especially with regard to the on-board 
> audio-in jack.
I started with ALSA as that worked best on my other board (the 
friendlyarm mini i2440).

As I have plans to change the code to allow it to work without sound 
libraries (which would make it easier to compile on windows), so -why 
not- add an option to use pulseaudio.
OK, something for on my "to do" list. :-)

> My goal is to pair the pandaboard with an FT-817, then use my TS-2000 
(Continue reading)

Kristoff Bonne | 8 Jun 2012 00:25
Picon

Re: Modem testing on pandaboard

Hi Bruce,

As you said you do have possitive result on your pandaboard, I did some 
further experimenting. And ... I found the issue.

It turns out that "gcc -Wall -lasound -lpthread -lrt -o gmskmodem 
gmskmodem.c" is not the same as "gcc -Wall -o gmskmodem gmskmodem.c -lrt 
-lasound -lpthread" :-)

The latter one does compile OK. The first one fails with linking-errors.

This is good as I can now see if I cannot get "codec2" do compile 
natively on the board.

73
Kristoff - ON1ARF

On 07-06-12 09:02, Kristoff Bonne wrote:
> Hi Bruce,
>
>
> On 07-06-12 02:48, Bruce Robertson wrote:
>> Both the gmsk and the fdmdv modems nicely encoded David's raw samples,
>> decoded, and played them through the audio out on my pandaboard
>> running linux.
>>> Very interesting.
>>>
>>> How did you comile the modem? On the pandaboard itself, or
>>> crosscompiling on a PC.
>>>
(Continue reading)

Bruce Robertson | 8 Jun 2012 05:16
Picon

Re: Modem testing on pandaboard

Sorry, Kristoff. I forgot to mention this glitch. I don't think I had
to fix anything to get codec2 to build.

On Thu, Jun 7, 2012 at 7:25 PM, Kristoff Bonne <kristoff@...> wrote:
> Hi Bruce,
>
>
> As you said you do have possitive result on your pandaboard, I did some
> further experimenting. And ... I found the issue.
>
>
> It turns out that "gcc -Wall -lasound -lpthread -lrt -o gmskmodem
> gmskmodem.c" is not the same as "gcc -Wall -o gmskmodem gmskmodem.c -lrt
> -lasound -lpthread" :-)
>
> The latter one does compile OK. The first one fails with linking-errors.
>
>
> This is good as I can now see if I cannot get "codec2" do compile
> natively on the board.
>
>
>
>
> 73
> Kristoff - ON1ARF
>
>
>
>
(Continue reading)

Kristoff Bonne | 8 Jun 2012 18:40
Picon

Re: Modem testing on pandaboard

Hi Bruce,

On 08-06-12 05:16, Bruce Robertson wrote:
> Sorry, Kristoff. I forgot to mention this glitch.
No issues. :-)

> I don't think I had
> to fix anything to get codec2 to build.
Yep. I did a quick test yesterday-evening and it does compile nicely out 
of the box ... euh  .... the "./configure" box.

Now, two questions to the group:

1/
I would be interested in created a audio-frontend for this on the 
pandaboard: an application which can can do this:
- record audio, codec2 encode it and send it out to the modem in the 
back end via a UDP stream
- listen on a UDP port for packets it received from the modem, 
codec2-decode them and play them out.

It does not need to have a fancy GUI, perhaps send pressing "enter" 
would be nice.

Does anybody already have something like this? I do not want to 
"reinvent the hot water" (as we say in dutch).

2/
If I would convert the gmsk encoder/decoder modem I have now into a 
library so it can more easily be linked to other applications; how would 
(Continue reading)

David Rowe | 9 Jun 2012 00:42
Favicon
Gravatar

Re: Modem testing on pandaboard

Hello Bruce R and Kristoff,

Nice work with the pandaboard, embedded implementations of our evolving
digital voice systems are a great idea.

Kristoff, re (2) yes I agree a library and API for the GMSK modem
something like the FDMDV API (fdmdv.h) would be useful.  The FDMDV API
just outputs raw bits, plus an odd/even frame sync bit.  Another layer
is then required to determine if the FDMDV modem is in sync, and
establish framing.  This is pretty simple for FDMDV (small state machine
in fdmdv_demod.c sample).

With GMSK the protocol/framing side is more complex, you could include
this in the modem API, or have a separate library that calls the GMSK
library at the raw data level.

You could return a sync flag from the demod function that signals the
Codec 2 data is valid (implying the demod has sync and the
protocol/framing layer is happy).

The FDMDV modem does have many internal states that are stored in the
FDMDV struct.

Cheers,

David

On Fri, 2012-06-08 at 18:40 +0200, Kristoff Bonne wrote:
> Hi Bruce,
> 
(Continue reading)

David Rowe | 9 Jun 2012 04:10
Favicon
Gravatar

cross compiling Codec2 for Win32

Hello List,

Using a Makefile from Peter Lawrence's codec2demo work as a starting
point, I have added a win32/Makefile for compiling the Codec 2 library
as a Windows codec2.dll and codec2.lib import library.  

src/codec2.h and src/fdmdv.h have been modified to support the Codec2
library as a Win32 DLL, see win32/Makefile for examples on how the demo
programs were built for Windows.

The win32/Makefile also builds the various command line demo programs
(c2enc/dec & fdmdv_mod/demod).  It's checked into SVN rev 535

I did this as an experiment to try cross compiling for Windows on my
Linux box. I cross compiled using i586-mingw32msvc-gcc on my Linux box
which is kind of neat - no MSVC or even a Windows machine reqd.

I have tested the demo programs using wine under Linux and on a Windows
machine.  They seem to work OK but the pipes don't work in the Windows
"command" shell.

Can someone try to link codec2.dll & codec2.lib (attached) with a simple
application on a Windows machine and tell me if they work?  For example
try to build c2demo using MSVC, and linking with codec2.lib.

Thanks,

David

On Sat, 2012-06-09 at 08:42 +1000, David Rowe wrote:
(Continue reading)


Gmane