Bored with this page? Click here to return to main index.


RCMICRO

Microprocessor based radio control encoder


The RCMicro is a microprocessor based radio control encoder specifically designed for use by original equipment manufacturers and technically competent amateur enthusiasts. The RCMicro consists of a small printed circuit board sandwiched back to back with a two line liquid crystal character display. Connectors are provided on the board for connection to switches, analog controls, power, communications and keyboard. The RCMicro runs from the transmitter battery supply and consumes such little power as to be considered insignificant compared to the power requirements of the rf sections.

The RCMicro is fully user programmable. Software is prepared and compiled on an IBM compatible PC running Windows and uploaded to the RCMicro using an RS232 serial communications link. The software to compile and upload is freely available to users of the RCMicro. Each model type program is limited to 256 bytes of code. The number of model type programs is limited only by the size of the available memory and the size of the compiled programs.

Compiler and technical description for Model Description Language version 1.0 MDL v1.0


RCMicro - Basic specifications

The following basic specifications are applicable to the RCMicro V1.0 currently shipping. (note: Electrical specifications have yet to be characterised).

Output PWM or PPCM selectable via user interface, 8 channels of control information in PWM mode and 16 channels in PPCM mode.
PWM - 1500us neutral pulse width, 500us deviation, 20ms frame width (variations on request)
PPCM - as per PWM plus proprietary packaged data protocol
User interface 6 normally open keys, 16 character by 2 line LCD
Analog interface 10 ratiometric analog inputs for connection to the wipers of 50k potentiometers
Digital inputs 16 normally open switch contacts
Power 5.5 to 16 volts at 6mA nominal, 15mA maximum
Outputs RF signal - FET output
RF enable - FET output
Serial out - RS232 serial data out
RTS - serial data hardware handshake line
Inputs Serial in - RS232 serial data in
CTS - serial data hardware handshake line
Tacho - Tachometer input
Size 84mm x 44mm x 19mm, 4 mounting holes at corners
Construction Fibreglass pcb, double sided & plated through holes, silk-screened and solder masked both sides, surface mount technology.
Connectors Molex Milligrid, 2 x 14 way, 1 x 20 way, 1 x 8 way
Programming language MDL v1.0
Memory options 2, 4, 8, 16 KBytes EEPROM (8 standard)
Program capacity 2K - 4 model types and 5 model memories
4K - 7 model types and 15 model memories
8K - 17 model types and 25 model memories (standard)
16K - 34 model types and 50 model memories
(based on maximum program sizes of 256 bytes)
 


RCMicro - Electrical description

The RCMicro consists of a high speed microprocessor (embedded controller), an 11 channel ratiometric input 10 bit analog to digital converter, an EEPROM non-volatile memory, an RS232 communications interface device, two analog multiplexers, a 2 line by 16 character liquid crystal display and a speaker. Power from the transmitter battery is regulated on board to 5V for the logic circuits. Transmitter power is used to supply the analog input potentiometers and also the onboard reference divider. The ratiometric inputs allow measurement of the potentiometer positions with thermal errors equal only to the difference in temperature coefficients between the potentiometers and the reference divider. Transmitter battery voltage is measured by measuring the regulated 5V (the reference is powered from the transmitter supply). 16 normally open switch contacts can be connected to the analog multiplexers for general purpose switched input. A charge pump type RS232 interface device is used for serial communications and both data lines and two handshake lines are implemented. A high efficiency fixed frequency sounder is driven by a FET and powered from the transmitter supply for aural user feedback. A surface mount trim pot is provided for LCD contrast adjustment. Outputs to the RF section are FET buffered with 10k pull-up resistors to the transmitter supply. A spare input line is currently assigned as the tachometer input and a spare switch input is assigned as the tachometer enable input. Master/slave (buddy box) operation is fully supported as is direct communications between transmitters or between the transmitter and a personal computer. Spare i/o lines on the micro are used as sensors for the wiring arrangement on the attached cable thus making it unnecessary for the user to indicate to the software the desired communications operation.

 

RCMicro - Software description

The RCMicro software is contained within the microprocessor and is encrypted to prevent unauthorized copying. The software and its detailed operation are copyright to Eagle Air and the result of nearly two years of unpaid work and much family sacrifice, however a brief overall description of the operation of the software will be given here.

Most of the software is written in ANSI C for reasons of portability and maintainability. The performance sensitive parts of the software are coded directly in assembler.

All analog inputs are read to 10 bits of resolution and all internal processing is performed as signed 16 bit arithmetic with the exception of mixing and scaling which are performed as signed 32 bit arithmetic. The analog to digital converter and the EEPROM are communicated with over an SPI bus which is fully supported by the micro in hardware. The LCD is driven from a 4 bit data bus and software polled. Serial communications are handled directly by hardware within the micro. Switch sensing is coded in C as bit manipulations and is very fast. Pulse generation is performed by specialised hardware within the micro and is interrupt driven providing an output resolution and accuracy of 1us which is 10 bits (1 part in 1024) over the full scale output range.

Special features implemented are as follows. For every output frame a self test is performed on the analog to digital converter and the results of this test are stored in a system flag accessible from the user's program. This feature enables special processing in the case of an a/d failure and thus the capability of fault hard code. The mixing algorithms implemented are mathematically correct and yield correct results for all types and proportions of mixing without either over-ranging the output or losing output resolution. Two timers are implemented in software. The first timer is a real time stopwatch with a resolution of 1/50th of a second accessible through the user interface for general timing use. The second timer is accessible to the user program and is specially designed for use as an output rate of change timer thus enabling such features as servo speed control (in practice, servo speed can be controlled from full speed to 5000s for full deflection). A particularly useful application of the timer is in the application of elevator trim slowly over a long period to compensate for trim change due to fuel burn off.

A low power sleep mode is implemented in software. After a user definable time period (say 4 minutes) of inactivity the encoder will turn the rf section off. This reduces the transmitter power consumption by more than a factor of 10 and on a normal battery pack will run under these conditions for more than 3 days. Any movement of a control stick or operation of a switch will cause the encoder to wake up immediately and the rf section to be turned on again. A display indicator shows which mode the encoder is in and it is possible to wire a remote indicator to the rf enable line (such as a high intensity flashing led to indicate sleep mode).

The model processing software (model description) is provided by the user. The model description is read from EEPROM and processed one instruction at a time by an interpreter which uses the hardware dependent functionality built into the micro and its software. The interpreter is hand optimised in assembler and is extremely fast. Programs are limited to 256 instructions, however the sample files show a fully featured 2 servo wing F3B description implemented in 58 bytes so the 256 byte limit is not really a burden. The model description language is simple and rather obvious once you have seen it, but not so obvious if you have to develop it. Over 50 revisions were required to bring together all of the design compromises to an optimal solution.

The user interface is simple and fixed in its format so it only has to be learnt once. It is also un-dedicated meaning that the functionality of the user interface and its presentation to the user is determined by the user program (a side benefit of this is language independence).

 

RCMicro - Keypad

A keypad is supplied with the encoder and is designed to connect to the narrow pitch fpc connector on the encoder board. The keypad is manufactured from UV and chemical resistant polyester and features a clear window for the lcd display and embossed switches which provide tactile feedback. The switches are embossed and do not use the common stainless steel domes. As a result they are capable of in excess of 2 million presses before failure which far exceeds the capability of mechanical switches.

The keypads were extraordinarily expensive to make, almost all of the costs being in the tooling. Production costs are quite modest. For OEM's, the panel artwork can be changed quite inexpensively, requiring only the production of new screens for the colours. Don't even bother to ask about altering the layout or physical design - the price is frightening !!


Copyright © Eagle Air Australia Pty.Ltd. 1995-1999. All Rights Reserved.