FM90x TTR (full duplex) version of the FM900 Technical note compiled from email correspondence between FM900 users Jan (PE1CSI) and Barry (VK3SW). Contact via [FM900] newsgroup Warning #1: For advanced users only. Warning #2: FM90x radios will not work with EPROM code generated by FPP 3.0. All channel programming has to be done manually. However channel codes for TX and RX frequencies as generated by FPP 3.0 may be used Using a hex editor such as UltraEdit, cut and paste into FM906 EPROM file at the right locations, see below. FM90x radios are duplex and their hardware type numbers are not accepted by the FPP 3.0 programming utility for FM900s. The programming of 90x radios seems to have been done exclusively by Philips using a special version of FPP that did not make it into the ham realms. In FM90x radios, the content of EPROM code blocks $0000 - $1BCF and $1F00 - $1FFF is fixed (but see below for checksum and no. of channels). If your 90x came with an EPROM fitted, make copies of these EPROM areas and save as 'master contents' or similar. Channel codes may then be pasted into this file from a dummy file generated by FPP 3.0 set to a 91x radio. Next, manually adjust EPROM location $1F3E to reflect the no. of channels and then the checksum at $1F6. TX VCO in duplex radio is phase locked to the main VCO that is used in receive, but its frequency is offset from the main VCO by another xtal oscillator. The offset is according to the formula: offset xtal reference = (21.4 + (tx to rx offset))/4 It appears the receive freq controls the TX by a fixed offset, so it is not yet sure what part the tx code in the eprom plays. An interesting note relating to high/low side injection, high or low side is selected to give the greatest separation between the LO and the TX VCO. That is perhaps why the injection may vary in duplex radios. A duplex radio has two VCOs, the simplex tuning will not apply. See FM91 manual for details. If you have a U band radio and you are using it in the U band, then you should program it for U band. You will need to retune the VCO. A W1 band radio may be used on 70 cm by programming it as an U band. Program the radio for the band that you will be using it in, not for what it was built for. For example many A band radios will work on 2 meters programmed as an A band, but not ALL will work, however ALL A band radios seem to work on 2 meters programmed as a B band. Variations in the vcos seems to be the problem. EPROM channel code analysis. Examples: FM906 on 446.4750 RX, 452.250 TX. Full duplex The channels start at $1BE0. Decode original string (FM906) as follows: FC 8F C6 is the receive 6F 7F AE is the transmit Because of the way that the synthesiser is fed serially with 4 bit bytes, and in NEGATIVE logic the procedure is as follows: FC 8F C6 eprom code CF F8 6C reverse the nibbles CF F8 EC add 8 (msb of the nybble '6' is set if not already set, changing 6C to EC, the C is not required. 30 07 1 negate the remaining nybbles one at a time, drop the last nybble (C) 17003 reverse the order of the nybbles Now we have the division ratio.!! 425075 multiply by 25 ( 25khz steps) 425.075 mhz VCO frequency 446.475 mhz 21.4 mhz IF frequency added... this is the final freq Now the transmit code Note: the TX code is not actually used as the TX frequency offset is always thwe RX frequency plus or minus the offset determined by the xtal in the duplex add-on unit. None the less: 6F 7F AE eprom code F6 F7 EA reverse the nibbles F6 F7 EA set the msb of the 'E' as for receive... no difference.. already set! 09 08 1 negate the remaining nibbles one at a time, drop the last nybble (A) 18090 reverse order of the numbers Now we have the division ratio.!! 452250 multiply by 25 ( 25 khz steps) 452.250 MHz TX freq You will find if you decode the data and then SUBTRACT the IF frequency you will get the same receive frequency. EA 78 A6 AE 87 6A AE 87 E 51 78 1 18715 467.875 446.475 MHZ 21.4 mhz SUBTRACTED in this case. You will also need to change the location $1F3E to reflect the highest channel number. As always, ANY change needs to have the eprom checksum adjusted. This code is at $1F6. A simple add-type checksum is used. Add value until checksum ends with FF. The date of programming is at 1FE2. In the fm92 models the channels start at $1BE8. The fm91 has a capacity for 21 extra channels over the fm92. The TX vco for the duplex model, is phase locked at a fixed offset from the main or receive VCO. (example: 5.775 MHz, see above). This is achieved by mixing a sample of the TX vco and the RX vco together, dividing the result by 4 and comparing the result with a XTAL oscillator. The comparison error signal is used to control the TX vco (2-8v) This means that the TX freq always follows the Rx by a fixed offset. The eprom TX code appears to play no part in this system. The audio modulation is added by modulating the XTAL oscillator with a varicap. This means that the TX vco is above or below the RX (local osc) vco by 4 times the XTAL osc freq. This will mean that 4*XTAL - IF(21.4) = the difference between TX and RX example: duplex offset = 5.775 MHz ie 4 * XTAL -21.4 = 5.775 4 * XTAL = 5.775 +21.4 XTAL = (5.775 +21.4)/4 Owing to lack of documentation not everything is known about the 90x versions. If you have an FM91 head, TTR should be possible. Any questions, pleased to assist Jan, PE1CSI, techtext@worldonline.nl