Geekshed – M1BXF Rotating Header Image

Project

BXF Azimuth Rotator Controller

FrontPanel.jpg

 

FrontPanel

I decided to build a new rotator controller to replace my Yaesu G400RC controller (but my design was made to work with virtually any rotator) to give me additional futures beyond the sole analogue position feedback of the G-400RC. I wanted the new design to be digital, have integrated PC control, hands off operation (pick your direction and then sit back) and have different modes of operation depending upon current operation style.  I had previously built a rotator PC interface but not a full blown rotator controller, however my original code covered most of what I wanted to do except the LCD hardware and user inputs.  This is a development in progress, since making it I’ve found I use the rotator controller differently to how I envisaged but I’ll cover that at the end.

2011-09-05 23.54.46

I built the rotator controller around the PICAXE-20X2 chip which is far the best chip in Revolution Educations range and can be used in almost any design.  It supports almost all PICAXE BASIC commands and has 16 hardware inputs/outputs, it also has loads of registers and code space.  After using the PICAXE-20X2 chip on other projects I got my head round some of the advanced commands and my own limitations from when I done my original rotator PC interface on the PICAXE-28X1 chip.

My original premise was to split the rotator controller into modes, mainly to test how I would use each one and after using it I redesigned the code to make it an all in one but the modes were:

  • Manual; standard control were the buttons change direction LEFT or RIGHT.

2011-08-14 13.38.03

  • Fast; this is like manual but the LEFT and RIGHT buttons move the desired heading faster than the physical rate of rotation and the antenna catches up.

2011-08-14 13.38.09

  • Preset; uses a dial (potentiometer) on the front panel to set a desired heading and the antennas track to that heading.

2011-08-14 13.37.50

  • PC Control, heading feedback to the PC works on all modes but setting the heading only works in Manual mode.  PC control also supports L for LEFT, R for RIGHT and S for STOP – this can be used also to interface to additional non PC [other BXF project] controllers.

2011-09-05 22.55.20

The PC protocol is based on Yaesu GS-232 and I’ve included support for AZ only (GS-232A) or AZ+EL (GS-232B), in the GS-232B all EL commands are ignored or answered with 0 degrees.

After deciding what I wanted from the new code I set about looking for a suitable rotator controller, or box, to house it into which I found in Friedricshafen in the guise of a KR-400 control box for EUR 30.  It had a nice big south stop analogue meter in it but that didn’t worry me as I planned to use a 4×20 LCD (which I had bought off eBay).  I cheated slightly by using a Wulfgang K107 LCD interface board (tech doc .pdf) to drive the LCD, this was for 2 reasons;

    1. It allows me to use serial to update the LCD instead of connecting all the parallel pins to the PIC so simplified the design, and
    2. The K107 LCD interface supports large character mode (as seen in the pictures) so allows me to use the full height of the LCD better (easier).

The final code doesn’t have modes but instead allows any input to move the rotator, I did drop the FAST mode as it was redundant and I didn’t use it much.  The use now is you press LEFT or RIGHT to move in the desired direction, spin the preset to take you to the preset direction or press PARK* to take you to a pre-defined heading.  Pressing LEFT, RIGHT or PARK at any point cancels the current movement and start the new one, so if I set the preset to 200 degrees and pressed PARK (which say was set to 120 degrees) then the rotator would cancel heading to 200 degrees and head to 120 degrees.  The same is for the PC input, any PC input to goto a direction would override any current movement and head to the new heading set by the PC input. The PC can read the antenna direction at any time which does not effect the antenna movement.

* At present there is only one input used as a predefined heading, which I call PARK and have set to 120 degree, Europe from my QTH.  The PICAXE-20X2 has 5 additional spare inputs in this project so it’s more than capable of having extra switches attached to these inputs and assigning them to additional presets in the code.

Outside The Case

There was not much modification required to the KR-400 box.  I added an extra button on the front for PARK, originally for changing mode and on the back a 9-way D-type connector which I use for my rotator wiring as it’s much easier to disconnect, also all my other rotators use the same plug so they are all interchangeable. I also added a USB-B port on the back for PC interfacing, internally this goes to a USB<>Serial interface.  Inside is where the main changes are.

RearPanel

CIMG7627

Inside The Case

The original circuit and meter in the box was of little use so the first thing I done was to remove both.  I left the transformer in along with the capacitor over the motor outputs which was also original, after that it was a new PCB with all the required circuitry and that was about it!

2011-07-10 21.04.32 2011-07-16 14.31.56 2011-07-16 15.40.32

2011-07-15 22.24.44  2011-07-15 18.01.56

Calibration

The rotator controller needs calibrated.  This is done in a simple way by either powering on the rotator controller holding the PARK button or if the MINOffset or DirCorrect EEPROM values are 0 (no values stored in EEPROM would be the case after programming). When in calibration mode the user is presented with step by step text based commands on the LCD to follow for calibration.  You only need to do the calibration once after which MINOffset and DirCorrect values are stored on EEPROM and recalled on each power up.

The steps for calibration require the rotator to be moved fully LEFT (CCW) to 0 degrees (north) so the feedback pot in the bell housing reports its minimum value (MINOffset).

2011-09-05 21.41.52

Pressing the PARK button saves this ADC value in EEPROM (MINOffset) which is then subtracted from ADC reads in the main code.

2011-09-05 21.43.12

We then go RIGHT to 360 degrees (north) and save this ADC value (DirCorrect) which is used for the correction factor.

2011-09-05 21.45.18

The ADC value is again saved in EEPROM when the PARK button is pressed.

2011-09-05 21.45.48

Let me explain using my values.  On my rotator 0 degrees (north) returns an ADC value of 22, this ADC value is subtracted from all other ADC reads in the code, the reason is 22 is 0 degrees so an ADC value of 32 would be 10 degrees (it’s not quite that linear but you get the idea).  We then goto 360 degree (north) which in my case is ADC 953.  ADC 953 is actually not yet right as we need to subtract the MINOffset value for the correct ADC for 0 to 360, we then need to convert to a correction factor.

To get the most accurate heading I sample the ADC value in the code 64 times.  I use 64 [times] as this then fills a 16 bit register when sampling the ADC at 10 bits without the chance of it overflowing.  The maximum ADC value at 10 bits is 1024 so 1024 * 64 = 65636.

As my max ADC value is 953 (remember my minimum value of 22) I need to subtracted this off so the real ADC value is 953 – MINOffset or 931.  It’s the value of 931 which is loaded into the register 64 times meaning the register value is stored as 931 * 64 = 59584.  I then divide this by 360 to get the correction factor. 59584/360 = 165.5.  In PIC code we can only divide by full numbers so I take into account if the decimal is greater than 0.5 and if so I add a number to the correction factor to make it closer to the real value, if my result was 165.4 I would then use 165 but as it is 165.5 I instead use 166.

This means if I have an ADC value from the rotator of 546, I first subtract 22 (MINOffset) from it, leaving me with 524 which is sampled 64 times giving a register value of 33536 (in reality the ADC value of 546 could vary slightly on each of the 64 reads, one of the reason we average so many).  I then divide 33536 by 166 (DirCorrect) and I get a heading of 202 degrees.

Did you follow?

Schematic

Download the schematic (uses ExpressSCH)

BXF_AZ_Rotator_Controller_v0.1

Pictures

CIMG7627 CIMG7624 2011-07-16 15.37.06

Code

Download the code

Old Design (PICAXE-28X1)

A long time back I decided I wanted PC control of my antennas, mainly for point and shoot, click on a heading in some PC software and start CQ’ing so that I wouldn’t have to think both about calling and antenna direction.  For this I ordered an LVB Tracker from AMSAT UK but before it arrived I thought I’d have a go at making one myself using PICAXE, it worked but it was crude!

I have a Yaesu G-400RC rotator which is the one with a round controller for the display and uses a comparator circuit to ‘match’ the heading of the controller display with that of the rotator itself, the problem is the comparator swings from –15v to +15v and is non-linear.  This meant interfacing to a PIC chip was possible (using an opamp) but as the voltage was non-linear it would not work so well.

My first attempt was using a PICAXE-28X1 chip which as good as a design it was I didn’t know PICAXE programming as much back then so didn’t fully utilise the chip, or code.  Instead of using the hardware serial (hserin) inputs, which allows serial reception in the background while the code executes, I used the normal ones and had to set a serial buffer timeout which would expire if no serial data was received, during this time all the code execution stopped.  Also due to my lack of familiarity of PICAXE code back then the code wasn’t really optimised, an example was lack of subroutines (Gosub) meaning there was lots of code repeated.  There was no calibration routine so working out the actual heading was left to the user to calculate and enter the correction values, for the ADC value, direct into the code. I’ve not reproduced the code here as it’s in my mind redundant and outdated.  But some of it was salvaged for this project.  What I did end up doing though was to take some of the ideas and features from this code and turned it into my LVB Extender design, an add-on for the LVB Tracker, which could send serial commands to the LVB Tracker giving added extra features and automation to rotator system without the need for a PC.

PICAXE-18M & MXD2125 Based Elevation Module

MXD2125

One of the aspects of amateur radio I enjoy is EME.  When I was active on 2m (144MHz) EME I built my own elevation system using a jack-arm but I then needed a way to feedback the angle.  I tried many ways in the past such as potentiometers then Sam G4DDK introduced me to the MXD2125 dual axis accelerometer device.

Elevation_PCB_Bottom_Arrow  Elevation_PCB_Top

This can be used, along with gravity, to measure tilt, the angle vs down.  Comparing both X & Y axis outputs the resolution can be very small, smaller than is required.  Up until now the way I got the angle back was from one of the axis digital outputs by converting it to an analogue voltage by using an RC circuit which my elevation controller could work with, but not very well.  The main problem is the analogue voltage is not pure DC and I have in the past observed inaccurate readings and sometimes it just fails to work, but this maybe wiring also.  To cure this headache I set out to make the system as fully digital as possible so I decided to measure the digital pulses from both X and Y axis’s directly with the PICAXE-18M and then either convert that to a voltage with a DAC/digital pot or send it to the shack by serial and process it there by either re-designing the elevation controller to work with serial feedback or converting the serial to analogue there.

When I searched for info on this idea I came across a webpage by Frederic, F1OAT who has already used a PICAXE-08M with an MXD2125 – info about his circuit is here and at the bottom of this page here.  I also came access some code which uses a PICAXE-18M to control a Maxim DS1803 digital potover I2C, which I have some samples of, so in the end my solution uses that. I built a test circuit using a PICAXE-08M and with the help of Frederics code proved I could get it all to work.

Elevation_Scematic_v2.0

The finished project uses a MXD2125, a PICAXE-18M, and a DS1803 and provides a fully ‘digital’ means of reporting the angle by converting it to a voltage.  I found at 0 degrees I get a voltage of ~0.2v and at 90 degrees ~4.3v out of the DS1803 which is about 0.045v per degree.  The digital pot has a resolution of 0.0195v per bit when fed from 5v.  No calibration is needed at the sensor end, only as much ‘swing’ as possible between 0 degrees and 90 degrees. As the output is linear the LVB Tracker is calibrated for 0 degree voltage and 90 degrees voltage and so knows what the angle is based on these to stored values, being digital it shouldn’t drift over time, something I think is happening with the RC circuit…

Code:

Images:

MXD2125_Elevation_Mounted MXD2125_Elevation_Mounting_Info

MXD2125_Elevation_Boxed MXD2125_Elevation_Closed

Elevation_PCB_Bottom Elevation_PCB_Top_(Boxed)

 

Revision:

240711 – Project posted to web.

LVB [Tracker] Extender

LVB_Extender_Fitted.jpg

I started using an LVB Tracker by G6LVB (also of FunCube Dongle fame) to control my Yeasu G400RC and KR-5400 rotators which have my directional antennas on them – The G400RC + homebrew jack-arm elevation was mainly for EME and the KR5400 was for satellite work.  I had to built an elevation feedback circuit, I chose a MXD5125 for this but I found I still lacked some of the features of more advanced rotators and with the LVB Tracker being controlled by serial using the GS-232 protocol I found this would be easy to remedy using a PIC.

LVB_Extender_v2

The main features I wanted to add were the ability to input a wanted heading and then leave the rotator to goto that heading instead of having to hold any button down as the rotator can be slow and my attention span is short.  I wanted to have a button for ‘park’ to put the antenna in it’s ‘resting’ direction and an easy way to just rotate 45 degrees or 180 degrees (flip) at a time, I also added a button to toggle a relay which was used to switch the satellite antennas from RH to LH circular polarization and back again.

This shows how I interfaced the LVB extender (in yellow) with the LVB Tracker (in blue)…

LVB_Extender_BlockDiagram

In the end I used a PICAXE-28X1 chip as I needed a bit of program memory and lots of input pins.  The input buttons consist of UP, DOWN, CW & CCW plus LH/RH, Park, +45 degrees and +180 degrees.  The serial from both the LVB Tracker PIC and PICAXE-28X1 are TTL so I connected the serial to the LVB Tracker between the PIC and the MAX232 chip used for RS-232 level conversion.

Whenever UP, DOWN, CW, CCW, +45 degrees or +180 degrees button are pressed the first thing my LVB Extender has to do is read the current positions using the GS-232 “C2″ command which prompt the LVB Tracker to output both current azimuth and elevation positions which I read and store. From these positions the code works out what needs done with them.  If it is UP, DOWN, CW or CCW then it runs a loop to increment or decrement the original position for the duration of the button being pressed with increasing speed over time.  It writes the value back to the LVB Tracker on every loop.  If the +45 degree or +180 degree buttons are pressed the LVB Extender again reads the current positions using a “C2″ command and either adds 45 degrees or 180 degrees to the value and writes it back to the LVB Extender ensuring the write command has the originally read elevation value to this is not effected.  The Park button sends a stored position, from my old QTH in JO02ab the best heading for me was 127 degrees azimuth and 0 degrees elevation (best for monitoring 144.300 into Europe).  The Park heading is programmable only in the code, I made no provision to set it on the fly, main because I didn’t know how when I created this, I do now and will add it if requested.

The LH/RH button only toggles a relay to switch a voltage to the antennas.  If azimuth value reaches 360 degrees the code converts it to 0 degrees and if it reaches 0 degrees it converts to 360, both are able to be set if you like to go over the limits a little.  On elevation the counting is limited to between 0 and 90 degrees.

LVB_Extender_AND_LVB_Tracker LVB_Extender_Buttons

LVB_Extender_Fitted LVB_Extender_Boxed

Code:

 

Revision:

240711 – Project posted to web.

Icom (CI-V or band Data) to Yaesu BCD Band Data Converter

After the 2011 Camb-Hams DX’Pedition to Arran and using the Discovery 64 on 6m and making some good contacts on it I decided to bite the bullet and go buy a decent 6m Amplifier.

I have been thinking of getting an amplifier for HF and 6m for a while but didn’t want to have 2 extra amplifiers in the shack, one for HF and one for 6m (50MHz).  There are a few options about for a combined HF + 6m amplifier and luckily a Yaesu VL-1000 Quadra (1KW HF and 500w on 6m) recently came available second hand at Martin Lynch and Sons so while standing out in the single spot in the garden at the Arran DX site where I could get decent and reliable Vodafone coverage I gave them a call, agreed a price and had it shipped, bullseye!

The Quadra needs to switch bands for bandpass switching which can be achieved by sniffing RF from the exciter or via Yeasu’s 4 bit Band Data interface which most Yaesu radios support.  However my exciter is an Icom IC-756pro3 and Icom do external band switching by varying a voltage on a single pin between 0v and 8v depending upon the band selected (note WARC bands are not individually identified), I could also use the CI-V frequency data (with CI-V Transceive set to ON):

image

L = Low / 0v, H = High / 5v

The Project

CI-V to Yaesu Band Data_v1.1 Icom to Yaesu Band Data_PCB_v1.0

So what I need to do is build an interface which takes the Icom Band Voltage from the Icom IC-756pro3 ACC2 port and converts it to Yaesu 4 bit Band Data.  If I wanted to use just CI-V I could use a PICAXE-08M (8 PIN) which support 4 output pins, Yaesu Band A to D and one serial in PIN used for CI-V but the SERIN support for the 08M is limited.  I decided to go for a PICAXE-20X2 as it has a hardware serial pin, supports 19200 baud, the fastest the IC-756pro3 manages and gave me plenty of spare pins.  My final spec sheet was:

  • Auto switching between CI-V and Icom analogue band data as source input.
  • 4 pins outputting Yaesu Band Data to the Quadra VL-1000.
  • 8 additional user configurable pins, i.e. selected pin go high on selected band to drive external equipment like coax relays.
  • Support remote (on/off) switching of the Quadra VL-1000 by providing 13.8v to the Quadra when the IC-756pro3 is switched on.
  • Have the PTT line integrated within the interface connections, it is not connected nor needed for the PIC.

NOTE:  I found the VL-1000 manual is close to useless with regards to the Pinout diagrams – it has a picture with pins numbered but has a list next to it in in letters A,B,C etc…  I also blew the 5A fuse inside my IC-756pro3 and damaged a track later on by not getting the 13.8v on the correct pin, i.e. following the manual so be warned.

The PICAXE code:

Download the code, schematics and PCB layout here.

The code is split into 2 sections based on whether the CI-V is connected.  If the CI-V is connected by default it is high which can be detected by the PIC which is what the line in the code equalling ‘IF CIVinPIN = 1 or CIVorADC = 0 then’ does.  If there is CI-V then the PICAXE runs the CI-V routine to decode the frequency and works out the MHZ and 100KHz, i.e 14.123MHz becomes decimal 141.  If there is no CI-V connected (the CI-V input to the PICAXE chip will be 0v) then the PICAXE uses a routine to look at the band data voltage using ADC to determine the band, first you need to make sure you don’t put more than 5v into the PIC, so you divide it with a couple of resistors R1/R2 so the voltage is 0.6 that of its original (i.e. 8v becomes 4.8v to the PIC). You then simply read the voltage as a function of ADC, 4.8v is 96% of 5v (we are using READADC10 which is 10bit value and the max ADC value is therefore 1024) so 4.8v = 96% of 1024 the [max] ADC value is 983. All we now do is for each band give a lower and upper limit for each ADC value (accounting for rig variance) and if the ADC value falls within a range then the appropriate band is chosen and BCD pins set accordingly.

If the band voltage is say 6.2v out the radio what band are we on? Reduced first by R1/R2 the voltage becomes 3.72v into the PIC, this has an ADC value (3.72/5v * 1024) of about 762 which rightly falls into the 80m band range. 80m has a lower ADC limit of 700 and an upper ADC limit of 799.

Remember the PIC code is split in 2, the top half is for CI-V decoding and the bottom half band voltage decoding.

When the radio is switched on 13.8v is taken from ACC2 on the IC-756pro3 which powers the PICAXE and also goes to the VL-1000 to switch it on, ensure the remote switch on the back of the VL-1000 is set to ON.

Updates:

230711 – Version 1.1 released:

  • Improved CI-V string searching
  • Additonal checks in Band Data routine to ensure we didn’t get there by mistake

Code now works fine with HRD controlling the radio over CI-V and all band switching works independent of whether the radio or HRD initiates a band switch.

170711 – I received an email from Jack Brindle, W6FB who commented “There is one change I would suggest in the output table, though. The BCD code 0×0 is not defined, but is used by some manufacturers. For example Elecraft uses it in the K3 for 60 meters. However, 0xF (all ones) _is_ defined as a no-band selector.”  So with that in mind I’ve changed the code so ‘no band selected’ is now all 1’s (0xF) – which turns out to be 70MHz, see my post about that.

150711- I received a comment from Barry GM3YEH who uses the Icom to Yaesu BCD Band Data Converter on his radio with N1MM contest logging software and a 5B4AGN  BPF and found the rig stays in sync with N1MM software but the BPF only changes to the correct band temporarily then drops into a ‘no band selected’ state after a second or two.  Barry suggested it might be down to N1MM polling the radio which the interface sees as 0v on the CI-V line which makes the code execute the Band Data Voltage code for which there is no band voltage data so it defaults to 0, ‘no band selected’.  On 230711 I reworked the code so it now has a much better CI-V ‘search’ string so it doesn’t get false values and also added an extra check in the Band Voltage code as there were times, as mentioned above, that the code would move there even if it was receiving CI-V data.

/END UPDATE:

IMG_20110514_142314IMG_20110514_130445IMG_20110514_130436IMG_20110514_012341IMG_20110514_012328IMG_20110512_195125

SCAM12 Installation

So I was convinced for my new mast I would use a SCAM12 after seeing G4ERO’s installation (picture on his QRZ page).  I had done some antenna work round at Colins QTH and seeing how simple it was to erect (BINGO!) and take down.  The mast is approx 3m when down (with antennas on) and the top of the SCAM12 is 12m when up.  The SCAM12 is pneumatic and requires about 22PSI of pressure when fully up and mine stays up for days. The SCAM12 is fully rotate-able and sits within a swivel base/mount but I use a rotator at the top which you can see below the 6m/4m antenna so you can work out and see the SCAM12 is low when down. I do plan to move this to the bottom when I get round to working out how best to do it.

IMG_20110325_165858

And when up:

IMG_20110417_161248

Mounting the SCAM12 I again took advice from Colin G4ERO and dug a hole about 100cm x 30cm x 30cm, bought a 2.5m long 178mm x 102mm x 19mm universal beam, modified it, (see below) put it in the hole and aligned it for vertical. I then concreted the bottom 50cm of it, let it set and filled and packed the rest with mud.

IMG_20100918_162558

As the SCAM12 is able to rotate, there is a bearing in the bottom of the mast so it is not a good idea to mount it direct onto the ground.  So I welded a bracket on the bottom to hold the SCAM12 off the ground.  I then used threaded bar and some angle iron to hold it against the universal beam with some wood between both to tighten against.  Since these pictures were taken I’ve repainted the universal beam Hamerite ‘Highland Green’ which is more similar to the SCAM12 colour.

IMG_20100926_134357 IMG_20100926_134322

As the mast is pneumatic I got a small compressor for 30EUR at a Dutch Radio Rally which take 2 minutes 40 seconds to put the mast fully up.  I’ve fitted it with a remote control and pressure switch to it automatically switched off when at the correct pressure. The SCAM12 comes with a key to allow the air out and it takes a minute to come down.

IMG_20110227_193410

There are guying points for 4 guy ropes on a slip ring but so far I have not guyed the mast at home and it’ has been up in quite strong winds, if I’m worried about the wind I only put a few sections up.  The sections can also be locked off if the SCAM12 is planned to be up for an extended period of time.

SmallWonder Labs PSK-20 Mod to 20m WSPR

IMG_20110618_235458_thumb.jpg

I bought a Small Wonder Labs PSK-20 kit a few years ago when I was dabbling with HF data modes.  The PSK-20 is, from the PSK-20 manual “[a] transceiver on a single PC-board design measuring 4.6" x 5.27" (12 x 13.4 cm). It is functionally a crystal-controlled SSB transceiver with slightly wider than normal IF passband characteristics. It covers the range of 14.070 to 14.074 Mhz.”. It comes in kit form and unfortunately is no longer available, however a note on the Small Wonder Labs webpage states “[there] will be a successor- schedule is uncertain”.

PSK20Parts WSPR

I built my PSK-20 then never used it.  It sat in a drawer until recently I thought I could use it for something other than PSK.  With the relatively low TX output, mine gives 2w out, it would be ideal for WSPR.  I was hoping I would be able to re-tune it from the designed 14.073MHz to 14.0956MHz but the pull on the crystals was too much and it wouldn’t do it.  The design of the PSK-20 is based on a 9MHz IF and a 5.07MHz LO.  The LO is just a 5.0668MHz crystal and the 9MHz is a 9MHz crystal and an additional eight 9MHz crystals used in crystal ladder filters, four in the RX path and four in the TX path.  As the design is a simple mixer it was easy to decide that changing the crystals would get me onto 14.0965MHz so I purchased 10 x 10MHz crystals and 1 x 4.096MHz which would mix to give me the desired 14.0965MHz which is used for WSPR on 20m. The RS part numbers for the crystals are 6936952 for a bag of ten 10MHz crystals and 2261572 for the 4.096MHz crystal, total price for both was £11.08.

I fitted the new crystals and aligned the PSK-20 onto 14.0965MHz as seen on my frequency counter and started using it with WSPR but nothing was decoding and nobody was decoding me.  I checked I had TX output and then found out the PSK-20 is natively LSB, this meant I was on the ‘wrong’ frequency and also as WSPR is an FSK type mode, the tones were inverted.  I’m not 100% sure if WSPR is tolerant of which mode it is on but PSK31 is for which the kit was designed – in PSK you change the phase not not tone to signal information.

So the problem I had now was to get the PSK-20 onto USB and although I found lots of people asking how to do this on various internet forums there was no answer on how to do it.  So I emailed Dave Benson, K1SWL, the kit designer and proprietor of Small Wonder Labs asking how he would suggest I mod the PSK-20 to USB.  I got an answer 40 minutes later, although I had gone to bed, fantastic support!!!

Dave suggested I put a 10uH inductor in series between the 10MHz IF crystal and the C38 trimmer to pull is below 10MHz, to about 9.998MHz.  First I had to cut the track between Y6 (the 10MHz IF crystal) and C38 on the underside of the PCB.  I then fitted a 10uF inductor so that it was in series between Y6 and C38.  I didn’t have a surface mount inductor so it is obvious how and where I mounted it in the picture below.

 

DSCF8776_Highlighted DSCF8778

So I switched the PSK-20 on, connected some headphones to the AF OUT connector (watch as the volume it very high) and tuned my IC-756pro3 to 14.0965MHz USB and sent some audio, tuning both C38 and C42 (the trimmer for the LO) I was able to resolve USB! Bullseye!

IMG_20110618_235458

I then connected up the PSK-20 to WSPR and let rip.  I get about 2w output but at first I run using just 0.5w with fantastic results.  Here is a 12 hour plot of where I’ve been heard.  I use a 1/4 vertical on 20m with the feedpoint 1.5m above ground and 8 radials which act like guy ropes.

First12hours

If you would like more information or details on how I achieved this then contact me using the Feedback option on the site.

Masthead + PA + Radio Sequencer

IMG_20100706_223747

My 2m station includes a masthead preamp, a 2 x 4cx250 linear and the IC-910. In order not to blow up the preamp I needed to get a sequencer, me being me I decided to design and build one, total cost with the box was around £10. This is a very simple design and uses a PICAXE-08M for the control as it supports 5 input/outputs. All I needed was 1 input (PTT) and 3 outputs, preamp, TX Amp and radio. The preamp, TX Amp and radio outputs are driven by relays so can be configured for NO or NC when the sequencer is not active, the non sequenced state can also be set in the software too.

The delay on TX is 100ms between the preamp going off and the TX amp coming on and then a further 50ms for the radio to move into TX. On un-keying the radio is moved into RX, 50ms later the TX amp is removed then 100ms later the preamp comes back on. My initial design used 4 LEDs, a green one for power, one red/green for TX/RX, a green one to indicate preamp on/off and a red one for indicating the TX has come on.  You may decide to omit some of them.

IMG_20100706_223818 5260843_orig IMG_20100706_223740 IMG_20100706_223757

Updated to v1.2

I’ve done some updates to the design based on feedback from users.  The main update was to add a means of adjusting the timing sequence manually so I added a potentiometer to one of the inputs and read the ADC voltage on it.  The ADC value is then added to the default value giving an additional delay meaning the sequence delay can be set between 100ms to about 1 second.

The update also allowed me to clean up the code by adding comments and symbols.  this should allow whoever builds it better understand how to customise the outputs and give a better overall understanding of the PICAXE code if they are new to it.

NOTE: If this design is to be used with a radio which goes into transmit when the PTT line is grounded then you can omit D3 and REL3 and connect the PTT line of the radio directly to the collector of Q3.

Sequencer_Scematicv1.3

Download v1.3 of the code directly.

40m 1/4 Vertical [Epic] Antenna

4m_vert_40m_only_thumb.jpg

So the antenna farm at M1BXF QTH just got larger with the addition of a 40m 1/4 vertical.  I’d been thinking about this antenna for while as verticals are good for DX, more in this in a moment, and require little space to erect, but does need space for radials.

The antenna is based on a 10m fiberglass pole for the vertical element support, 17 radials and a clothes line ground screw to hold it up.  I ended up with 17 radials as I cut one for length then made a ‘jig’ which allowed me to make 4 at a time after, so I made 3 x 4 in the jig + the one I had…  I put screws in at each joint of the 10m pole also so there was no chance in it falling down into itself.

CIMG7401

As you can see I erected it near some trees, this is mainly to make it less noticeable in the direction of the house which is through the trees as it were.  To help make it blend in further I painted the pole Hamerite ‘highland green’.

The radials all connect to a circular copper bar I made which goes round the base of the antenna with a short wire going to the ground of the feed-point.  The radiating element ends in a circular crimp, another is also soldered to the SO-239 centre pin so the method of connecting the vertical radiator to the feedpoint is with a nut and bolt, click to enlarge.

IMG_20110605_151120 CIMG7403 

Once all was connected up I felt like tuning it, this only took 2 attempts to get it to VSWR 1.07 @ 7.1MHz as you can see in the first plot, the second plot shows the other resonances upto 60MHz so it is usable on 15m (21MHz) also, albeit with an ATU as the VSWR minimum is outside the 15m band.  At first the VSWR @ 7.1MHz was 1.2:1, getting it lower was me being picky.

4m_vert_40m_only 4m_vert_1MHzto60MHz

So why is this antenna epic?  Well 5 minutes after connecting it up and tuning through 40m I heard VK7AC working a pileup, 3 calls later and we managed 58/57 either way so the first QSO on the antenna was with Australia (Tasmania) @ 17255km, EPIC!!!

Using Power Point for Project Decaling

So I build loads of project which in the end require labelling, but how to do it so it seems professional?  In the past I used to just make lines of text which was more or less the project name and my callsign, printed it and stuck it to the box, not very professional!

Well while looking at some projects on the net over the weekend I found a Cumbria Designs Minicounter frequency counter built by Matti Niskanen, OH2CF which looked like a real professional product, the decaling was superb.  Reading details of the project Matti explained he uses Microsoft Power Point to make the panel designs, it suddenly hit me that it was such a simple way to do it. I guess Visio would also do but MS Power Point comes with Office 2007 which I have installed and creating shapes, text, lines, you name it and then positioning them would be simple.

I thought I would give it a go on my External Voice Keyer which I’ve just connected up and started to use.  At the start the front panel is all based on handwriting, which works but it just doesn’t look professional.

IMG_20110530_200740

I then thought instead of measuring where all the holes, LEDs and switches where I would take a photo of it, load it into Power Point and then use it as a template, here is a moc up of what that looked like, this is the finished and tweaked overlay put back onto the photo for this article but it does show the picture (perspective) wasn’t quite right but it did save loads of time measuring.

image 

You can see the design on the screen with the photo removed, then printed and then with the holes where the LEDs, switches and variable pot go.

 IMG_20110530_204114

IMG_20110530_204129 IMG_20110530_204137

After the design was prepared with the various holes cut out, it was glued using pva glue to the metal front panel. The finished design makes the Voice Keyer look much better than it did before. 

IMG_20110530_213707

This is rev 1, you can see the one fitted to the Voice Keyer has my callsign and project name in handwriting on it whereas the designs above have it added within Power Point. I’m going to add a few additional switches to the Voice Keyer in the week as it supports 4 voice memories which will be handy to switch between so I will add a ‘next memory’ button and an erase button so the design will change to accommodate them.

Update 020611:

I’ve now added the extra switches and re-arranged the front panel including a new colourful decal…

IMG_20110602_200813 

And updated my SO3R shack controller to look very similar…

IMG_20110603_192828

Now onto other projects…

4m Transverter

20120115_113708 (Medium)

A band I’m interested in is 4m which in the UK we are allowed 70MHz to 70.5MHz.  I’m mainly interested in the MS and ‘E’ capability of this band but very few commercial SSB radios have 4m built in so the easiest way is to transvert, usually from 28MHz with a 42MHz oscillator to get 70MHz.  For those unfamiliar with transverting this mixing will produce 2 frequencies, one 42MHz above and one 42MHz below, if we take 70.2MHz this means an unwanted one at 112.2MHz and the wanted one at 28.2MHz.  All we do is put the IF through a 28MHz filter to remove the unwanted frequency.

Although there are few commercial radios there are many commercial 4m transverters available.  The one I chose was Bo’s OZ2M which has a single 28MHz IF transceive port and separate 70MHz RX and TX ports.  TX output is adjustable on the board for a maximum output of about 150mW and the RX path has about 15dB gain. My first 4m system consisted of a boxed OZ2M transverter with a Spectrum Comms TA4S4 4m amplifier providing 45w for the 150mW drive in the TX path.

2010-04-05 20.17.04

The original M1BXF transverter project

This worked well and it required an RF relay to combine the 70MHz RX and TX lines after the amplifier which meant it made the setup a little more complicated than I would have liked but it worked.  I used it on Camb-Hams DX’Peditions to Mull in 2008 and Harris in 2009 with good results, about 33 QSOs in total.  45w was fine but in the UK we are allowed 160w so for VHF NFD 2009 and the Camb-Hams DX’Pedition to Harris in 2010 I decided to make a better PA.  This started with buying a Bremi BRL-200 CB amplifier which can be modified to 4m.  I had little success at this and could barely get 60w out when the mod quotes over 100w.

Bremi_Xverter 

I had a spare Bremi case, not the one which I used for the 4m amplifier, it was from a CB amp which died years ago, when the transformer failed, and a large heatsink so decided to look into make something a little more powerful and compact. I found a 300w PA covering 70MHz on eBay which used the MRF-151G transistor, this required about 5w drive for 300w out.  The MRF-151G is a 48v part so my next task was to get a decent 48v PSU.  eBay again helped and a 48v 20amp PSU was bought.

IMG_20110102_1709052010-04-21 22.50.252010-04-21 22.38.112010-04-21 20.08.23

I managed to get the 48v PSU in the Bremi box but due to the height of the caps on the PSU board I couldn’t get the amp in.  In the end I had to invert the heatsink and have the amp sitting external to the box.  This worked but it meant it was exposed and the box was rather empty, not what I had wanted. The other point was generating the 5w drive.  The transverters output was 150mW which wasn’t enough and the Spectrum amp was 45w which was too much.  Thankfully as the TX line was separate to the RX line I was able to add some attenuators on the TX path between the OZ2M and Spectrum amp so it would only generate 5w.  Again this worked but lets look I now had a boxed transverter with the 70MHz transmit leg going to a 30dB attenuator then into the Spectrum amp then into the MRF-151G amp then to a coax relay.  All rather messy.  I used this for a while but it wasn’t good.  If I wanted to do crossband between 4m and 6m there was an additional coax relay.

I liked the Bremi box and I knew the system worked with the OZ2M transverter performing well and the MRF-151G producing a stable output – but it was a mess and nearly required a diagram to connect up!  I decided to stay with OZ2M transverter but I didn’t want to dismantle my original one as it was quite well constructed so I bought a second one to save the first from destruction :)   I also removed the 48v PSU from the box to make space for the amp, transverter and other bits such as the coax relays, logic and other bits.

Final [Current] Design

Another thing I needed to overcome was the 5w drive for the MRF-151G amp.  I found a design online by GI0GDP using a single 12v device.

IMG_20110105_181630IMG_20110106_201117

This was mounted on the heatsink with the MRF-151G amp so that 150mW from the OZ2M transverter would easily produce 300w out the MRF-151G amp.

Some of the other changes were bringing the coax relays into the box.  I use a YU7EF duoband 6m/4m dual band antenna so I need to bring a 6m feed out to the 6m radio.  The antennas comes into the box on a CX-140N coax relay which when the transverter is off (or x-band is enabled) bypasses the transverter to an N-Type on the rear and when energised connects the antenna to another coax relay switching between 4m RX and TX.

One new addition was the addition of an 4×20 LCD to show the status of the amp.  I monitor the heatsink temperature, the 12v and 48v lines and also which state the system is in, RX or TX.  The logic is based on a PICAXE-20X2 which controls which relays are energised and when the fan on the heatsink should be on, based on transmit state and temperature.  There is a 4pin DIN on the back which is used for PTT and outputs 12v when the transverter is on, this is for my Icom IC-756pro3 which needs 12v on one of the accessory jack pins to enable transverter mode.

IMG_20110310_212851

4m amp open2IMG_20110106_201126

Now that the project is finished I now have a single box (rather cluttered) containing my 4m transverter, the amplifiers and RF switching. I can connect my 6m/4m antenna to it and take the 6m side to my IC-756pro3.  I added support for crossband on the transverter, like my original version, so I’m able to operate with the transverter used for 4m transmit with receive on 6m (the input relay de-energised) or receive on 4m and transmit is on 6m.  The output power can be adjusted from 2w out to 280w, the RF meter is calibrated for full scale being 160w, the UK limit