FD 2013

meatonforkOnce again, the Vienna Wireless Society participated in ARRL Field Day from Burke Lake Park in Northern Virginia. For the last three years, I have captained the non-40m CW tent. The plan this year was slightly updated to move the stations closer together, while maintaining adequate antenna spacing.

sunnySpiderI had a few secret weapons this year. First, with the move up the hill, I was close to the spider beam mount that I was able to use it to work 20 meters, and for a bit of the contest, 10 meters. The 40m station typically runs 15 meters, so I did not use the beam on that band. When the spider beam went up, I also tacked on an AO-50 omnidirectional 6 meter antenna, so we picked up a few contacts on that band as well, but far fewer than I had hoped. The other trick I had up my sleeve was to roll out a newly minted K3 rig. I had put it together about two weeks back, just in time to test it out in the NAQCC sprint for May. In addition to the stock 2.7 kHz roofing filter, the K3 has 200 and 400 Hz roofing filters for CW.

As for weather, we enjoyed both heat and humidity on Saturday and were surprised by chilling, drenching thunderstorm on Sunday. Good times.

I’ve stopped hearing CW in my car creaks and the howling of my home’s air ducts, but my brain is still not entirely recovered from the continuous operation of the station over that 24 hour period. Thanks to Leon, NT8B, I did catch some sleep during the event, otherwise I would be even more posty-toasty.

Some preliminary results (some contacts logged separately, e.g., our VHF activity, also all of the added point categories like GOTA, solar power, etc., are not included):

Band Mode QSOs Pts
1.8 LSB 3 3
3.5 CW 185 370
3.5 LSB 66 66
7 CW 424 848
7 LSB 477 477
14 CW 376 752
14 USB 45 45
21 CW 34 68
21 USB 121 121
28 CW 38 76
28 USB 27 27
50 CW 3 6
TL Both 1799 2859

Things that were planned and worked out well:

  • Rain gear: Packed a poncho and umbrella despite a clear forecast. Similarly, packed long sleeve shirts and a sweater despite heat and humidity in the 90s.
  • Trash bags: Plastic bags enabled us to keep the station up, even when sideways rain was splashing through the mesh sides of our operating tent
  • Plastic sheeting stashed in the club’s field day bucket, someone years back had thought to buy some large plastic sheets. Not long after rain started, John Righi realized that he could drape our tent with the sheets to keep water out.
  • The spider beam: It is a pain to put up, but works well.
  • N1MM: Prior planning and testing with N1MM lead to a smooth operation
  • Poison Ivy on the main antenna support tree: Recognized, avoided.
  • Food: Yummy, and plenty of it.

groundrodThings that did not go entirely according to plan:

  • The deep-dwelling ground rod: An 8-foot ground rod, hammered in 4 feet deep proved difficult to extract. With many helpers, a hydraulic jack, a vise grip to provide purchase on the rod, and a thick wood log to increase surface area under the jack, the rod was recovered, averting plan B, which involved a hack saw.
  • The tree-loving guy line: one of the supports for the 80m dipole was particularly long, and an overlooked knot in the end became fouled on a high tree branch. Pulling only lead to comical moonbouncing around on the lawn. The solution: tying the line to a pick up truck and running for cover. The 3/8″ line held, a tree branch came down, and the problem was considered solved.
  • The logging computer, an old Panasonic Toughbook, decided that its track pad would no longer function when we set it up at the station. The touch screen still worked, so we weren’t entirely out of luck, but we had to scramble a bit to find an external mouse. I’m still not sure what happened, as the pad had worked right through the WVQP a week ago, and up to the previous evening when I was setting up the database for field day.
  • It turned out that we did not have a satellite station for field day, so between HF stints, Ben Gelb and I monitored satelite passes and attempted to jury rig a station from my car, which is outfitted with a computer controlled TS-2000. Ben was at least familiar with the software, whereas I was reading the TS2000 manual right up to the first pass. We had a 70cm yagi, the car’s 70cm/2m vertical, and a small 70cm magmount antenna. We ran HRD’s satellite tracking program, and set up a waterfall using Ben’s digicube dongle, while the TS2000 provided duplex audio for both up and downlink. We did manage to find the satellites each time, but had some difficulty setting the T/R offset and tuning around in real time during the pass. We heard both CW and SSB transmissions on the birds, and even succeeded in hearing our own CW signal, so at least we knew that we were making it in. This set up may have worked on a quieter day, and I think it needs only a bit of tweaking to get it right…maybe next year, with some practice in between.

Things to consider for next year:

  • We worked absolutely everyone that we heard and were often the first station through pile-ups. Maybe we could go entirely QRP next year? Bigger score multiplier, less inter-station interference
  • Check that we have plastic sheeting for every operating position.
  • Check wireless routers for RF emission. I’m not sure this was a problem, but something blanked out our satellite receive capability on one pass, and having eliminated other sources, we suspect a wifi router may have been the culprit.


West Virginia QSO Party 2013

I hadn’t planned on entering the WV QSO Party this year because I thought that I had another event on Saturday. Then, scheduling shifted around and the weekend opened up. Having recently participated as a rover in the Indiana QSO Party, the car was still set up for mobile operation. Further, I had a hideous showing in last year’s WVQSOP, so I was hoping to redeem myself this year.

wvqso2013countiesI did the planning late on Friday afternoon. After grabbing the current rules and a list of WV counties from the event website, I headed over to an online county mapping tool. Between that and google maps, I plotted a loop through the northeastern part of the state, concentrating on reasonably large roads that crossed county borders, but not over a river. I didn’t have much time, so rather than obsess about the route as I usually would, I just took the first candidates, without optimizing for elevation, signs of power lines, and so on. The route is saved as a google map. On that map, if you select a way point and hit “directions”, the map provides the long/lat for the way point.  I programmed those coordinates into a dedicated GPS, having learned last year that my android phone does not do well as a GPS once I’m a few miles into West Virginia, and out range for my (and sometimes any) cellular network.

For the record, here are the waypoints, each of which turned out to be a reasonable operating location:

County Line Latitude Longitude Range to next
Jefferson-Berkeley 39.319575 -77.98796 19 mi
Berkeley-Morgan 39.445992 -78.198828 44.4 mi
Mineral-Hampshire 39.465354 -78.714981 38.5 mi
Grant-Hardy 39.13016 79.037683 124 mi

The weather looked great on the morning of the event. Even the space weather looked not half bad. Solar flux had been drifting down, but it was around 100 and most importantly, quiet. I left around ten in the morning, hit the bagel shops on main street in Fairfax, and made it to the first way point at noon.  It took  a few minutes to set up the antenna and get sorted out, and the first contact was recorded at 12:15 local, fifteen minutes into the contest. From then, I operated non-stop until the closing bell at 10 pm local.

My main antenna was the 40m hamstick, but I also adjusted the screw driver to 20m and used it from time to time to test the waters on that band. I alternated between CW and phone throughout the day. I hovered on each location for at least an hour, and spent the last three hours at Grant-Hardy.  I was surprised that I got so few contacts at the Berkeley-Morgan stop. It seemed ideal — the top of a mountain, a nice place to pull over, and no obvious sources of electrical interference. Maybe it was propagation or time of day, but as soon as I started driving again through Morgan County, I started picking up more contacts.

Here are the statistics for the day:

Band Mode QSOs
3.5 CW 26
7 CW 181
7 LSB 71
14 CW 16
14 USB 10
TL ALL 304

So…what’s my score? I’m not sure. The contest rule do not fully describe scoring, but refer to a summary sheet. QSO points are weighted, CW counts more than Phone and contacts with mobile stations are also more valuable. There are bonuses to work the official event stations (I worked them ten times), plus bonuses for number of counties activated (11 — see the map). Speaking as a mobile operator, these incentives to work rover stations are very appreciated. Looking over the logs from past WV QSO parties, I’m surprised that more stations don’t enter in the mobile category given the scoring algorithm.  Anyhow, part of the scoring method seemed ambiguous for me, so before I do any totaling, I’m waiting for some clarification from the contest organizers by email. At least I am sure that I did better than last year.

From the perspective of fixed stations there is a bonus for working the same mobile station in five counties. By my reckoning, I provided this credit to:

Call Contacts Counties
K4BAI 11 7
W8POF 10 7
K8JQ 7 5
KB3AAG 6 5
KQ3F 6 5
W2CVW 5 5

Looking through the log, I worked 27 US states, plus Ontario in Canada, and one station each in Germany and  the Slovak Republic.  As in the INQP, I think I would have done better had I been able to get a 20m antenna into the trees, but operating this contest single-handed, I didn’t want to take the time to wade into the brush and grapple with ropes, wire and coax.

wvqso2013statesIt was a great day for a contest, and while I was driving frantically around West Virginia, I was also enjoying the scenery. My final location was on a mountain top, where I watched the sun set. Around dusk, a family of deer walked through the clover and grass next to the car. By the end of the event, the stars were out in full force and I started at the constellations for a bit…

…which was helpful, because for the last mile of the trip, my GPS stopped functioning normally. The road that I was on was a shiny new highway, and evidently not in the memory of the Tom Tom GPS, that I had purchased in 2009 in Belgium. The GPS constantly tried to recalculate where I was, as it could not accept that I had driven the car off a farm and up into the woods on the side of  a mountain. Taking bearing from Polaris, I headed east until I found a road that my mildly brain dead GPS recognized, and made it home about two hours later.

County and state maps were generated using the Do-It-Yourself Maps tool.

Operation Rolling Pork


In 2011, I got together with Ben (NN9S) and Tymme (K9TYM), and we participated in the Indiana QSO Party from Tymme’s house, just outside Bloomington, Indiana. None of us were experienced contest operators, but we managed to set up a multi-multi station in short order and kept it on the air for the duration of the event, giving out QSOs for Monroe County.

We couldn’t pull the team together last year because of jobs and travel schedules, but we entered this year as a Rover team. My 2009 Hyundai Sonata is outfitted with a Kenwood B2000, similar to the TS-2000, but without  a front panel. The main radio unit is housed in the trunk, with a remote head mounted on the dash.

Over the last year, I’ve gradually modified the car for this operation, with power connectors running down the left electrical channel to the trunk, and audio, keying, RS-232 and antenna control cables running along the right electrical channel. One of the radio’s antenna ports is dedicated to a 2m/70cm antenna, while the other is used for HF: either a screw driver antenna or MFJ hamsticks.

IMG_20130502_192123I took a few days off of work for the event and camped on the way out and back to Indiana from Virginia. Before leaving, I lightened up the car a bit by removing the passenger side seat. The seat is held down by four bolts, easily removable with a socket wrench, plus some electrical cables that had to be disconnected.  In place of the seat, I screwed in a RAM Mount for my panasonic toughbook laptop, with power from the car’s accessory power port and rig control via RS-232. This allowed the computer to be operated from either the driver position or the rear seat. Similarly, the microphone reached to the rear seat.

Either passenger in the back could operate the microphone, and the passenger behind the driver typically also fulfilled the role of navigator. The other passenger in the rear seat operated the computer, and the driver either drove, or while parked, operated CW using paddles mounted on the center console behind the shift lever. An autokeyer with rate adjustment was installed into the front dash.

We followed a counter-clockwise loop, starting near Tymme’s house in Monroe county. Our plan was to aim for county borders that were along an efficient route. In the weeks before the event, we roughed out a plan using Google Maps and Street View to try to find places that would be safe to pull over and operate and ideally far from sources of electrical interference. We also tried to find locations with some elevation and good prospects for pitching an antenna into a tree or setting up a support pole.

Our signboard reminds us that we are parked at the Monroe/Lawrence county border.
Our signboard reminds us that we are parked at the Monroe/Lawrence county border.

We got off to a wobbly start because we did not make good time from Chicago to Bloomington, and we got a little turned around in Bloomington. Consequently, when the contest started, we were still on the way to Tymme’s house. This wasn’t a major set back, as we just started operating mobile on voice until we got there. As soon as we pulled it, storm clouds were gathering, and the decision was made to shoot the 80m antenna for the evening’s operations before the sky let loose. While Ben and Tymme disappeared into the woods to shoot strings into trees, I operated CW from Tymme’s driveway.

Before long, we were underway, first way point: the Monroe/Lawrence border. Our circuit continued with operations in Orange, Dubois, Martin, Washington, Scott, and Jackson counties.  We had surprisingly few contacts in Martin country, which I thought would be a highly sought location, and I’m not sure why — we had a remote, high location; maybe propagation was just off at that point in the day.

As the first person to operate phone when we got to the Orange/Dubois border, I learned that “Dubois” isn’t pronounced the way I thought I was. In Indiana, it rhymes with “noise” rather than “quoi”.

Ben and Jack pose with the Porkmobile and the trunk-mounted screw driver antenna in front of a genre-appropriate restaurant

We continued operating the entire duration of the contest, driving through pouring rain for the last few hours. The rate began to drop off in the evening, a reflection of the poor efficiency of mobile antennas on the lower bands. Looking at the clock and the map, we reckoned that we would need to get back to Monroe country quickly if we wanted to have a chance to use the 80m full-length dipole that we had spent some time setting up earlier in the day.  We nicked Brown county on the way back to Tymme’s, but unfortunately didn’t land any QSOs.  In retrospect, I think we should have written off getting back and tried to get a couple contacts in Brown country, but we were also constrained by our over all travel plans — we had to be back in Chicago by 6 am the next morning, so we were keen to get back to Tymme’s by midnight and catch a few hours of sleep.

Tymme took the wheel for the last hour or two of the contest, flying through Indiana back roads like Luke Skywalker in the trenches of the version 1.0 deathstar. I’m pretty sure Tymme turned off the targeting computer and just followed his instincts home. Surprisingly (to me), when we got to Tymme’s house, he didn’t stop driving, even though the driveway had run out. Tymme continued to sail over lawn and into the forest behind his house, with the car slicing through waist-high grass. He stopped when he got to the tree supporting the 80m dipole and we hooked up the feed line to the radio in the car’s trunk.

Tymme operating phone from the back seat
Tymme operating phone from the back seat

Aside from some boozy yokels on 75m, we didn’t hear much activity, but once we started calling CQ, we had a pile up of responses. When we had wrung out sideband, we switched down to CW and a similar hot run. In the last half hour of the contest, I was pleased to work many calls that I recognized as QRP stations.

During the 12 hour event, we reckon that we worked 30 states/provinces and 48 sections. This is actually fewer states than we had worked in 2011. I believe that this could be improved in future efforts if we used higher antennas and paid more attention to the 7Q contest. Here is the breakdown by band and mode:

band  mode   qsos   pts  mults
3.5   cw     33     66   8
3.5   lsb    24     24   6
7     cw     135    270  47
7     lsb    127    127  44
14    cw     12     24   5
14    usb    13     13   8
21    cw     2      4    0
total        346    528  118
score: 62,304

Doing some quick calculations after the contest, it appears that Ben has now achieved the first rank of “worked all Indiana” between Operations Sizzling Pork and Rolling Pork.

On the way home, I attached the 10m MFJ hamstick to the trunk mount and worked CW. Conditions were great, with solar flux up around 150. I logged QSOs to the following countries: Honduras, Nicaragua, Argentina, Cuba, Guadeloupe, Brazil, Canary Islands, Mexico, Paraguay, Puerto Rico, the Balearic Islands, and South Africa.

This year, we had some nice mini-pileups, which made it an exciting event. After getting back to Virginia, I called up records from dxsummit to see if and when we were spotted (thanks, by the way, to everyone who did spot us). I would have guessed that we had been spotted at some additional times, so maybe this records isn’t all-inclusive of spots, or perhaps people are just good at finding fresh stations to work:

N9IO  3530.0 NN9S inqp      0347 05 May   United States
K3CT  7225.0 NN9S QSO Party 0012 05 May   United States
KB9NW 7244.9 NN9S           2244 04 May   United States

I hope we are able to build on our effort in INQP 2014. The first item on the plan for INQP 2014 will be operation from Brown County.

QLF (version 1 and 2)

Monty_python_footOne of the limiting factors in making optimal use of a radio is the number of human appendages that interact meaningfully with the radio, hence the importance of a big knob on the front of the radio and hands to turn it. Morse code operators have known this since the dawn of time and have a Q-signal dedicated to the use of the left foot to send messages: QLF. This versatile expression is more often used in the interrogative, i.e., “QLF?”, or “Are you sending with your left foot?”

There are several physiological reasons why sending code with the left foot is not a good idea, although with practice it might be an option for some. For the rest of us, though, perhaps the left foot could be used for other purposes, leaving the hands free to operate the radio, and more importantly, convey items back and forth from the mouth during radio operation, supplying the operator with the necessary calories and hydration to make it through a contest.

teamspeak1And so was born the QLF Device.

Well, not really.

Several factors led to development of this project. First, our radio club had started using TeamSpeak for internet conferencing. We had run a few CW practice nets on HF, but most of the time, band conditions did not permit all of the interested members to participate, since our members are not just from the local area. This VOIP solution worked very well, and while we know it’s not radio, it’s a fine way to practice.

One issue that arose was that the software worked best in “”PTT” mode, where a key was depressed when the sender wanted to open his/her microphone. There is a VOX option in the software, but it often led to unintentional microphone keying during the session, feedback, and general interruption of the practice sessions. Any key can be designated, but metakeys (like ALT, CTRL, etc.) work best, since they are not likely to be used for anything else during the session.  A number of members remarked that it takes some coordination to depress a computer keyboard key with one hand, while working a straight key or paddles with the other.

n1mmAnother need that has arisen in the past relates to contesting. Foot pedals would be helpful in two contexts: 1) for keying the rig’s microphone PTT during voice operation, allowing the operator to use a hands-free boom mike, and 2) for sending a “CQ” message during a contest.  In the former case, we’re looking for some kind of physical connection to either the microphone jack or ACC jack of a rig, in the latter case, since “running” a frequency usually amounts to repeatedly stabbing the F1 key of some contesting software (e.g., N1MM) to play a canned message or send a CQ message in morse code, what we want is a means of sending the “F1” keystroke to a computer.

These thoughts were rolling through my head when I noticed that Adafruit was offering a foot pedal switch at a reasonable price ($7.95 for single units, less if ordered in quantity).  I ordered a few to check them out, and while awaiting delivery, sketched out the “design spec” for the QLF device:

  1. The QLF should allow direct control by making or  breaking a connection for physical switching, i.e., for microphone PTT.
  2. The QLF should send “keyboard” characters — at least two of them:  F1 and a meta character
  3. When sending keyboard characters, the device should operate in three modes: a) PTT (continuous while pushed); b) One shot (no matter how long QLF is actuated); c) Toggle on/off (to avoid fatigue)
  4. The QLF should provide adequate feedback for the user to know which mode and character are selected
  5. The QLF should be dead simple to operate, even after 24 hours in the contest chair on a diet consisting solely of cheetos and lime diet coke.
  6. The QLF should be relatively RF resistant
  7. The QLF should not require its own batteries and shouldn’t consume much power
  8. The QLF should be smaller than the rig it operates
  9. The QLF should be cheap. Like, less then ten bucks or otherwise made of stuff in the junque box.

footswitch_LRGBefore deciding on how to hook things up, a few dissections were in order, starting with the foot pedal. The construction of the foot pedal appears to be sturdy. It has a hard plastic upper portion, which seems thick enough to stand on and the bottom portion is metal. Although there might be enough room inside the pedal to stash some components, it doesn’t seem easy to open the case.

A grey wire about two meters in length emerges from the back of the switch. Slicing the wire open reveals three internal conductors: red, white, and black. There is no shielding on the cable, and no ferrite is present. If RF were a problem, it might be worth replacing this wire with a shielded cable (for example, a sacrificed USB cable) and slapping ferrite clamp around the wire on the end that attaches to the QLF device. So far, this hasn’t been necessary, though.

3pt5mmThe three wires allow the switch to be used to either open or close a circuit. Red and black are normally connected, but depressing the switch breaks that connection. If you use red and white, you get the converse case, which is likely of more use. My plan was to terminate the switch wire with a 3.5mm connector so that I would have maximum flexibility in connecting devices to the switch, depending how I wired the jack connecting to the device (i.e., a radio or the QLF device). Since red is common to both configurations, I connected it to the barrel, and soldered black to ring and white to tip. This means that I can use the cheaper mono jack or stereo jack to access the red/white combination.

The next step was figure out how to make the action of stepping on a switch send one or another character to a computer, presumably over USB, since PS2 connectors are now passé.  Again, I started with some dissection to understand how keystrokes are normally sent from keyboard to computer. Actually, there are plenty of fine descriptions of this on the internet, so it wasn’t so much a matter of understanding as needed to harvest the brains of a few keyboards for use in this project.

Starting from an existing keyboard seemed reasonable because 1) the number of trashed usb keyboards on this planet exceeds the number of rats; 2) USB is complicated, and developing a device to duplicate the functionality of a keyboard seemed like a difficult and potentially expensive way to start.

upperlowerIf you rip apart an USB keyboard, there are usually three layers: the keys, a rubbery mat, and a matrix of conductors printed on plastic sheets. Conductors from the upper plastic sheet are brought into contact with the lower sheet when keys are mashed down. The conductors all lead back to an edge connector, and a small logic board attaches to the plastic sheets at that point. Usually, there are about 25 to 30 pins that join the board to the plastic. One sheet connects to about eight of the pins, and the other sheet to the rest. The USB cable itself also connects to the board — two data lines, a positive, a reference ground, and a shield ground.

Without really knowing too much else about how all this works, it was clear that connecting some of the pins to other pins would send characters to the computer… but which pins? One internet how-to site recommends tracing the keyboard key layout onto the plastic layers and then obsessively tracing each one back to the edge connectors to create a complicated map. That should appeal to anyone who has enjoyed mapping a maze of twisty passages, all alike.

logicboardsI opted for plan B — a program that runs on the computer and displays which character is being pressed. I downloaded keyposé, a program that is free for private and academic use. It ran fine under Windows XP SP3. The program was developed to assist in creating software demos.  When this program runs, it will indicate which key is pressed, whether on the computer’s main console keyboard or on another one attached to a USB port.  The beauty of this program is that it shows which meta keys are being pressed, or even which combos are pressed.

I initially mapped the keyboard logical module pins by noting which character appeared when I connected every permutation of pins, i.e, pin 1 and 2, pin 1 and 3, pin 1 and 4, etc. This yields a matrix which has both some blank spots and some redundant spots.  After I did this with three keyboards, I came to the conclusion that this mapping is not standardized, even for a given manufacturer, so this process of figuring out which pins are important cannot be avoided.

keymatrixHowever, there is a short cut. Since we’re only trying to fire off the F1 key and some other meta key, why bother mapping all the keys?  First, concentrate on finding the two-pin combination that produces F1. If possible, see if either of the pins involved can be paired with another pin to produce a meta-character. If so, this makes life easier later on and saves on part count since one pin can be common.

How smart is it to take a piece of wire and start strumming it across the connector pins, while the logic  board is plugged into your valuable laptop via the USB cable? Well, I can only give you my experience — nothing blew up. Most laptops are smart enough to shut down a USB port when the current draw exceeds specification.  Even so, it might be a good idea to use an older laptop or to connect via a USB hub for testing.

After using a piece of copper wire for this purpose for a while, it occurred to me that they keyboard itself might have some resistance between leads rather than a dead short, as some of the runs of ribbon-thin conductor are pretty long. I measured between 30 and 70 ohms resistance on average for short and long runs, so some small value resistor might serve the purpose better than plain wire, but using a wire didn’t seem to harm anything when I did it.

Since the solution is now to make a connection between different pins to send either “F1” or a meta-character (I settled on “CTRL”, but any would do), the next step was pretty obvious – to use a transistor as a switch between the appropriate pins.  To get all the functionality of the different “modes”, though, would require some circuitry upstream of the switching transistor. My first inclination was to use a microcontroller, but that seemed like overkill and probably not the cheapest way to get what I wanted. Instead, I opted to use a couple old workhorse components. Power for the circuit is derived from the USB cable itself. The USB standard guarantees up to about 500mA available, and we won’t come near that.

Schematic: QLF version 1.0
Schematic: QLF version 1.0

A single SP3T switch selects the mode (PTT, one-shot, or toggle on/off) by directing the appropriate high output signal to the gate of a 2N7000 N-channel MOSFET. This switches the MOSFET on, and current flows through the pins connected to the MOSFET’s source and drain. I had measured the voltage on those pins before connecting, and the higher voltage should go to the drain, and lower or ground to the source. If you get this backwards, it’s not a problem, but the MOSFET will conduct all the time, and this will be apparent because the keyposé program will show that the character is being sent constantly.  Since there are two characters that potentially could be sent, a second switch directs the appropriate pins to the source and drain terminals of the MOSFET.  The state of this version 1 QLF device is always obvious from the position of the switches, one for mode, one for character.  Since the gate of the MOSFET is brought high whenever a character is sent, an indicator LED is also attached to the gate. When the LED glows, a character is being sent; this provides some useful feedback to the user about what is going on during normal use.

The PTT function is the most straight forward. When the foot pedal is depressed, the base the 2N3906 PNP transistor pulled to ground and current flows from +5V on the collector to the emitter, and through the mode select switch to the MOSFET described above.

The one-shot function is desirable because sending multiple key strokes quickly to a program like N1MM results in a string of CQ messages being generated, one after the other. Similarly, holding down the character on a keyboard could result in repeated generation of the character. Since neither case is what the user usually intends, the purpose of the one-shot is to emit a single keystroke, even if two switch closures happen very close together (i.e., switch bounce), or if the switch is held down. You can stand on the foot pedal, but you’ll only get one keystroke when this mode is active.

To achieve this functionality, a 555 timer is used in monostable mode, with its output (pin 3) connected to the gate of the 2N7000 MOSFET via the mode select switch. The 555’s trigger pin (2) is normally pulled high. It connects to the switch through a 0.1 uF capacitor. When the switch closes, that capacitor is grounded and pin 2 sees a transient dip in voltage — enough to satisfy the op amps inside the 555 that something important is going on. The 555 fires off, and the duration of its output on pin 3 is determined by the combination of the capacitor and resistor connected to pins 6 and 7; specifically, the duration in seconds is 1.1 * R * C.   I  went with a 0.1 second pulse because this should be long enough for the logic board to register this keystroke and not so long that it starts repeating. The tolerances of electrolytic capacitors are not precise (particularly when they have been sitting in the junque pile for an indefinite period), so best not to choose to low a value for the capacitor. The LED provides a direct read out that the one-shot is functioning as designed.

Finally, there is the toggle on/off mode. This mode is meant to spare operators some foot fatigue. Rather than hold down the pedal for their entire long-winded transmission, the pedal can be pressed once at the beginning of the session to key the computer (and/or rig), and then again at the end to unkey it. What is needed here is a T-flip/flop circuit – a circuit that can remember its state, and every time it is poked, change to the complementary state.

74hc4024I grabbed the cheapest, simplest IC that I had on hand for this purpose, but many substitutes would also work here. There are plenty of references on the internet about how to make other kinds of  flip-flops (e.g., a JK Flip-Flop) replicate the function of a T-flip-flop, but I used a 74HC4024 ripple counter which internally has a series of T-flip flops. I pulled down the reset line of the counter to take it out of the equation, and then just drove the clock input from the output of the 555 timer. Now, every time the 555 emitted a pulse, the first flip-flop in the counter would change state, high or low. That flip-flop’s output was connected to the  2N7000 MOSFET through the mode-select switch. The rest of the functionality of the counter was not used, which seems like a waste until you learn that the cost of the chip, new, is 37 cents.

The general solution for connecting to the pins on the logic board is to use a DPDT switch. However, if a pin combination can be found such that one pin is in common for both F1 and a meta key, a cheaper SPST switch can be used — the common pin goes directly to the MOSFET, and the switch just selects which of the other pins connects to the other side of the MOSFET.

A few items were thrown into the design for good measure — decoupling capacitors on the ICs, as well as one across the switch leads. That latter capacitor was meant to shunt high-frequency RF from the switch line – but I don’t know if it actually helps. The capacitor on the reset line of the counter chip is not a decoupler – it’s job is to transiently go positive when the circuit is energized, putting the counter in a determinate state at power up. This assures that initially, if the device is put into toggle on/off mode, it will be off. (One corollary of this  logic is that if the device is later switched into toggle mode, it might be in the “on” state, since the counter will receive one-shots from the 555 every time the pedal is down, even when other modes are active).

Finally, I added a 56 ohm resistor between the logic board pins, since this would come closer to the real resistance of a keyboard. I have no idea if this is important or not, but resistors are cheap.

I felt good about this solution, so I transferred the circuit to vector board and stuck it in a cast aluminum case strong enough to survive the zombie apocalypse. To get it into a case, I made a sandwich, with the keyboard logic board on the bottom, some spacers, and the vector board on the top, with various screws to hold things in place. The most expensive part of the project was the $5 box (not counting the cost of the pedal itself, since it can be used for other purposes in addition to the QLF).



In developing version 2 of the project, I wanted to try a microprocessor solution to the same problem. The motivating factors (aside from, wouldn’t it be cool?) were:

  1. To save on hardware costs. The electronics in version 1 were all cheap, but as often is the case, most of the cost came from the mechanical items — toggle switches and the case itself. A smaller case with cheaper switches would be preferable.
  2. Flexibility – rather than “coding” everything in wiring, a microprocessor-based QLF could be “reprogrammed” to some extent by popping the chip, re-flashing it, and sticking it back in.
  3. Lower part count – in principle, the core functions could all be done in one rather than two chips, without outboard resistors and capacitors to handle timing, trick the chips into triggering, etc.
  4. Better user interface, in this case blinky lights and sound. Not absolutely necessary, but nice touches.

I started roughing out the design using an Arduino Duemilanove, but my intention was not to include this prototyping platform in a final product. After all, even an older Arduino costs above 20 dollars. The ATmega328 used on this board also seemed like overkill – much more memory and ports than needed, and in a 28pin package, larger than I would have liked.

Instead, I went with the ATTINY45, a chip that costs less than a dollar, and which can be programmed via the familiar Arduino IDE with minimal additional effort (described in the next post). The challenge in using the ATTINY chip was to achieve all the desired functionality using a chip with a limited number of pins devote to input/output.

guzintas2The vision for the version 2 design was to have two push button switches, one for mode and one for character. Pressing the mode button would cycle through the three modes available: PTT, one-shot and toggle on/off. To keep track of this, we’d need some indicator, since switch position would no longer tell use what mode we are using. The character select would toggle between F1 and meta-character, and again, we’d need some indication of which character was active. As in the previous design, we would also need some way of reading and acting on the pedal switch state.

One frill I wanted in this design was an audio indicator for mode and character, since the QLF might not be visible from the operating position. The tone function is part of the standard Arduino library and it is easy to drive a piezo speaker using a single digital output.

The ATTINY series chips have 8-pin chips, and the models differ in amount of flash memory: ATTINY 25, 45, and 85, have 2k, 4k and 8k, respectively. Two chips are devoted to power (Vcc, GND), and one is used to reset the chip. Of the remaining, two pins are connected to a crystal to provide an external clock, leaving three pins. This is clearly not enough for everything described above. However, between the chip’s versatility and some design tricks, a solution was found.


First, the external crystal was dropped from the design. The ATTINY can use an internal RC oscillator for a time base. It is less precise, but nothing we’re doing here requires exquisite timing. Depending on how the chip’s fuses are set, the RC oscillator can generate a 1 Mhz or 8 Mhz clock. I opted for 8 Mhz, but 1 Mhz probably would work, and would take less power.

Refer to the version 2 schematic for the following discussion:


Next, the three switches (pedal, mode, character) were multiplexed onto one analog input. The switches connect in common to one side of a voltage divider, and each switch connects to ground through a resistor with a specific value. The values were chosen (see spreadsheet) such that even with maximum tolerated deviation of the two voltage divider resistors, the resulting voltages would fall into non-overlapping ranges as detected by the chip’s ADC (1023 values, from 0 to 5V).

For indicators, one digital output was devoted to a single LED for mode: off for PTT (default), on for single shot, and blinking for toggle on/off mode. Another digital output was devoted to which character was selected. A design decision was made to indicate F1 on one LED, and the meta-character on the other LED. This design used complementary transistors to assure that one of the two character LEDs was always lit. Another option that would have saved  a few parts would have been to use a single LED with it off state representing F1 and on state representing the meta-character. This seemed like more to remember, though, versus having the name of the character written next to the LED on the case.

Two 2N7000 MOSFETs are used in this design, one to switch on each pin pair on the keyboard logic board. A digital output from the microcontroller is directly connected to the gate of each MOSFET.

With this layout, the design was still a pin short — the one needed to drive the piezo element for sound. This was a workable design, but to get that last pin required special effort. I’ll describe how the ATTINY was programmed from the Arduino IDE, and how I freed up the RESET pin to use as an output in the next post because it does get a bit more hairy.

Sound is used in this design by beeping one, two or three times in a high tone to indicate mode, and once or twice in a lower tone to indicate which character is selected.

Here is some pseudocode for what’s going on inside the ATTINY:


The code that I actually wrote for the project can be found in a repository on Google Code.  If this code is loaded on a chip that has not been modified to use the RESET pin as audio out, the code runs normally, but of course there is no sound output. The code compiles into less than 4K, so it will fit on an ATTINY45. Without the sound-related routines, it would fit on an ATTINY25. Counterintuitively, when I went to buy chips for this project, ATTINY25 was more expensive than the 45, and the 45 was just a couple cents more than the 85.


The version 2 board was smaller than version 1 and fit in a smaller a marginally cheaper aluminum case. Overall, this is a less expensive approach, but not by too much (see spreadsheet). The main cost drivers are the mechanical components in the first design, but purchasing the items in bulk and/or from ebay brings the prices down considerably. The cost of assembly also depends on what is in the junque bin. In both designs, most of the components are very common, and there is considerable latitude for substituting other values.


I did attempt a third version — one that doesn’t require gutting an old keyboard, but this approach hasn’t really paid off at this point — except as an example of what not to do. I’ll write up that experience, but first, more details on programming the ATTINY45 (next post).


Postscript 1: In retrospect, an obvious source for the flipflop in the QLF version one would have been another 555 module. One 556 could serve both purposes. This is the sort of thing I think of after the project…

Postscript 2: With USB integrated into more modern arduino and work-alike boards and the boards becoming so cheap, the project could be done in software only, without having to dumpster dive an old keyboard control board. But where would be fun be in that?

VAQP 2013

VAQP 2013 didn’t go quite the way I’d imagined it would, but it was still fun. Getting N1MM set up the night before the event, I was surprised to see fields for an exchange number. I’m pretty sure this was a new feature, and I’m not sure how popular it will be with people who prefer more casual operation in state QSO parties.

The contest ran from 10 am to 10 pm on Saturday and 8 am to 8 pm on Sunday. I spent Saturday with the Vienna Wireless Society, operating from the Annandale Swim Club. We got to the club at 9 am and it was probably unrealistic to think that we’d have antennas up, rigs configured, and N1MM networked by 10 am.

fishing for an antenna lineWe had some technical difficulties — our spud gun line broke a few times, the reels jammed, and trees claimed a lot of line and a few spuds. At one point, while I was working on another antenna placement, I noticed the other antenna hanging team trying to get one of our fouled lines out of a tree using the tools at hand: a lifeguard chair and a pool net.

It took a couple hours to get the antennas deployed. With the contest starting at 10 am, we started operating from the parking lot. I popped the tarheel antenna on my car, tuned to 40 meters, and Kevin WB0POH began working stations. By the time we had the indoor stations set up and configured, he had worked fifty contacts, including the bonus station, K4NVA.  I think all his contacts were CW, so worth twice the points to boot.

I’m not sure why, but we were not able to get the two logging computers to talk to each other. We tied them both into the club’s router, which should have worked like a hub. Both computers received DHCP addresses, and as far as I could tell, could see each other on the network. Not wanting to waste any more time, I set up the voice station to start with an exchange number of 500, while the CW station continued to build on Kevin’s earlier contacts. I’m sure hearing our SSB exchanges in the 500 range early in the day put the fear of god into our more competitive neighboring clubs. Heh.

The CW station was set up in a different room from the SSB station, and we had a counter and some stools as operating space. After sitting for a while, I got rid of the stool and used the counter as a standing desk. It felt good to dance around while working CW, and I think I might try for this sort of set up in the future as it keeps the blood flowing. Ian, N0IMB, took some video of TS-450 I was using. Unfortunately, the video does not capture my dance moves.  You can’t  hear the dits and dahs on the video because I’m wearing headphones.

We broke down our field stations and took down the antennas on Saturday night. The next morning, I set the home station up again. I had brought a number of station items to the field, so I had a little rewiring to do before I could get on the air Sunday morning at around 11 am.  I worked intermittently until the end of the contest at 8pm that evening, but had a number of fairly large breaks to take care of family, do chores, etc. I entered as single-op, all bands, low power (100W), CW-only, non-assisted, one radio.

Propagation was so-so, and I kept hoping that after a break, it would improve. It wasn’t just my imagination: conditions were much better on Saturday. Looking at the space weather data, a CME thrown on Friday hit the ionosphere Sunday morning, just when I was starting operation. The K-index bumped up to five and stayed there the rest of the day. Conditions did seem to improve as the day went on, but this perception may also be a matter of more people joining the contest for the last few hours.

I spent almost all of my time on 40m, using the attic dipole rather than the outside 40m vertical that does better in DX contests. I had good coverage of New England earlier in the day, and worked westward into Wisconsin, Kentucky, and Arkansas. Operating NVIS, I had a reasonable chance of operating other VA stations, including VWS club member Kevin, WB0POH.

Twenty meters was not as helpful as I’d have liked — at one point, Europe opened somewhat, and I worked a succession of stations in Poland, Germany and  the Slovak Republic. Later in the day, I had a brief opening to the west coast: WA, OR, and CA. Otherwise, 20m was my direct line to Florida. I did reach two stations on ten meters, but probably ground wave.

In the last hour and a half, I did good business on 80m, where I mostly ran into stations that I had worked on other bands.

I was surprised in the contest how many times I was called by stations that I had already worked. As a matter of course, I worked them again.  Maybe conditions were marginal on some of those calls, and maybe they just wanted an insurance contact. I didn’t hear anyone else operating from Fairfax City (FXX) — at least not on CW — so maybe my exchange was in high demand.

My final tally was 166 contacts (some dupes), with a paltry 26 Virginia City/County, 23 State/Province, and 3 DX entities. If I calculated correctly, I may have nosed over 20,000 points. Not a great performance, but not too bad considering time and conditions.

As for the club log, I’ll have to more or less manually merge the databases from the two workstations that we used into one file for submission to the Sterling Club which runs the VAQP.

Field Day CW Totals

We’re still assembling the total number of contacts from FD 2012 because the SSB and CW stations were not networked, but here are the totals for the two CW stations. I’d say we hit our goals and then some.


The 80/20/10 station

Mhz Contacts
3.5 279
7 304
21 15
Total 599

The 40/15 station

Mhz Contacts
7 430
21 115
28 4
50 1
Total 550

So, our CW total for the event was 1159 contacts. The results from the SSB, VHF/satellite, and GOTA stations and all bonus points should be out soon.

RAC Canada Day 2012

While the emphasis is on working stations in Canada (10 points), other stations do count (2 points), and this year there was more of an “everyone works everyone” flavor to the event. I worked stations from BC to the maritimes, but also a few French, one Netherlands, and one Romanian station. I heard a Brazilian station calling, but he couldn’t hear me.

In addition to working this contest for fun, it was also a test that the outside vertical had survived the storm. Right after the storm, the antenna had more slack in it than usual because the counter weight was resting on the ground. Apparently, a few branches that the antenna had once draped over are no more. I tightened up the support rope and the vertical seems no worse for the wear.

Field Day 2012

Ray, K2HYD at the operating position of the 80/20/10 tent. Hap, K7HAP is at the second position on the laptop, and Byron, W4SSY, supervises

To make everyone’s life easier, we stuck mostly to the plan developed for last year’s event, although I made some effort to simplify the set up where possible. This year, the main rig was a TenTec Omni VII, a radio with clearly marked controls and big tuning knob. Most people could sit down at this rig and be on the air in a matter of minutes without reference to reading material, nifty or otherwise. Instead of three antennas, we went with two: a moxon for westward gain on 20 meters, and a G5RV for all band coverage. The Omni had no difficulty tuning the G5RV for any band that we tried (10, 15, 20, 40, 80).

One major difference from last year is that we did not shut down in the wee morning hours. Both of the CW stations pounded brass for the entire 24 hour period of the contest. We had more operators than the previous year and divided the shifts carefully to assure that at least one person would be at the key all the time. It also helped that several of us brought our own tents this year for quick cat naps. We were all a bit punchy by Sunday morning, but after several cups of coffee, we powered through the rest of the event.

The CW tent is near a busy intersection and more accessible to other parts of the park, so we had a number of visitors drop by the 80/20 tent.  Some of these visitors turned out to be hams eager to put their hands on the paddles, and a few of them racked up an impressive list of contacts and we made sure to invite them back for next year. The more operators we have, the more pleasant staffing becomes. We might even be able to put someone on VHF CW for part of field day next year.

The 20 meter moxon (left) and G5RV (right) supported by a 40 foot military push-up mast, guyed at 3 levels.

Our computer wasn’t fully networked in at the start of the contest, so I don’t know how all the stations did. I have fuzzy recollection that we had around three hundred contacts on 20m and another 300 or so on 80m. We also worked on 15m for a while on Saturday evening, when the 40/15 station had gone to 40m and our 20m operation had been interfering with the SSB 20m station. I’m eager to see the final numbers after all the logs are merged.

One item to consider for next year — is it time to bring an SDR radio to field day? Would a graphic view of the whole band give us an advantage? Would a Flex radio (or other similar radio) play well with the other radios? I like the feel of a big tuning knob and I am used to zipping up and down the band by ear, but that’s all a matter of habit, and if there is better technology, we should consider it. Maybe it would be worth a test drive at some other event before field day 2013.

June mW Sprint

The view west towards mount roseI was sent on fairly short notice to attend a meeting at Lake Tahoe, which is just south of Reno along the California/Nevada border. I had one free evening before the conference, and it just happened to fall on the date of an NAQCC Sprint. I gave serious thought to throwing a wire out the hotel window, but the surrounding mountains called to me. This was not the usual monthly sprint, but the milliwatt version, so I figured that I needed all the help I could get and wanted to take advantage of the elevation.

After some quality time with Google Maps, it looked like Mount Rose was the highest accessible peak in the area. There is a parking lot near the trails that lead to the top of the mountain, but I didn’t think a business suit and dress shoes would fair very well on the gravely slopes. Across the road from the park lot is a campground with picnic tables and tall trees: the ingredients for comfortable field operations. In principle, there is a trail that runs up from the campground to Mount Slide, which, like Mount Rose is a SOTA peak. Again, if I had the right clothing and gear I might have attempted it, but it just wasn’t going to happen this trip. I settled for the 9000+ foot elevation of the campsite.

The view North, down the slopeI tossed a water bottle with a string into a tree, fired up the FT817nd on internal batteries and tuned up with the Hendricks SLT tuner. Before the Sprint, I worked WW0SS in Minnesota on 2.5W. Everything went faster than I had planned, so I laid down on the picnic bench and basked for a while.

I started searching around just a bit before the sprint to get a sense of band conditions. When the sprint started, I alternated between searching and calling. A number of local signals masked the sprint stations for a while, particularly with the poor selectivity of the ft817 (without a filter). I heard quite a few, some of whom were operating at 5W, while others were true milliwatt (less than 1W) stations.

I kept the rig at 0.5W for the entire event, and although I had two small lead acid batteries in the radio bag, I never had to use them. The 817 was running on fumes by the end of the sprint, but I was glad to see that it could make it through two hours of minimal power operation that had included a lot of calling.

All in all, I had six qsos on 20 and 40m. I reported 5 on the NAQCC sprint page because I wasn’t sure the last qso was complete, but I heard afterwards by email from the other station and confirmed that he had, in fact, correctly copied by call at the end of the contest. I think we gave each others 339 for that contact, and I recall that we needed a lot of repeats due to a mixture of summer weather background sounds, QSB and neighboring signals.

I didn’t come close to winning the sprint or even my category, but I enjoyed the scenery and the chance to sign myself as AI4SV/7.

WV Double Whammy

A few days ago, a troublesome area of the sun rotated earthwards and belched forth a stream of plasma meant to make my weekend challenging. A second coronal mass ejection occurred shortly after, with a higher velocity stream in the direction of Earth. Both shockwaves arrived during the West Virginia QSO Party. This K-index histogram covers the period of the QSO Party up to the point that I returned home.

The WVQSOP runs over the whole weekend, but I was only able to join on Sunday. I knew about the CMEs, but figured that I’d still be able to make a least local contacts. I was also hopeful that as the day progressed, conditions would improve.

Since it was also father’s day, Lara decided to accompany me on my mad drive around WV. I had planned a course through three of the northeastern counties: Morgan, Hampshire and Hardy. Looking over reports from recent years, there were some Morgan entries, but not much for Hampshire and Hardy, which is suprising considering that both are near enough to the Baltimore/Washington corridor that it should be possible for hams from those areas to support the event.

My flight plan took me first to the Capacon Mountain Resort, a state park with some really nice facilities, but most importantly, a road that runs to the top of a 2500+ foot ridge. From the observation parking lot at the top, there is a clear shot east and west.

I set up the Tarheel screwdriver antenna and tuned around on 40m and 20m — I heard almost nothing. I know that the car station works okay — I worked Sardinia and the Virgin Islands last night on the way home from work, and I’ve had lots of DX success with the antenna. After about an hour and a half, I had one CW contact on 20m, and one very surprised voice contact on 40m. The voice contact was at least 58 from New York — he said I was the only station he heard on the air, and the feeling was mutual.

The operating location in Hampshire County wasn’t ideal, so I didn’t spend long there, and logged no contacts. I continued towards the VA border and stopped just short, on top of another ridge to get some contacts in for Hardy county. It was getting towards evening (7 pm local / 23:00Z) and 20m seemed to have some life. I worked two more stations on 40m cw, both in Indiana, and one in Kansas on 20m.  So, at the end of the day, what do I have to show for the effort? Five contacts.

Throughout the entire contest, I didn’t hear one other WV station. I had wondered why I had no logged contacts on LOTW, and only a couple that issued physical QSL cards. The low activity seems to be a combination of the number of hams in WV and their level of participation in this contest. Looking at the past logs, it looks like participants from states outside WV dominate the contest.

I’d  like to revisit the Capacon resort this summer for camping or perhaps for next year’s WV QSO Party. The one change I’d make would be a full size antenna. Even if I were to deploy from a car, I’d consider hanging some sort of wire antenna with a tree support and running the cable to the car. The screwdriver is a versatile antenna, but still physically very short.

For next year’s reference, and for anyone else who works the WV QSO Party, I’ve prepared a reference sheet of the counties in West Virginia in a more friendly format that is found on the event website.