Introduction The power and flexibility of microcontrollers can be applied to many ham radio applications including repeater controllers, beacon transmitters, keyers, antenna switches, battery monitors, etc. The HamStack platform is designed to help ham radio operators learn how to design with microcontrollers and program them. A HamStack-based project can be used stand alone or embedded into your own project. The “ham” part of the name refers to the desire to target the platform to the needs of the ham radio operator. The “stack” is a play on words that refers to the physical design of the platform with its ability to stack multiple boards together. Stack also refers to the “software stack” of libraries that are available to make programming easier. What can I do with a HamStack? Why would I want one? Hams are always learning about technology and coming up with ways to apply it to radio projects and the world in general. Microcontrollers have become a fundamental building block of electronic systems and we should be familiar with the hardware as well as the programming of these devices. The HamStack platform lets you monitor and measure the real world and then decide what action to take. It runs at millions of clock cycles per second so the actions of the HamStack take place in the blink of an eye. The HamStack can measure digital inputs like the press of a button or a switch closure. It can measure a DC voltage such as your battery terminal voltage or power through a directional antenna coupler. It can control things like a light, a relay, or an alarm. It can send and receive data through many different types of serial interfaces including RS232, RS485, I2C, SPI, etc. You can display information on a LCD panel, read a temperature probe, transmit commands to a remote device through a secure RF link, etc. If you are thinking of a new ham radio project, there is a good chance you can enhance the project’s capability with an embedded microcontroller. The HamStack is designed for the beginner and the experienced designer If you are new to the world of microcontrollers or programming, don’t be afraid to jump in. The process of designing circuits and writing programs for the HamStack is very simple. Following the examples in the book you will be building hardware and writing programs in no time. The HamStack supports program development in Basic and C. You can choose the language you want to learn or are more comfortable with. For the more experienced users, the HamStack is a powerful hardware platform with a high performance CPU, lots of IO and a variety of packaging options.
The Starter Pack has everything you need to start learning about the HamStack and
start working on your first project. Includes a CPU board, prototype board, book,
programmer, basic compiler, and examples. The C compiler is a free download.
The Project Pack is a complete prototyping platform. The perfect add-on to the Starter
Pack. The Project Pack PCB provides digital inputs and outputs, relays, A/D converters
with voltage dividers, opto-isolated output, LCD display, 8870 DTMF decoder, low
pass filter for tone generation and a 2.5, 3.3, and 5v power supply
Hardware The HamStack is built on the 8 bit PIC 18F series of flash based microcontrollers from Microchip. These powerful “computers on a chip” are some of the most popular devices in use today. As a result there is a very large and growing community of professional and hobbiest designers and programmers that you can draw on for ideas and information. The heart of a project is the CPU board. The HamStack CPU board contains the CPU chip, crystal, voltage regulator, RS-232 interface chip and connectors. When building your own project, the CPU board can be embedded into your project. The starter pack comes with the popular 18F4620 or 18F46K22 CPU. Stacking board concept For experimentation and extending the functionality of the CPU board, you can add the prototype “backpack” boards. This board stacks on top of the CPU board and provides either solder pads or a reusable solderless breadboard block. Stacking inter-board connectors allow multiple backpack boards can be stacked. The backpack board is pin compatible with the Arduino shield boards. The CPU and backpack boards can be stacked on top of the IO expander project board. This board provides several convenient peripheral devices, connectors and sub-circuits. Many projects can be built completely from the CPU and backpack or project boards alone. Learn more about HamStack’s hardware compatibility with Arduino. Software development tools You can choose to write your programs in the basic, C or assembly languages. But, which compiler should you use? There is no simple answer to this question that covers all users. We choose the Microchip C18 compiler and the Swordfish Basic compilers because they are very powerful and there are free versions available. There are also commercial versions of these compilers. While there are some limitations to the free versions, they are very capable and all the examples in the HamStack Getting Started book are developed with the free versions. Ultimately your choice of compiler depends on many factors but if you really need some advice, here goes… Microchip C18 compiler - Very powerful compiler with no code restrictions - The MPLAB IDE has a lot of features to manage large projects - The complexity of MPLAB also means there is more to learn about the environment - The commercial version is an optimizing compiler that generates smaller code Swordfish Basic - Also a very powerful programming environment - Simple, easy to use development environment. - You will be coding in just a few minutes - The SE (Special Edition) version limits the RAM variables to 256 bytes - The upgrade to the commercial version has no restrictions Open source project examples Several examples are provided to illustrate how to design and program with the HamStack. The Getting Started guide book includes the following examples included... - Digital outputs - Interfacing to relays - Digital inputs - Aanalog voltage input - Serial RS232 IO - Shift registers for IO expansion - LCD displays - etc. More complete “mini projects” are also available in the Getting Started Guide or on our web site. Projects include... - Temperature controlled fan - CW beacon transmitter controller - DTMF decoder to serial RS232 - Remote coax relay control How does the HamStack compare to the other hardware and software out there? There will be the enevitable comparison between the HamStack and the Arduino, Basic Stamp, PIC-EL or any of a dozen other platforms out there. There are many fine products on the market and they all have their pros and cons. Some are proprietary, some are very slow or very limited in memory space, some lock you into specific software tools or languages and most have little or no design examples or software tailored to the ham radio operator. Our goal is to make the HamStack a powerful, yet easy to use platform, ideal for learning about and deploying microcontrollers in ham radio projects.