I picked up a few new toys recently. I’ve been looking around for a small microcontroller based device to act as a combined remote face / DTMF generator for my FT897D. The idea is that this device could interface with the FT897D via its CAT port, and allow me to adjust the frequency and mode, recalling the information from internal flash or an SD card.
The remote face would then be mounted on the front of the bicycle, and connect to the radio at the rear to allow easy bicycle mobile operation. An extension of this would be control of a separate 2m radio, and a GPS to allow APRS from the bicycle.
The idea was to have the memory work like a relational database. Rather than just recalling memory channels, and having a big long list, I could scroll through the repeaters by callsign, location (service area), or combined with GPS, proximity. Modern flash technology would make this easily doable.
Likewise, for DTMF, rather than having to carry around a cheat sheet or remember IRLP node numbers, wouldn’t it be nice to just be able to scroll through a node list by country/region/callsign, select one, hit the “Call” button, put your callsign across and have it automatically dial the moment you raised the PTT?
I don’t have the ability to manufacture PCBs of the standard required for ICs such as most 32-bit microcontrollers. SOIC is about as fine as I can muster, and prototyping services are expensive. Thus I was looking for a stamp module or premade board.
Luminary Micro (now TI) make a few nice ones, and during my work at Laidley, I got to use the LM3S8962 Ethernet/CAN evaluation board. One nice feature was that it had the JTAG built-in via a FTDI USB-serial chip. However, the licensing for the board support package irks me — despite their code being useless on anything other than one of their chips, they still see it necessary to modify the BSD license adding a clause that prohibits its use on non-TI microcontrollers. I had a crack at writing my own “free-software” Stellaris library, but haven’t gotten that far with it.
I happened to stumble on this board based around the STM32F103VET. They were being sold on eBay for about $60 at the time, so I decided at that price I’d buy three. ST’s driver library appears to be very liberal in its licensing (in fact they claim there is “no license”, I don’t know if this means “public domain”, or whether I treat it like BSD).
The LCD panel uses the Ilitek ILI9320 display controller with internal graphics RAM, and is capable of 18-bit colour. The board also features a RTC backup battery, Texas Instruments TSC2046 touchscreen controller and on-board RS232 level converter. The STM32 also functions as a USB peripheral, and can be programmed using the stm32loader bootloader script via RS232.
Interestingly, the LCD controller documentation states that no part of that documentation may be reproduced without written permission. I’m not sure if writing an open-source driver classes as “reproducing” the documentation (as I’d be making documented #define statements in C).
The devices come with example source and have a pre-loaded µC-GUI demonstration on them. So far I’ve managed to distill enough out of these sources to get working touchscreen, LCD and UART. I’ll probably start looking at FreeRTOS next and seeing if I can get a workable device going.
Guess now I had better start planning my application. 🙂






Recent Comments