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!

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *