News feed

  • Quick ADF7021 and CC1200 comparison

    The ADF7021 is used by a vast majority, if not all, of amateur hotspots (RaspberryPi shields) out there. Back in the days when this kind of hardware was a novelty, this chip seemed to be one of the best options to choose. It supports 4FSK and raised-cosine (RC) baseband filtering out-of-the-box, the user only has to sustain a transfer of the symbol stream. Sounds good so far, but the problem is that the RC filter in the hotspot’s RF chip, when combined with a square-root-raised-cosine (RRC) filter at the user’s radio side, gives significant intersymbol interference. This is what renders the signal from hotspots unusable at longer distances – the eye plot is not opened wide enough, even at excellent signal-to-noise ratios. The signal transmitted with ADF7021 is just bad, right at the antenna.

    Let’s take a closer look at my measurements taken a while back. The first comparison shows eye diagrams, as received with an SVA1032X with a reference RRC filter. The selected frequency, power, and SNR were roughly equal in both tests. A pseudorandom symbol stream was used.

    Now, let’s take a look at adjacent channel power ratio (ACPR). It tells us how much power “leaks out” into adjacent channels, potentially interfering with the transmissions happening there. I performed two measurements: one for the channel immediately adjacent to the used radio channel (+/-12.5 kHz), the other for +/-25 kHz offsets.

    It’s immediately obvious that the CC1200 gives much better ACPR. Last, but not least, let’s have a look at harmonics and other distortion.

    With the measurement’s settings used, the CC1200’s harmonic content couldn’t even be detected.

  • M17 packet mode reception with a RPi Zero CC1200 hotspot shield

    Remember our CC1200 shield for Raspberry Pi Zero? After about a year of stall, I pulled it out of my drawer to test its M17 packet mode reception capabilities. Since the hardware bug in the PCB is minor and doesn’t even seem to affect the device’s operation, I was all set. By the way: all the open issues on its GitHub should be addressed soon.

    Now, a quick reminder: CC1200 is a complete RF transceiver chip from Texas Instruments. It covers 70cm amateur band and allows for arbitrary frequency modulation schemes use. In our case, that’s M17 with its square root raised cosine filtered 4FSK. The chip has been proved to offer much better RF and baseband performance than the popular ADF7021. The latter remains popular, as there are numerous boards and shields using it along with a well-known software suite.

    The transmitter was my modified Nokia 3310. I used my favorite (and actually IARU-R1 designated!) frequency of 433.475 MHz.

    (more…)
  • M17 Rust library is now available

    Great news from Tom, VK7XT:

    A new M17 library is now available for developers, the M17 Rust Toolkit, which aims to make it easy to build PC-based M17 applications in Rust. I have published the first version today and the crates are now available on crates.io. It is cross-platform and easy to integrate with any Rust software. Rust is an increasingly popular for language for systems and embedded programming, and for those who use it, I hope that a native library will reduce the friction to support M17.

    The toolkit comes with a very high-level API. The goal is that a developer is freed from worrying about sound cards, PTT, and buffers. They only need to choose which devices they want to use and then they can start sending and receiving M17 packets and streams with very few lines of code.

    The initial version has built-in support for sound cards, receiving with an RTL-SDR, and reading/writing RRC files on disk. The soundmodem uses standard M17 KISS which makes it interchangeable with other types of TNC. Core protocol functions such as encoding and decoding, the TNC, and KISS are located in a separate no_std crate.

    It is new code and I am confident there will be bugs! Rust developers are warmly invited to test it out and share any feedback.

    Keep up the good work, Tom!

  • Is M17 any better than DMR?

    One of the first M17 transmissions using a modified Nokia 3310/3330. Not too complicated using libm17. There’s a wiki article on how to generate M17 baseband with the library.

    The transmission was received with an RTL-SDRv3 on 433.475MHz – IARU R1 designated M17 calling frequency! 🙂

  • M17 support in a Nokia 3310?

    Sure, why not? Just replace the mainboard with the one Woj SP5WWP designed, flash it with the sample firmware, et voilà.

    SA868 “open edition” 1W UHF module by NiceRF is used. The module runs OpenRTX open-source firmware.

    Please note that the project is very early in its development and the functionality offered is very limited. Nothing beyond text entry has been tested, but transmitting M17 should be straightforward to implement.

  • SR5MS repeater down

    Due to technical problems with the feed line and, hopefully temporary, lack of funding, we were forced to disable SR5MS M17 repeater site in Nowy Dwór Mazowiecki, Poland. This was the first repeater to support M17 mode and for a long time remained a true proving ground for the Protocol.

    The SR5MS repeater requires an upgrade from a legacy configuration based on a Motorola MTR2000 to a modern, RRU-based setup.

    We will keep you informed about the status of this repeater.

  • m17project.org updates

    We are still working on our new website – currently moving content from the old homepage. Some articles are outdated and will be removed, other need updates. Thank you for your patience. Stay tuned!