Packet Radio with AVR

12,272

Packet Radio with AVR
Packet Radio with AVR
Packet Radio with AVR - 2
Packet Radio with AVR - 2

Here is some experimental hardware and software to transmit and receive AX.25 packets. It is essentially a PIC-E clone designed around a Atmel AT90S2313 with a few extra bells and whistles. I had picked up a couple of MXCOM MX-614s at the TAPR display (I also joined TAPR) at the Dayton Hamvention, and I needed a project to try them out on. I had designed many projects around Microchips PIC series micros, but had recently started experimenting with Atmel AVR micros. On the pic mail list this is referred to as 'going over to the dark side'. AVRs are PIC-like RISC processors, but with some additional features that made them slightly more suited for certain projects. AVRs are also very cost competitive against midrange PIC parts. More: Simple flash-based in-circuit programming and cheap development tools also contribute to the attractiveness of the AVR processors. AVRs also code very well in C, but I'm still stuck with slugging away with assembler.

Most of the AVR devices are available now from Digi-Key or other online sources. Digi-Key also stocks the STK-500 starter kit which is a great way to start working with Atmels for a very reasonable price.

NOTE: This project is not intended as a PIC-E or MIC-E (I guess I could call it the AVR-E) replacement or competitor. It's just another tool to further increase the utility of APRS. The hardware is pretty flexible, the example code implements a very basic UI-TNC, but you could easily edit out the console code, leave the AX.25 encode/decode routines to create trackers, WX stations, or minimal function digipeaters. It should also be possible to implement an almost complete KISS modem; the main limiting factor is RAM. The newer design no longer uses the PCF8583 I2C RAM/RTC. After the generous donation of some sample RAMTRON FM25160 FRAM parts by Klaus Hirschelmann, I revised the hardware. We now have 2K of storage but no RTC. I simplified the beacon function and used some of the additional storage to buffer incoming packets. I also made some minor changes to the hardware based on input from Klaus. Parts availability: If anyone has trouble finding some of the parts for the project, I have some spare PCF8583s (I only have SMD parts for the PCF8583, sorry). You can find them on my FOR SALE page. I'm not trying to make any profit on any parts for this project, just trying to cover my expenses. I'm sorry that I have no source to recommend for small quantities of the FM25160.

The project focuses on the integration of an Atmel AT90S2313 microcontroller to facilitate the transmission and reception of AX.25 packets, which are widely used in amateur radio for packet radio communications. The design is based on a PIC-E clone architecture, which allows for a familiar development environment for those experienced with Microchip’s PIC series microcontrollers. The AT90S2313 is a popular choice due to its RISC architecture, which provides efficient processing capabilities and supports a variety of peripherals.

The hardware design incorporates the MXCOM MX-614, a critical component for radio frequency transmission and reception. This integration allows for effective communication over the amateur radio bands, enhancing the capabilities of Automatic Packet Reporting System (APRS) applications. The flexibility of the hardware enables various configurations, allowing users to adapt the system for different applications such as trackers, weather stations, or digipeaters.

The software architecture includes basic user interface (UI) terminal node controller (TNC) functionalities, which can be customized according to the user's needs. The AX.25 protocol stack is implemented in the firmware, allowing for encoding and decoding of packets. Developers can modify the provided example code to suit specific requirements, making it a versatile tool for APRS projects.

The transition from using the PCF8583 I2C RAM/RTC to the RAMTRON FM25160 FRAM has enhanced the memory capabilities of the system, providing 2K of storage. This change simplifies the beaconing function and enables efficient buffering of incoming packets, which is essential for maintaining high performance in packet transmission and reception.

In summary, this project serves as an innovative platform for experimenting with AVR microcontrollers in the realm of amateur radio. Its design emphasizes flexibility, cost-effectiveness, and ease of use, making it accessible for both seasoned engineers and hobbyists alike. Parts availability is supported through online retailers and personal inventories, ensuring that users can source the necessary components for their projects.Here is some experimental hardware and software to transmit and receive AX.25 packets. It is essentially a PIC-E clone designed around a Atmel AT90S2313 with a few extra bells and whistles. I had picked up a couple of MXCOM MX-614s at the TAPR display (I also joined TAPR) at the Dayton Hamvention, and I needed a project to try them out on.

I had designed many projects around Microchips PIC series micros, but had recently started experimenting with Atmel AVR micros. On the pic mail list this is referred to as 'going over to the dark side'. AVRs are PIC like risc processors, but with some additional features that made them slightly more suited for certain projects.

AVRs are also very cost competitive against midrange PIC parts. Simple flash based in circuit programming and cheap development tools also contribute the the attractiveness of the AVR processors. AVRs also code very well in C, but I'm still stuck with slugging away with assembler. Most of the AVR devices are available now from Digi-Key or other online sources. Digi-Key also stocks the STK-500 starter kit which is a great way to start working with Atmels for a very reasonable price.

NOTE: This project is not intended as a PIC-E or MIC-E (I guess I could call it the AVR-E) replacement or competitor. It's just as another tool to further increase the utility of APRS. The hardware is pretty flexible, the example code implements a very basic UI-TNC, but you could easily edit out the console code, leave the AX.25 encode/decode routines to create trackers, WX stations or minimal function digipeaters.

It should also be possible to implement an almost complete KISS modem, the main limiting factor is ram. The newer deisign no longer uses the PCF8583 I2C RAM/RTC. After the generous donation of some sample RAMTRON FM25160 fram parts by Klaus Hirschelmann I revised the hardware.

We now have 2K of storage but no RTC. I simplified the Beacon function and used some of the additional storage to buffer incoming packets. I also made some minor changes to the hardware based on input from Klaus. Parts availability: If anyone has trouble finding some of the parts for the project, I have some spare PCF8583s (I only have smd parts for the PCF8583, sorry) . You can find them on my FOR SALE page. I'm not trying to make any profit on any parts for this project, just trying to cover my expenses.. I'm sorry that I have no source to recommend for small quantities of the FM25160. 🔗 External reference