Frequently Asked Questions Link
Questions?User-to-User ForumVideo files

RC-CAM Topics
Author Background
Concept 30 R/C Heli
Project Cost
First Flight
Site Sponsor
Legal Notice

RC-CAM Links
Special Projects
Movie Catalog
Video Site Links


Note: This installment of XCam-FSM incorporates the latest "V3.0" updates. It now includes exciting new features, such as LCD display support, RS-232 output, and audio based signal level reporting. It has substantially improved anti-drift stability too. Those of you that built the earlier version will find that the changes can be incorporated into your older board.

How would you like to add a field strength meter to your XCam video system? This is also known as "RSSI" (relative signal strength indicator). Well, it can be done with a simple digital voltmeter. The basic idea is to measure the AGC (automatic gain control) voltage that is found inside the XCam Rx (receiver). The technique relies on the AGC voltage's personality. Since it must vary with signal strength (that's its job), we can merely measure it to obtain the relative signal strength.

SL1461SA PinoutThe AGC signal is produced by a Mitec/Zarlink SL1461SA FM demodulator IC. This is a 14 pin chip inside the Rx's metal sardine-can. The AGC output is available on Pin 7. You will find that stronger RF signals reduce the drive current and weaker ones increase it.

The nice thing about using the AGC signal is that it vastly simplifies the project. There is no need to demodulate the RF. That can be a royal pain with high frequency systems. Fortunately, the SL1461SA has done that already. Better still, since the AGC is dependent on a valid RF carrier, it reacts only to a qualified signal (or nearly so).

But, all is not perfect in our little AGC world. The AGC signal appears to be current driven, so voltage levels are minimal. The signal range is about 100mV and it has a 1VDC offset. It also drifts with temperature, which can be a big nuisance. You will discover that the raw signal level from the SL1461SA makes it difficult to monitor the slight AGC changes that occur as the receiver tracks the transmitter's RF power.

With some additional electronics it is possible to use the AGC output (SL1461SA pin 7) to determine relative signal level. Not that you would care to build it, here is the custom OpAmp circuitry, shown for reference only, that would condition the limited dynamic range of the demodulator to a more agreeable 1VDC to 4VDC range:

FSM's OpAmp Schematic

Offset pot R11 is adjusted so that the AGC output is 1.0V with a very strong RF source (XCam Tx two feet away). The bad news is that the offset will drift with temperature, especially during the Rx's initial "warm up" period. Frankly, using the raw AGC output signal and the above circuit is not a good idea.

Luckily, there is additional circuitry inside the XCam Rx that conditions the AGC signal into a very respectful voltage range. Better still, it successfully eliminates the AGC temperature drift issue.

The AGC voltage we will use is found inside the XCam's sardine can and is from the collector of a transistor based amplifier. If left as-is, it would track between 2.8V and 4.9V. The lower voltage indicates the strongest signal. The voltage increases linearly as the received RF signal becomes weaker.

To ensure optimized signal monitoring, we will further condition this signal. An LM358 OpAmp is used to remove the excessive offset voltage and it amplifies the results. We end up with a VERY cooperative 1.0VDC to 4.8VDC signal range, which is perfect for a microcontroller based project. The 1.0V level indicates a strong signal and it will increase to as high as 4.8V with very weak (or missing) RF signals. The physical location of the preferred AGC signal will be shown later.

The Ultimate Signal Meter:

XCam-FSM Proto BoardIf you are like me, you have realized that a video Rx signal strength meter would be very handy at the flying field or on the workbench. But using a digital voltmeter was a pain. So, I built a custom PIC microcontroller board that converts the AGC voltage to a 0 - 9 "level" value. The photo on the right shows the prototype.

The microcontroller provides several interesting features. Let's discuss them.

LED DISPLAY: The basic design relies on a seven segment LED display. The signal and battery levels are shown on it. There are four main display states: Offset Calibration, Signal Level, Battery Low, and Battery Test. Here are explanations for each:


C Flashing lowercase "c" during Rx power up. Offset voltage calibration in progress. The XCam's Tx must be on and within two feet of the video Rx during this period.


9 Solid Number, 0-9. Field Strength Signal level, where 0 = weak or no signal, 9 = maximum signal.


9. Blinking decimal dot. Time to recharge Video Rx battery.


9. Solid Number, 0-9, with solid decimal dot. User pressing Battery Test switch. Lead Acid battery 's voltage level, where 0=discharged, 9=charged.

LCD DISPLAY: The LED display is not the only way to review the measured data. You can also connect a two line LCD readout. The $45 "LCD Serial BackPack" #BP1-216N from, is used for this function. Just set it to 9600 baud and connect its three wires to J2 of XCam-FSM. The LCD readout only draws 3mA versus the 90mA that the LED display uses, so your video Rx battery should last longer between recharges.

LCD Readout The top line of the display will show the Signal Strength and Battery levels as "0" through "9" values. The second line will show the raw data values for the two measurements (000 - 255). If you set the LCD to the single line mode, via its configuration switch, then the raw data values can be hidden (they are not needed).

PC INTERFACE: You can also use XCam-FSM's J2 serial connection to communicate to your specialized computer equipment. A PC or embedded microcontroller can be used to process the serial data for your experimental application (e.g., diversity metering, digital voice announcement, etc.). The same data that is sent to the LCD is transmitted to the PC. The raw data offers extensive flexibility in this application and it is scaled as 0.0196V per count.

The serial data format is 9600 baud, 8 bits, 1 stop, no parity. Once a second, 35 bytes are sent as follows:

Þ SIG:X,sBAT:X.sÞÀ[YYY],s[YYY].sss<13>


 = single digit ASCII value, 0 - 9 (level).


 = Three digit ASCII value, 000 - 255 (raw data).


 = ASCII space, hex 20.


 = single byte, hex FE.

 = single byte, hex 01.


 = single byte, hex C0.


 = single byte, hex 0D.

The J2 pin 2 signal provides inverted TTL RS232 serial data. To connect it to a PC all you have to do is invert it and add an RS-232 level translator. Sheet 2 of the schematics shows a simple two transistor circuit that performs that task.

Radio Shack Amplified SpeakerAUDIO TONE ALERT: In addition to the visually reported signal levels, you can also determine signal strength by a unique feature that uses audio tones. By connecting an amplified speaker to J3 pin 2 (Tone output) and pin 5 (ground), you can easily follow signal quality by listening to a beep tone. If you use a TV monitor you can connect the tone signal to its audio input. Otherwise, the $12 Radio Shack #277-1008 works nicely.

There are nine discrete tones, each corresponding to a signal strength value. High pitched tones are heard when the signal is strong. The tones lower in frequency as the signal degrades. A level value of "0" will mute the tones (silence). With a little practice, you will soon learn to associate the tone frequency to a signal strength level. It is interesting to listen to the music that is made as the R/C model travels around (you will hear quite a melody). Any long period of silence while you pilot your model indicates that total video signal loss may occur (time to turn it around!).

AUTO-CAL: Earlier versions of XCam-FSM used a trim pot to set the offset voltage. The offset calibration is now performed automatically using the PIC microcontroller. With your XCam Tx about two feet away, just turn on the Rx. During PIC initialization, the AGC voltage is measured and automatically adjusted, via a PIC created correction voltage. The entire calibration process takes less than two seconds and requires no user intervention. The offset calibration can be aborted by pressing the battery test switch during power up, something that I doubt you would ever want to do.

LOW BATTERY ALARM: The XCam video Rx is used at the flying field using a rechargeable battery. For your convenience, XCam-FSM has a low battery indicator. If the 12V battery is nearly exhausted, the little decimal point LED blinks. When used with a a typical Lead Acid battery (e.g. GelCell), a switch can be pushed to read its capacity level. If you use the AC power adapter this feature will report a low battery condition.

Other Software/Hardware Features:

The PIC microcontroller has some other helpful tricks up its sleeve.

WATCHDOG: For troubleshooting, there is a handy W-Dog (watchdog) signal on J3 pin 4. This signal toggles at a 1Hz rate if the PIC is alive. For it to do its toggle dance, all you need is +5V power and a 3.58Mhz Xtal. If you find the W-Dog is stuck High (5V) or Low (0V), then your PIC is brain dead. If so, just troubleshoot the basics (power and the Xtal). By the way, the PIC will be destroyed if the voltage is too high (5.25V max) or if power is connected to the wrong pins. Although a voltage regulator is used, I suggest you confirm the voltage on the socket before you install your PIC for the first time.

LOW BAT ALARM: There is also a low battery alarm signal at J3 pin 3. This output is normally Low (0V). If the battery is nearly exhausted the signal goes High (5V). You can buffer this with a resistor and NPN transistor to drive a noisy buzzer/Sonalert or a bright LED. This is a nice touch, since deep discharging a lead acid battery can permanently damage it.

DIGITAL GAIN CORRECTION: Rather than use variable analog gain to match the AGC signal to the PIC, it is done in the digital domain. Normally you would find a gain pot on the feedback resistor of the OpAmp. The trouble with this is that it would interact with the OpAmp's offset voltage. To prevent this, pot R9 is used as a simple variable voltage source. Under software control, the PIC measures this reference voltage and uses it to scale the AGC data. It acts to digitally compress or expand the data. The Scale pot provides about ±25% gain change, so it should allow enough range for you to match your XCam-FSM to the Rx's AGC voltage. XCam Rx applications should find that centering the pot is ideal.

VERSION ID: When you first power up your XCam-FSM, the software version number is displayed. It is quickly flashed out, so you have to pay attention to recognize it. It uses a dash to signify the typical dot usage. For example, if it spits out "3 - 0" then you have version 3.0 (release three, update zero). If you use the LCD option then the boot messages will also report the version information.

Special Applications:

Since the SL1461SA and its external amplifier circuitry is used in other popular video receiver designs, this project could be adapted to work with them as well. For example, the Wavecom Video Rx products are good candidates. Some imported wireless video Rx's have an RSSI output that might also be compatible.

XCam Rx operation requires that the software invert the AGC voltage data. However, other RF signal level detection applications may not need to do that. To disable data inversion, remove VCC from pin 14 of the PIC and strap the pin to ground. The PCB layout has a set of pads to help in this effort.

While in this special mode, the Auto-Cal feature is disabled to prevent it from bothering you. The displayed 0-9 levels are mapped into a post-amplified (U2 pin 7) voltage range of 1.0V to 4.8V. You can alter the OpAmp's attenuator (R14/R15) and gain (R7/R5) resistors to suit your special needs. Since the Auto-Cal feature is disabled, setting the offset voltage will be up to your external circuitry.

PIC Microcontroller:

The chosen microcontroller is from the vast offerings of Microchip Technology. Actually, your exact PIC choices have some flexibility. You can use a PIC16C72, PIC16C72A, PIC16C73, PIC16C73A, PIC16F872, PIC16F873, PIC16F874, or PIC16F876. I used the PIC16C72A.

If you use the PIC16Cxx part type, you will need a more advanced chip programmer to "burn" the hex file's object code into the microcontroller. Be sure to enable the Watchdog, Power-Up Timer, and Brown Out fuses during chip burning. These are optional settings within your chip programmer's menus.

If you use the PIC16Fxxx part type, you will be able to use one of those simple freeware PIC programmers. One such source is Martin Clausen's Flash PIC Programmer. I have not tried it, so please do not ask me for help on building or using his device.

The firmware's Hex file is provided in two flavors. Please use the one that has a file name that matches your PIC microcontroller. Using the wrong file will just give you grief.

The entire firmware is written in a popular computer language called "C". You do not need to know anything about the C language to build your XCam-FSM. Besides, I will not provide the source code details (it is not public information). But since all you need is the object code to program the PIC, this is not an obstacle to any XCam-FSM builder.

XCam-FSM Construction:

PCB: Click for large viewI used phenolic perfboard to build my prototype. It is point-to-point wired using 30 gauge Kynar wire. This is the same kind of wire used to wirewrap a board. I just strip a bit of insulation off and solder it to the lead of the part. Layout is not critical, so build it using whatever method you wish. Try to keep the leads of the Xtal and its two caps as short as possible.

You can also download the Printed Circuit Board (PCB) gerber file set and etch a custom board (see drawing at right). The PCB is 1.85" x 2.85" and is designed to fit snugly in the recessed area of the XCam Rx's patch antenna bay. Sorry, but I do not offer an etched PCB. I don't sell a parts kit either.

There are four connections to the Rx, all of which are available on J4 of the XCam-FSM. The three power connections are made to the LM7808 V-Reg IC that is inside the Rx. This TO-220 packaged chip is near the on/off switch. The regulator's left leg is +12V, center is ground, and the right leg is +8V. Use a voltmeter to confirm the voltages before soldering anything.

XCam's AGC Connection Access to the Rx's AGC signal requires removal of the cover on XCam's sardine-can. Just unsolder the top lid and carefully pop it off. Refer to the photo on the left. Connect the J4 pin 3 AGC signal to the location shown by the red arrow. This location is the collector lead of an SMT transistor.

I suggest that you use a 1000pF feedthru cap to pass the AGC signal out of the metal can. You can see the one I used in the photo (just follow the blue wire). Digi-Key does not sell them, so I did not list it on the parts list. Consider it optional.

XCam-FSM Pot Calibration:

There are two pot adjustments that must be set for proper operation.

(1) SCALE ADJUST: R9 is normally left at its centered position. There is no reason to adjust it beyond this if you are using an XCam Rx. Other video Rx's may need to use the scale pot for fine tuning the AGC data.

(2) LOW BAT ADJUST: R13 must be adjusted so that the readout's DP dot blinks when the battery is low. The easiest way to do this is to fully charge the battery, press the battery switch, and then adjust R13 for a value the toggles between 8 and 9. If you do not want to use the low battery detect feature then don't stuff the battery detect parts and jump pin 2 (RA0) of the PIC to pin 20 (VCC).

Lead Acid Chemistry: If a lead acid battery (e.g. GelCell) is used then J1 must be "open" (TYPEBAT control line at logic high). Adjust the pot for a displayed level value of "1" when exactly 12.1VDC is supplied, as measured at the power source. A variable bench supply works nicely (keep it under 14VDC).

NiCd Chemistry: If a 12V (ten cell) NiCd or NiMH battery is used then J1 must be shunted (TYPEBAT control line at logic low). Adjust the pot for a displayed level value of "1" when 11.8VDC is supplied. NiCd users may wish to ignore the Battery Test pushbutton switch since it is not very accurate (due to the nature of the NiCd's discharge curve). However, the low battery warning feature does work perfectly with them.

XCam-FSM Design Documents:

The technical details are available as file downloads. There is no charge for the information when used in a personal (hobby) project. Commercial users must obtain written approval before use.

Please be aware that the information is copyright protected, so you are not authorized to republish it, distribute it, or sell it, in any form. If you wish to share it, please do so only by providing a link to the RC-CAM site. You are granted permission to post links to the web site's main page ( Please respect this simple request.

Schematic Files Schematic Files: PDF file of the XCam-FSM circuitry. Includes Bill of Materials. All components are from
Revision: Rev C, dated 01-08-2002
PIC Object Code Files PIC Object Code: Hex file of the compiled XCam-FSM software. You should occasionally check for firmware updates.
Revision: V3.0, dated 01-08-2002.
PCB Gerber Files PCB Gerber Files: Professional RS274X gerber data files of all PCB layers, including solder mask and NCD drill tooling. If you do not know what these files do, then you do not need them. Rev C.
PCB Art Files PCB Artwork Files: Adobe PDF files of top, bottom, and silkscreen layers. Rev C. Both 1X and 2X scale. Use these if you wish to make you own boards in your personal PCB etching tank.

The Small Print:

All information is provided as-is. I do not offer any warranty on its suitability. That means that if you build and use this device, you will do so at your own risk.

Please note that the PCB artwork is untested. It has been design verified, so I do not expect any surprises. If you use the specified parts then everything should fit correctly. If not, then please let me know.

If you find software or hardware problems then please report them to me. I can only make corrections if I can replicate the bugs, so please give me enough details to allow me to witness the trouble. You are welcome to submit feature requests too, but I generally incorporate only those that have universal appeal.


If you have technical questions or comments about this project then please post it on the rc-cam project forum.

 © 2001-2016 RC-CAM, all rights reserved.