A quadrifilar helicoidal antenna

I designed it for 145.8 MHz with this webtool. Hopefully it will improve the SSTV images form the ISS once they start to transmit them again.

IMG_3396PVC material and 4mm copper does the trick, there are many building plans for this on the internet.


The VNA says that it is ok.

There is only one benefit of this antenna (a QFH antenna, it should in principle receive any type of polarization in any direction. My Diamond X30 does not and misses SSTV data above the antenna.

Last update: 18-feb-2019 18:03


Low budget PC revamp


The PC was becoming slow and windows 7 was getting taller after all the updates and applications, it is a 4 core i5 running at 3,5 GHz with 4 Gb DDR3 and a geforce GT 450 graphics card. The 1 Tb disk that I got in 2011 is not the problem, it is running fine (and defragmented). It was time to revamp the PC:

  • Replace the system fan, any 3 or 4 pin 120 by 120 mm fan will do, the old system fan started to make noise and also, the PC was collecting dust. All dust (it was the size of a fist almost) removed with compressed air and a dust devil.
  • Replace the 4Gb DDR by 16Gb DDR (please read the motherboard documentation on what this board can handle and what they recommend) This gives a significant boost to Windows 7, the 4Gb was ok in 2011 but nowadays I do things with SDR software that make it slower, the 16 Gb prevents that the pagefile is used, probably 8 Gb DDR 3 would have been sufficient already.
  • Add a 256 Gb solid state drive (SSD) to the motherboard, you need a 3,5 inch bracket, a free power plug, a SATA cable and some tie wraps. Also here, 128 Gb may have been sufficient. My tendency is to buy things somewhat larger than that you really need them. Need them means need now, and in 5 years you need more because all applications and operating systems get taller.
  • Please ground the PC and wear a electrostatic wrist band when you do all this, most components have an ECC protection but I wasn’t planning to challenge it. Especially the DDR3 ram boards are delicate.

And here are the software changes:

  • Tell Microsoft ReadyBoost to use the SSD, and wow, what a difference! It would be good to put the original C disk on the SSD, but that would require some more planning.
  • Configure the virtual memory to use the SSD, so the pagefile goes to the SSD, google for it how to do this.
  • Move the google chrome cache directory to the SSD, google for it how to do this.
  • Check the Windows 7 updates and run a microsoft tool to repair the database, google for it how to do this.
  • Run CCleaner, only remove files you can delete for now. CCleaner is free and mostly safe, ignore all the ads until you find it. (Some call it bloatware, could be because if you don’t watch what you are doing you suddenly get avast as well, I didn’t ask for this guys).
  • Remove several unused applications to speed it up
  • Move the search index location to the SSD, rebuild the search index overnight.
  • Software updates and disk defragmentation (and more) is already running every week.

After this treatment the PC runs significantly faster than before, you spend roughly 200 euros and you avoid buying a new PC, so all together it is a low budget solution.


You should be aware that upgrading an 8 year old PC is not without risk, my last thought was, let me replace the CMOS battery, it is old so maybe it should be replaced, this turned out to be a bad idea, because after I replaced it windows 7 startup crashed on the infamous “blue screen of death“. Someone from Microsoft with a blue screen of death on the background, all news crews where there, good for a few million hits on youtube and some cheers and boos. What happens is that the startup procedure does not recognize some hardware change. And these bugs are very hard to find, my recommendation is, have the video on standby and look why it crashed. If it is a hidclass.sys crash then you may be lucky because either the keyboard or mouse could have caused it.

Try the original Windows 7 SP1 (or whatever edition you had) installation disk, and see whether you get something to work. But even that resulted in the blue screen of death. Reinstall windows 7 maybe again (please avoid this on hindsight)? And still the blue screen of death was coming back even after I had excluded all possible hardware failures (ran without the graphics card, a Getech GT 450, without a USB expander, without the new SSD, it simply did not matter.) The PC was about as useless as a dead puppy and you want to bring it away. Maybe a busted mother board, no, because a separate partition with Ubuntu would simply boot, it had to be something more fundamental, like:


Yes you read that right, a wireless Logitech mouse which was causing the problem because the original Windows 7 developers had no driver for it. Replace this by the oldest mouse there is (like a PS2 mouse or a wired USB mouse), and the blue screen of death suddenly disappears.

At this point I’m dealing with a smoothly running windows 7 PC with almost 200 updates installed. Once that stops you have a windows.old directory with all user files from the previous installation, a backup disk (I hope), and a NAS. A new installation is also (once in a while) a healthy idea. Everything runs faster, ditch a bootleg office version and replace it by OpenOffice which also works and migrate the user files from windows.old back to the new user desktops and document libraries. If necessary restore from your backup disk. (Buy them as large as you get them, the 3 to 4 Tb disks are reasonably priced).

Forget all suggestions like, maybe you should have done this, you should have done that, because all many of those suggestions are probably not an option for you. Install windows 10? NO! Why no? Because I already know that this motherboard and graphics card / disk / memory configuration will probably not pass the tests that you have to run before you install Windows 10. If we talk about windows 10, then we talk about a new motherboard, a new graphics card, and god may know what else. You talk about a new PC in my opinion. Maybe the consideration to go to Windows 10 could come when there are no more security updates for this operating system., and, when the environment you live in does not allow you to run an insecure OS. Reality is that your router/switch/modem/access point is keeping the banalities of internet out of your LAN, behind the router there are different rules.

At some point you reach the final verdict, which is when I update my blog. The PC now runs backup, a boinc project in the background, listens to SDRconsole, and that all  without memory starvation which was clearly the cause for slowness in the old situation. I thought it was worth the investment, just saved 6 to 800 Euro by not buying new PC which would have been the kneejerk reaction after blue screens of death when you return the installation disk.


Finally you restore the windows.old directory into the new location for all users, install the required software again, and made a backup. Make sure that the name of the new computer differs from what you had, so that the backup does not run into a conflict. After you moved things into the new location you can clean up whatever what was left from the old windows installation. Start making backups and a recovery disk as soon as possible. Altogether it takes almost one weekend to revamp and recover.

Last update: 27-jan-2019 20:41

ESP32 first results

I have some preliminary results with the ESP32 board, specs of this board are here The price for shipping the development kit from Reichelt to Rotterdam was about the price of the EPS32 itself. I want this board to replace arduino/ 567 tone deceoder in the CW decoder project I reported earlier. The idea is to let the ESP32 directly analyze the audio spectrum and handle the demodulation at the same time. Before you do this you want to know whether the ESP32 could do the job, because sampling and FFT-ing should all happen within 5 msec which is required for CW code.

  • Are the 12 bit ADCs are fast enough, the answer is yes because depending on how you let it average and digitize the ADC speed varies between 10 and 50 microseconds per ADC sample, theoretically we can go up to 100 kHz.
  • Could a FFT routine run on 1024 points on a 3000 Hz wide audio spectrum including the acquisition of the required 1024 points within 5 milliseconds. Also here the answer is yes, the ESP32 seems to be able to do the job.
  • Does the ADC requires any form of calibration to reduce the intermods caused by non-linearity of the ADC, and here the answer is also yes. It can easily be solved with a low order correction polynomial.

Here is an example of what I got, the sampling frequency (PRF) is set at 6000 Hz (enough for a 3 kHz spectrum), 1024 points are acquired and a 1024 FFT is released on the samples. The FFT runs within 1.5 milliseconds, it is based on the Rosetta code that I slightly optimized. Add a 300 Hz signal to the ADC, and you get the numerical spectrum on the output, below represented as a character spectrum.

Breadboard set-up with a decoupling capacitor and a offset circuit.
This is what you feed to the ADC, also comes from Velleman.
And this is the numerical spectrum based on 1024 samples, each row in this spectrum represents 3 dB, and the notches are at multiples of 1000 Hz. The spectrum seems to be free of intermods.

My conclusion is: the ESP32 seems to have more than sufficient performance to do the job, that is, locate the CW transmitters in the frequency domain and isolate the signal for further processing like we already did in the Arduino CW detector.

Next step will be to tweak the CW modem to stay within the voltage range of the ADC and to decouple it from the input, and, to build a signal tracker in the spectrum.

Last update: 20-jan-2019


DIY Arduino CW decoder

A holiday activity, build your own CW decoder that can handle up to 40 WPM including logic control to determine the CW code speed. There is a 567 tone decoder chip and some signal pre-processing, 8 ohm stereo audio goes in, next you print the decoded text on the serial output and on the LCD screen.

Version 2.4 has a status bar, most left number counts frames, then WPM guess followed by quality parameters.

This is version 2.3 that includes a quality of code filter.

This is version 2 that clearly had some bugs that were fixed

Note: I’m not sharing too much details yet because I’m still working on the software which is roughly 1000 lines in C/C++ Arduino style, still it compiles to 11k of code and  less than 1 k of variables. The hardware resembles the design made by WB7FHC Budd but I’ve changed some stuff before it goes in the 567 tone decoder IC. The magazine Electron Dec 2018 jaargang 73 discusses a similar project.

Last update: 9-jan-2019

The save directory in WSJT-X

In wsjt-x there is a save directory, like c:\users\admin\appdata\local\wsjt-x\save which started to collect some 30Gb of data and something line 38+ thousand wav and C2 files in the 2,5 years that I used wsjt-x. The 30 Gb is not really a problem, but I don’t like the 38+ thousand files because it slows down windows 7, for instance because of backups and virus scanners checking the system. So why is this happening? The answer is that the developers and testers use the save directory files but it is probably not helping the average user. Also, my impression is that “save everything” was a default setting in the past. If you are not a developer then:

  1. clear everything in the save directory, you don’t need it.
  2. go to menu ->  save and select none

You will still see that wsjt-x writes files in the save directory, but it also removes the files when the program is properly closed. Occasionally you can clear the save directory (under file -> delete all *.wav & *.c2 files in SaveDir) because there will probably be unattended wsjt-x occasions with a PC restarting after a windows update (for instance). So repeat the clean procedure once per month.

After running in this way for a day I still found files in the save directory. This sounds more like a bug in WSJT-x, in actually all versions.

Last update: 16-dec-2018 10:51


Please update to WSJT-X V2.0.0 GA

At this moment (12-dec-2018) you should consider an update to WSJT-X V2.0.0 GA which clearly has several advantages as the release notes and the user guide explain. At the same time install NTP and openssh. Installing NTP makes a significant difference because WSJT-X depends on accurate timing. If you are more than 2.5 seconds off then your transmissions  simply fail. (The 2.5 seconds is a guess). Windows is by itself sloppy on internet time synchronisation and a separate NTP from Meinberg does a better job. The openssh package (you only need the DLL actually) is required because of LOTW access by the software. This transition period may take a while, either because people are late with their updates, either because it is not always an easy job on each operating system.

Last update: 12-dec-2018

Screen Shot 2018-12-13 at 13.08.40

FT8 different versions, 80 and 40m bands, last 24 hours (now:13-12-2018 13:12 CET)

Be careful with new release candidates for WSJT-X

Most of the FT8 users will presently use WSJT-X release 1.9.1,  but as you can read here new release candidates are available. The next general release will be wsjt-x 2.0.0. GA on the 10th of December. Everything beyond release 1.9.1 is not downward compatible, so nobody will hear you when you go to beta release 2.0.0. rc5 and likewise, you will not hear anyone else when you are running 2.0.0 rc5. (The story is more complicated with earlier rc’s under 2.0.0, but I want to skip that topic here)

This is a bit of a problem, so it is good to have both versions of the WSJT-X software available until everyone is convinced that WSJT-X 2.0.0 GA is the way to go. What you want to do during installation is to tell the installer to write to a new directory. Presently the code and all native data is in c:\wsjt\wsjt. Well, don’t overwrite that directory, but instead install the new release to c:\wsjt\wsjt_200_rc5 or something similar. (It is possible with the windows installer, I’m not sure how to do this on different platforms.) Put both icons on your desktop and this should solve the problem temporarily.

A separate story is the user administration data, your ADI files and other stuff. This is stored as user data under admin\appdata\local\wsjt-x (I’m admin, if you are joe then replace admin by joe) and you should simply keep it there, unless you want to start all over again which you probably don’t want to do.

Hope this helps

Last update: 5-dec-2018