[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Mac Layer

From: Miklos Maroti
Subject: Re: Mac Layer
Date: Sat, 12 Jun 2021 00:09:39 +0200

Hi Nick,

You can take a look at the https://gitlab.com/marmote/gr-marmote3 repo as well. That has a custom waveform and custom MAC but it is a full fledged solution. The bare essentials (real time part) are kept in gnuradio, the rest is controlled from python using protocol buffers. Low latency buffer management is hard, but not impossible.


On Fri, Jun 11, 2021 at 10:42 PM Marcus Müller <mmueller@gnuradio.org> wrote:
Hi Nick,

On 11.06.21 16:58, Nicholas Long wrote:
> Hi, so I have been wondering what people do to implement mac layer type things with GNURadio?
> (for example automatic detection/handshaking type protocols before transmitting digital
> data packets.)

Well, "we" (as in the community) have Basti Bloessl's gr-ieee802-11 project as an example
on how to approach that.

> From my perspective gnuradio is good for physical layer development, but less so for state
> machine type work of mac layer...

Well, yes. Kind of.
GNU Radio definitely is a physical layer thing. It doesn't give you any tools to develop
MA controllers.
But: MACs are different. Pretty different, in fact. As you say, the common denominator is
"there's one or more state machines"; from there up, it's pretty variable.

Now, what GNU Radio *does* give you is a flexible architecture to implement your physical
receiver and transmitter, and a mechanism with which you can interchange messages with a
controller. I think (and I'm not alone with that, there's work ongoing on new concepts in
that space!) that we could do a bit better on the usefulness of that messaging system, but
it does work.

I think GNU Radio Companion as the visible front of the whole GNU Radio idea establishes
the impression that GNU Radio is a generator for stand-alone *applications*; it's not. GNU
Radio is a library, and the things you can create with it are *meant* to be used as the
signal processing side of other applications. Look at the success gqrx has: It uses GNU
Radio underneath, but none of its visualization blocks; satellite ground stations, video
transceivers, radiosonde receivers, emergency beacons and a myriad of other very
real-world applications are underpinned by GNU Radio. DARPA's spectrum challenge gave
teams a development kit based on GNU Radio as a starting point, and its whole point was to
demonstrate the ability to react to sudden interference and user constellation changes.

All these things use different approaches, clearly. There's good reason to assume the
project "should" have a goto MAC demo – but we don't. Too much to fiddle, probably.

Best regards,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]