Replacement for QM12038 and support for multiple RFFE switches

The nRF91 Thingy uses a pair of SD8T RF switches to tune the chip antenna to different LTE bands (and for GNSS). This setup uses two identical RF switches and the MAGPIO pins. Unfortunately, it seems the QM12038 is now discontinued and there are no clear drop-in (or even just functionally equivalent) parts available.

Info Request: Are there any recommended replacements for the QM12038, or a reference design using another topology?

The option for derivative designs is either to change the tuning network design completely which will add to development times and may degrade performance, or to find a suitable replacement. All production SP8T switches I can find use RFFE, which appears to be the preferred control solution for IOT devices going forward.

RFFE control using the same topology would require two switches with different (or hardware configurable) addresses to allow R/W operations to both. The Infineon BGS18MA12 looks like a good option as the device can change its address based on the connection of the SCK and SDA lines. This allows two identical chips to be placed back-to-back on the same RFFE bus without an address conflict.

The problem with this is that the nRF9160 AT Command %XMIPIRFFEDEV and %XMIPIRFFECTRL can only automatically control a single switch, not the two required for the Thingy-style tuning network.

Feature Request: Add modem firmware support for multiple RFFE switches (with different addresses) to be set when the modem changes between bands/modes

Parents Reply Children
  • Great, thanks. If they can give any idea of practicality and timescales that would be great, we're hoping to agree a final design for our board sooner rather than later and this has a big impact.

  • Hi Finlay,

    Our modem fw developers have evaluated your feature request and has concluded that they will not implement this feature.

    Adding a 2nd external MIPIRFFE is a huge ask (given the low usage of the first one even), and a major risk for SW functionality and timings. And it comes at a too late stage regarding SW releasing. So the feature request is rejected.

    The thingy:91 development team has already stated that they will avoid any redesign. We have to wait and see how they implement this in a new revision. 

    Also, I'm not that experienced with RFFE but the spec seems to mention controlling two slaves: 

    regards

    Jared 

  • Hi Jared,

    Can I just confirm that the request has been understood as follows?

    I'm not suggesting a full second bus, but just modifying the %XMIPIRFFEDEV command to implement that part of the RFFE spec that you have highlighted to allow two peripheral/slave devices.

    The %XMIPIRFFEDEV command takes an RFFE address as an argument which is likely being passed to the underlying RFFE driver. The feature request is to allow the %XMIPIRFFEDEV to take two addresses and sets of parameters, and call the underlying RFFE command twice.

    Best,

    Finlay

  • Alternatively, if the %XMIPIRFFECTRL command is called multiple times with different slave addresses, does the modem already control both slave devices?

    The example in section 3.6.2.2.5 of the Hardware Verification Guide gives the following example

    AT%XMIPIRFFEDEV=1,6,41,52,184
    AT%XMIPIRFFECTRL=1,0,1,28,184

    AT%XMIPIRFFECTRL=1,1,1,28,56,3,1,2,A,B,800,C,D,1600,E,F,2200
    AT%XMIPIRFFECTRL=1,2,1,28,184
    AT%XMIPIRFFECTRL=1,3,1,28,184 AT+CFUN=0

    If these commands are called again with another address, are both device addresses accessed? If so then that's all that is needed for our two-switch use case.

    AT%XMIPIRFFEDEV=1,6,41,52,184
    AT%XMIPIRFFECTRL=1,0,1,28,184

    AT%XMIPIRFFECTRL=1,1,1,28,56,3,1,2,A,B,800,C,D,1600,E,F,2200
    AT%XMIPIRFFECTRL=1,2,1,28,184
    AT%XMIPIRFFECTRL=1,3,1,28,184 AT+CFUN=0

    AT%XMIPIRFFEDEV=2,6,41,52,184
    AT%XMIPIRFFECTRL=2,0,1,28,184

    AT%XMIPIRFFECTRL=2,1,1,28,56,3,1,2,A,B,800,C,D,1600,E,F,2200
    AT%XMIPIRFFECTRL=2,2,1,28,184
    AT%XMIPIRFFECTRL=2,3,1,28,184 AT+CFUN=0

Related