MFJ-826B Firmware Update On Windows 7



If you've tried to update the firmware on your MFJ-826B, MFJ-828 or MFJ-869 Digital Wattmeter, only to have it complain that comctl32.ocx is missing, or one of the other errors:


Component 'Comctl32.ocx' or one of its dependencies not correctly registered: a file is missing or invalid

or perhaps "Component 'MSCOMM32.ocx' or one of its dependencies not correctly registered: a file is missing or invalid"

Selected Com Port is not available     Error communicating with Port


...then read on.


Updated:

2/19/2013  New download link for ocx files to replace expired link. Additional details added (comm32.ocx, etc).
4/23/2016  Changed / added more USB adapter comments


Disclaimer

I have applied the update to an MFJ-826B wattmeter. I do not have an MFJ-828 or MFJ-869 wattmeter, but since the same firmware updater is used for all three products, it seems safe to assume that the problems and solutions with the MFJ-826B apply.

I have no affiliation with MFJ, other than owning a few of their products. Assorted comments below are based on my own observations and assumptions, any of which could be wrong.

Use of the information on these pages is AT YOUR OWN RISK. I'm reporting what worked for me, I hope it will help you. If you elect to try the same, and if in the process you blow up your wattmeter, PC, refrigerator, and/or cat box; I can't help you with that. You are on your own.

The latest firmware updater app at the time of this writing is MFJ-826B_828_869_Firmware_v1012.exe, the version is 1012 v1.2 (03/26/2010).
On the wattmeter self-test (after updating), it displays: VERSION 1012.01
If MFJ should provide another update, the instructions below may become obsolete.


The short version

MFJ-826B Digital
      WattmeterUpdating the wattmeter firmware is a worthwhile endeavor because it not only fixes bugs, but if you have a version prior to 1003 updating will add a new feature! The power range can be set to fixed instead of auto, which is a huge help when monitoring SSB and other non-steady carrier modes.

This is page brief (I tried!) and intended for those who already know how to do things like:

Most likely you know all that stuff or you wouldn't have got as far as that error message, eh? :)

If there is someone out there who needs step-by-step directions, send me an email and I'll do up a more detailed version. But for now this page exists to assist those who've got as far as the aggravating error message/s.

Send email to:   AD6G /at/ qsl.net



Prep

Check the existing firmware in your wattmeter

Run the self-test and take note of the firmware version you started with. Obviously, if it's already at the current version then you don't need to do anything! You can find the current version on the MFJ website. Find the page for your model and click the "Downloads" link there. Also FYI, you don't have to complete the button tests, you can turn off power after the version number zooms by at a frustrating speed.
The update I used was MFJ-826B_828_869_Firmware_v1012.exe
On the wattmeter self-test (after updating), it displays: VERSION 1012.01

You will need a working serial port

Good ol' internal serial ports/cards are the best way to go.

USB adapters are a whole other can of worms. You need one that is already known to work with your PC. A firmware updating app is not the place to test for compatibility issues! ...Unless you like turning wattmeters into bricks, perhaps. You can use windows Device Manager control panel to find the COM port number of your USB-serial adapter, and also tell what brand of chipset it has.

Update:
I discovered the USB adapter I had previously used has a sever problem with transmitting data (from the PC to wattmeter or whatever). The problem is likely to do with it having a counterfeit Prolific chip in it. Unfortunately both manufactures of USB-serial chips, Prolific and FTDI have published updates of their Windows drivers that don't work with the counterfeit chips. These manufacturers have chosen to punish consumers (who had NO way of knowing for certain if the devices they were purchasing had genuine chips in them or not) by distributing these broken drivers via Windows automatic updates. FTDI has apparently stooped so low as to "brick" counterfeit chip devices, so that they stop working entirely. See the above links for tips on how to deal with this situation.

My advice is to stay away from the dirt-cheap USB-serial adapters on ebay and spend just a little bit more money on a device that comes from a legit manufacturer. I bought an FTDI chip adapter on Amazon made by GearMo, a manufacturer that has an actual, useful website(!) with actual USA address & phone numbers listed there. You won't find the junk sellers offering information like that. The adapter I bought has indicator lights for all the leads. There are cheaper models available - I like flashy lights.

Don't throw away the adapters that don't work on Windows! They work just fine on a Mac or Linux machine - mine does. I don't know if this will go on forever with Macs, but the Linux community won't put up with sabotaged drivers.

You will need a copy of the comctl32.ocx file, and possibly mscomm32.ocx

If you are getting an error message such as "Component 'Comctl32.ocx' or one of its dependencies not correctly registered: a file is missing or invalid" detailed above, and don't already have the corresponding file/s, you will need to come up with them. Places you may find them:

If you download, naturally you will want to test it with your up-to-date virus scanner. I was able to download files from here: www.ocxme.com that did not cause me any problems that I know of.

Side note:
My laptop came with 64-bit Windows 7 installed, and the file would only register if installed in the 64 bit directory. Trying to install in the 32-bit directory resulted in an error message suggesting it was not the right version. So the above file may not work for you if you are running 32-bit Win7 - I don't know, I have no Win7 32-bit system to test it on. The file name suggests it is 32-bit, so I could be wrong about this and misinterpreted information I read. Maybe there is only the one version. Just keep in mind that if you have trouble using the above file on a 32-bit system, you might need to search for a 32-bit version. Maybe. If you figure it out, let me know.

So the above download is what I used, and I've have had no problems with it. Be careful if you go googling for it. There are similarly named files that will show up in a google search, and those filenames may be easily mistaken for comctl32.ocx. Needless to say, comdlg32.ocx will not help you.

I know, I know; you want to get it direct from Microsoft. So did I.  I did a lot of googling, and from what I've seen they are in no mood to put it up for download. Good luck with that. If you find a Microsoft link for this file, please send it my way and I'll amend this page.

And one more time: run a virus-check on the file, no matter where you get it from. Here is a great resource for checking unknown files against multiple malware checkers: VirusTotal.

(Whatever you do, STAY AWAY from CNET a.k.a. download.com! Those a-holes bundle browser hijackers & adware now.)



Do the following steps:

1) Install the file

There are two methods that worked for me. I include both methods in case one does not work for you.

Method "A" was easier (perhaps less risky), but I've had variable results with it. My first try at this, method A worked. After I replaced my hard drive and did a clean install, I had to use method "B" as "A" did nothing this time around!  Based on this experience, I'm thinking method "B" may be the sure way to go. Beats me, I'm no expert.

Method B has more steps, and you should create a system restore point first.


A) EASY (if it works): Put comctl32.ocx (and comm32.ocx if you need that) in your c:\Windows\ directory.

That's it! No "registration" required. You will need system admin privileges to put the file in there. You already virus-checked it, right? Go on to step 2. Setting a system restore point is not necessary because all you're doing is dropping a file in a directory. To back out, just remove it.


B) COMPLICATED: Register the file

This worked on my Windows 7 64-bit system. I'll throw in my best guess for a 32-bit system, but again I am unable to test this.

a) Check to see if there is a recent enough system restore point to make you comfortable in case things do not go well. Create a new one if need be.

b) 64-bit system:  Put comctl32.ocx in c:\Windows\SysWOW64 directory
    32-bit system:  Put comctl32.ocx in c:\Windows\System32 directory (? let me know if this works for you or not)

c) Click Start
    In the Search box type "cmd"
    Right click on cmd.exe and select Run as administrator

d) 64-bit:  On the command line type "regsvr32 \windows\SysWOW64\COMCTL32.OCX"
    32-bit:  On the command line type "regsvr32 \windows\System32\COMCTL32.OCX" (? let me know if this works for you or not)

If you get an error message suggesting you are trying to register an incompatible module for your system or a similar failure, you may need to find a different version of comctl32.ocx. Again, I am unclear on this point. Sorry.

If it says it registered successfully, go on to the next step.

2) Run the updater app. It should now run without the "file missing" annoyance.

MFJ firmware tool screen shot

FYI; I found it was not necessary to run the app in any of the Windows "compatibility" modes. YMMV applies.

If you still encounter the nasty ol' "Component 'Comctl32.ocx' or one of its dependencies not correctly registered: a file is missing or invalid" error, go back to step 1 and try a different method; i.e. if you used "A" now try "B".

If you now get:
"Component 'MSCOMM32.ocx' or one of its dependencies not correctly registered: a file is missing or invalid"
...then repeat step 1 but for the mscomm32.ocx file.


3) Select your serial port

Select your COM port. Ideally, use a built-in RS-232 port, if you have such a thing. If not, you'll need to use a known-working USB-to-serial adapter.

As to the other settings; for now, try the defaults ("Remote Program" unchecked, 4800 baud). Maybe you will get lucky.

I suspect that the "Remote Program" check box may cause the updater to do something that throttles back the transmit throughput, such as using smaller block size, or inserting delays.  More on this later.


4) Put the wattmeter in bootloader mode

You should already know about this! Press and hold [MODE], [PEAK] and [ALARM] while turning on the power.  "BOOTLOADER READY..." message will appear on the MFJ-82x LCD.


5) Press "Program (F4)" on the updater app

If the update appears to be in progress, go to step 6

If you immediately get the following error:
Selected Com Port is not available

...then the app cannot find the com port on the PC.  You have the wrong com port number selected, or the com port is not working. Again, you should start with a known good serial port, especially if you are using a USB adapter.  Some models of USB adapters have a chip set that is a Chinese clone of the legit chip. See the above section "You need a working serial port", especially the update on counterfeit chips.



If you get the following error (most likely after a long timeout):
Error communicating with Port

...then the app found the com port, but could not communicate with the wattmeter. Try again with a slower speed. You may also have to check the "Remote Program" box. Double check the cables. You should not be using a "crossover cable" or modem eliminator.

In order to get mine to update successfully, I had to check "Remote Program" with a speed of 2400.
UPDATE: I have discovered that the USB adapter I used to do this does not work correctly on Windows. See the above section "You need a working serial port", especially the update on counterfeit chips. In particular, it appears to overrun it's buffer when sending a block of data over a certain size. I suspect that the "Remote Program" check box may cause the updater to do something that throttles back the transmit throughput, such as using smaller block size, or inserting delays. I suspect that if I had a properly working adapter such as I have since acquired, it would work at the default settings for the MFJ updater. I have not tested this yet.

If you are using a USB adapter and no combination of settings works, you might try it on a computer that has an actual on-bus serial port. It might be worth your while to add a real serial card, if your PC will take one. This is beyond the scope of what I can help you with.

If in the end you still get these errors or an error not listed above; sorry! I don't know what to do about it.  :(



6) Hopefully the update is in progress.



The firmware update takes about 5 minutes at 2400 baud, should take less if you can use the defaults. Just walk away and don't touch the PC or wattmeter until it is done. If it looks like it's not doing anything, walk away some more!



7) After it finishes, check the firmware version.

Per the app Help menu version history, I installed version 1012 v1.2 (03/26/2010).
On the wattmeter self-test, it displays: VERSION 1012.01

If you updated from a version earlier than 1003, the "setup mode menus" should now cycle through three menus instead of two. The "meter range" being the new menu, where you can select a fixed range as well as AUTO.

All done! Time for a cold one.

Larry
AD6G