Executive Summary
: Current best guess how to tell good from bad: Large X2 text is bad and small is good. See attached picture.
There are OpLink clones around that have bad clone RFM22B RF boards in them. I have read a post where these bad clone RF boards are apparently being used in some clone Revos as well. Probably Sparky2's too.
The RFM22B is a small RF board that is soldered to the back of OpLinks, Revos, and Sparky2s.
On the RFM22B board is a small black square 20 pin chip. The bad ones have the identification text ground off of this chip in a square pattern. The grind pattern is slightly smaller than the chip and not perfectly centered. I personally have two bad OpLinks with this problem and they both have this grind pattern. I haven't tested completely, but I believe that all my other boards, including eight other Oplinks, 3 original OP Revos, and many Sparky2s are all good and don't have the grind pattern. As originally documented, on the two OpLinks I tested, the IC identification grind pattern was accompanied by a slightly different PC board layout and a larger font for the "X2" label on the board. I have found and tested some OpLinks in my stock that have the grind pattern but work correctly. The very interesting part is that they have the original PC board layout and the smaller X2 text. So the best guess way to tell if your OpLink is bad is that it has the different PC board layout and the larger X2 text. If the X2 text is large enough to touch the white line above it, then it is bad. See the X2 text on the RFM22B module on the left side of the attached picture for an example of large X2 label text touching the white line and different PC board layout.
Edit: Or it could be the crystal/oscillator (rectangular metal container/package) to the left of the X2 text.
Both of the bad OpLinks I have are "OpLink Ground" versions that have a diagonally mounted CPU chip and an SMA connector and come as a pair with an "OpLink Air". I bought them because I wanted the SMA connectors. Note that this means that you think twice about buying one of those "Mini Revo" that uses the "OpLink AIr".
Edit: I have replaced the RFM22B module (with an RFM23BP) on one of these "diagonal CPU" OpLinks and it fixed the problem, so it really seems that the problem is a bad batch of RFM22B modules.
There are several things wrong with these bad clone RFM22B's when tested with a known good one:
- The frequency is off by about 46khz as displayed in "AFC Correction" if you use "next" so you can see this info.
- They cannot be tuned 46khz (Xtal Capacitor tuning is a feature in next). The best you can do is get the error down to 17khz.
- Whatever you are getting for Rx Level, it drops a lot (like 20-30dB) and then comes back up, every few seconds. If you are far away enough so that your Rx level is say -60 or worse, this is not just an Rx Level drop, but a disconnect which can cause you to fall out of the air if you are using OpLinks for control instead of RC Rx.
- There are reports that these bad clone OpLinks/Revos work correctly, or at least better if you pair a bad one with a bad one.
- I made a version of firmware that shifts all channels by 46khz. With it, the "AFC Correction" is zero, but the Rx Level still still drops. These facts imply that most channels are off by 46khz, but some are off by a different amount.
To test:
- Flash next on both RF devices (say a good Revo and a bad OpLink) and set up "telemetry only" normally with antennas and lowest power.
- With Revo powered by battery and OpLink plugged in PC with GCS running, go to the OpLink setup tab and look at AFC Correction.
- The bad ones are about -46khz off when run with a good one.
- Watch the Rx Level (without moving anything in the area) for a few seconds and you should see the normal, reasonable level (say -40) drop down to say -70 and then come back up to -40.
In all the time I have used OpLinks / Revos / Sparky2s, there have been times where the antenna fell off or was simply forgotten when plugging the device into USB. I suspect that there were several times when these were run at 100mw without an antenna. I
know there were times they were run at 50mw without an antenna. All this, and I have never had one damaged because there was no antenna. I'm not saying it can't happen, but that it is at the bottom of my list of things to suspect when your RF isn't working.
Places that I know are selling good versions of OpLinks and Sparky2s and probably will continue to do so. These are what is left of authentic stock from the old days. Sorry, I haven't bought a Revo since the OP days.:
OpLink:
https://sasquatchlabs.org/product/genuine-oplink-mini-modem/ (sasquatchlabs.org web store has closed)
Sparky2:
https://www.ebay.com/itm/Taulabs-Sparky-2-0-32bit-F4-MCU-Based-Flight-Controller-compatiable-Librepilot/172353561802Attached picture, see (left side) the bad RFM22B board (removed from an OpLink) and an OpLink with a good RFM22B board (right side). Note there are some PCB differences and one obvious thing is the text "X2" is bigger (and touches the white line above it) on the bad one.
Attached video, using an old "next" see -41khz AFC Correction and more importantly the constant 25dB drops in signal level that remain even if you fix the AFC correction completely.