Adding Wi-Fi to Gen 3 cellular device

I am currently working with a device that needs to have a cellular connection, however, in situations where the signal strength isn't high (e.g. in remote areas), we want to be able to connect to a Wi-Fi signal (satellite internet). We are using a B524 device.

An obvious solution is to use Ethernet instead. That is an option I'm considering, but it does increase the complexity of installation because cables will need to be wired to the router. With Wi-Fi, there is no need for that.

I understand that there is no Cellular+Wi-Fi Particle device, however, I see that the Argon devices simply communicate over UART to an ESP32, which handles the Wi-Fi connection. Both the Argon and the B524 run on a Nordic nRF52840 MCU and can both run the same version of Device OS, so I am wondering whether it would be possible to add an ESP32 to my PCB in order to enable a Wi-Fi connection on the B524 (or any Gen 3 cellular module). Would the firmware support this? Would I still be able to connect to the Particle Cloud?

We would not plan on using both Wi-Fi and cellular at the same time. In fact, a device that uses cellular will never need to use Wi-Fi, so there will never be a need to switch between them during operation.

(Obviously, another solution would be to create a different board with Photon 2/P2 attached instead of the B524. I imagine these might have big differences in terms of pinouts though, so it might complicate the software. Is my assumption correct?)

It's impractical to add Wi-Fi to an existing cellular device, and impossible to use it for cloud access without modifying Device OS, which is not recommended as it makes maintenance and upgrades very difficult. Certification of a multi-radio device is also a pain.

I would design a solution around the M.2 SoM form-factor, currently the B Series SoM, B404X and B524. This is cellular only and does not currently solve your Wi-Fi issue. In the future, if Particle were to create a device with cellular with backup Wi-Fi, it would most likely be in this form-factor.

In the interim, it would be far easier to put a P2 module on a small board that fits in the M.2 socket. I built one, and it works with a number of limitations. I can't share this design as it has some proprietary bits in it, but it's really simple, a passive adapter with only decoupling capacitors. Waiting is the best option, if possible.

If you did want to go the Ethernet route, I would make an M.2 SoM base board without Ethernet, then have an expansion connector with SPI and at least 2 GPIO and put the WizNET W5500 and Ethernet connector on the expansion card as those components are rather expensive if you don't always need them.

1 Like

Thanks! I thought that might be the case. It's good to know that a M.2 P2 or Ethernet should work