Sounds good Eric.  I don't have the bandwidth to work on this one myself, but if you have any questions or maybe some review just let me know.

- David

On 3/2/21 8:31 am, e...@jacksch.com wrote:

Hi David,

In short, yes. I don’t think it is viable to bypass the modem on the GD77, and as I understand it current OpenGD77 firmware is using much of the available space.

I’m interested in many things, but in this case whether we can just replace the codec.

For the code inclined, the C code that uses two block of the original radio firmware is here:

https://github.com/rogerclarkmelbourne/OpenGD77/tree/master/firmware/source/dmr_codec

and the source to the tool that extracts the codec code from the original firmware is here:

https://github.com/rogerclarkmelbourne/OpenGD77/tree/master/tools/codec_dat_files_creator

I too would love an open radio from the ground up, but being able to drop firmware into a $70 2m/70cm handheld is still pretty cool.

Cheers,

Eric

*From:*David Rowe <da...@rowetel.com>
*Sent:* February 2, 2021 14:35
*To:* freetel-codec2@lists.sourceforge.net
*Subject:* Re: [Freetel-codec2] Codec2 and OpenGD77

Hi Danilo,

I think Eric's proposal was just to swap out the codec, and perhaps using the existing modem on the radio?

The current FreeDV modes we have ported to the stm32 (1600 and 700D) are aimed at HF channels, and the GD77 probably doesn't have the RF hardware to support them (e.g. a SSB style radio deck).  FreeDV includes the modem, protocol, FEC, and Codec 2 - which may be overkill for this project.

I can't recall the exact CPU/memory breakdown between Codec 2 and the other parts of the FreeDV stack, but I imagine Codec 2 alone would require substantially less resources.

While a GD77 port would be cool, I lean towards full ground up open source radio designs like M17 although I'd like to use better modems :-)  At some point I'm going to try my open vhf/uhf PI+RTLSDR based radio project with voice - it's already running the FreeDV stack and has plenty of CPU.

Cheers,
David

On 3/2/21 4:37 am, Danilo Beuche wrote:

    Hi,

    I'd like to share my thoughts on this, as I also have some GD77
    and love the OpenGD77 FW (main reason for getting these). I have
    some experience with porting FreeDV to the STM32 arm processor as
    I was one of the developers who integrated Codec2 into the UHSDR
    Firmware a couple of years ago.

    The hardware in the OpenGD77 GD77 is surely not powerful enough
    for 700D, it may be possible to get it to work with 1600D. FreeDV
    also eats a big slice of your RAM (~64k at least) of which the
    GD77's MK22FN512VLL12R has only 128k. 120 Mhz is also less than
    the 168Mhz of the SM1000 or the MCHF with an STM32F4xx processor.
    As both processor belong to the CORTEX-M4 family, they should have
    similar performance per MHZ.

    In measurements for 1600D on the MCHF with the UHSDR software,
    this takes roughly 70% load in the signal processing path from
    48khz IQ to audio for 1600D. Doing the math 168/120 * 70% load =
    98% load. 2% cycles left. SSB decoding takes about 10%, the
    remaining 60% went to FreeDV. Not a problem in SM1600 as it does
    less signal processing and doesn't have to run a graphical UI in
    addition (which the MCHF does).

    700D runs ok on the STM32F7 processor with 216 Mhz and processor
    caches (CORTEX-M7 design), speeding up code execution quite
    significantly. The STM32H7 with 480 Mhz is not concerned about
    decoding 700D at all, there is plenty of cpu power left. But those
    are unfortunately not in those handhelds.

    But for a different FreeDV mode better suited for VHF/UHF usage or
    a different signal processing chain it might be an entirely
    different story. Thats is where I have to hand over to David and
    the other experts.
    And just for the record: I would love to have a "completely" open
    source GD77 with digital voice.

    Danilo

    Can't say anything about the DM1801

    On 02/02/2021 18:21, Daniel Mundall wrote:

        Hi Eric,

        Funny that you mention OpenGD77 as last month I discovered
        these radios (Baofeng DM-1801 in my case) and picked up two of
        them off of aliexpress with codec2 being the primary reason
        for my purchase.

        There are 4 reasons why I think they would be great fit for
        codec2:

          * They're cheap ($65-75) & available which means you could
            get a larger adoption.
          * They run on an ARM platform either STM32 or similar processor.
          * And there's already an open source firmware without
            inventing that.
          * The audio encoding isn't a separate chip (at least on the
            DM1801) it's software encoding.

        Interestingly enough original portion of the memory containing
        the software audio codec is retained in OpenGD77 to avoid
        patent issues.

        Another cool possibility that I haven't felt out yet but in
        theory because of the two slot TDMA setup I think either a
        repeater mode or full duplex audio should be possible.

        Anyway, I just got the radios so soon as I have a chance I'm
        going to get OpenGD77 loaded up and play around with it.

        One thing that David or the others might be better suited to
        answer is how much hardware functions of the STM32 have been
        used in the codec2 port. Because there could be hardware
        limitations with what is even available as far a hardware
        functions on the MCU.

        Regards,

        Daniel Mundall VA7DRM

        On Tue, Feb 2, 2021 at 5:59 AM Eric Jacksch <e...@jacksch.com
        <mailto:e...@jacksch.com>> wrote:

            I don't know enough about CODECS to know the right answer
            (thus must
            post here), but right now the OpenGD77 source basically
            includes an
            bit of assembly language to call some binary code lifted
            out of the
            vendor's original firmware. My interest is to drop in a
            different
            CODEC, but I don't know enough about them to understand
            exactly what
            needs to be done.

            On Tue, 2 Feb 2021 at 02:48, Mooneer Salem
            <moon...@gmail.com <mailto:moon...@gmail.com>> wrote:
            >
            > I'm thinking M17 (based on Codec2) might be better to
            incorporate since it's already building in routing type
            features that DMR, D-STAR, etc. already have. I'm not
            really familiar with OpenGD77 but it seems like a neat
            project. Unfortunately I don't have a compatible HT (I use
            a MD-380 for DMR) but perhaps it'll gain more support in
            the future.
            >
            > -Mooneer K6AQ
            >
            > On Mon, Feb 1, 2021 at 3:21 PM Eric Jacksch
            <e...@jacksch.com <mailto:e...@jacksch.com>> wrote:
            >>
            >> Greetings,
            >>
            >> Has anyone looked at dropping Codec2 into OpenGD77?
            >>
            >> In case anyone is not aware, OpenGD77 is a (mostly)
            open source
            >> firmware replacement for several low cost handheld
            two-way radios,
            >> including the GD-77 (aka TYT MD-760).
            >>
            >> To work around intellectual property issues, the
            firmware currently
            >> links in the DMR CODEC from the original vendor's binary.
            >>
            >> While it would break compatibility with other DMR
            radios, I'm
            >> interested in seeing a fork of OpenGD77 that is fully
            open source and
            >> Codec 2 seems like an obvious candidate. A truly
            open-source amateur
            >> VHF/UHF digital mode.
            >>
            >> The IDE (MCUExpresso) and complete toolchain for
            OpenGD77 is free and
            >> relatively straightforward on Windows, and the firmware
            is written in
            >> C. What's needed is the Codec 2 expertise.
            >>
            >> Anyone interested?
            >>
            >> Cheers,
            >> Eric
            >>
            >>
            >> _______________________________________________
            >> Freetel-codec2 mailing list
            >> Freetel-codec2@lists.sourceforge.net
            <mailto:Freetel-codec2@lists.sourceforge.net>
            >> https://lists.sourceforge.net/lists/listinfo/freetel-codec2
            >
            > _______________________________________________
            > Freetel-codec2 mailing list
            > Freetel-codec2@lists.sourceforge.net
            <mailto:Freetel-codec2@lists.sourceforge.net>
            > https://lists.sourceforge.net/lists/listinfo/freetel-codec2



-- Eric Jacksch, CPP, CISM, CISSP
            e...@jacksch.com <mailto:e...@jacksch.com>
            Twitter: @EricJacksch
            https://SecurityShelf.com


            _______________________________________________
            Freetel-codec2 mailing list
            Freetel-codec2@lists.sourceforge.net
            <mailto:Freetel-codec2@lists.sourceforge.net>
            https://lists.sourceforge.net/lists/listinfo/freetel-codec2




        _______________________________________________

        Freetel-codec2 mailing list

        Freetel-codec2@lists.sourceforge.net  
<mailto:Freetel-codec2@lists.sourceforge.net>

        https://lists.sourceforge.net/lists/listinfo/freetel-codec2




    _______________________________________________

    Freetel-codec2 mailing list

    Freetel-codec2@lists.sourceforge.net  
<mailto:Freetel-codec2@lists.sourceforge.net>

    https://lists.sourceforge.net/lists/listinfo/freetel-codec2



_______________________________________________
Freetel-codec2 mailing list
Freetel-codec2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freetel-codec2
_______________________________________________
Freetel-codec2 mailing list
Freetel-codec2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to