FPV over Celluar

If you’re looking for a cellular-based FPV solution, here’s what I’ve been using. It’s not perfect, but it works reliably for me. Currently I will skip the details in order to separate some troubles. You need certain basic skills and effort. You need to familiarize the logic behind Ardupilot ground station control and Mavlink related knowledges.

The star of this setup is OpenIPC – currently the most popular open-source HD FPV system. While other systems like OpenHD also support cellular FPV but it just outdated.

Most developers don’t recommend Celluar FPV due to the inherent latency and signal interruptions as modems switch between cell towers. Personally, I’ve made peace with these limitations by pairing the system with an ArduPilot flight controller that automatically returns home if signal is lost. Even with these constraints, it’s still incredibly fun to use!

Here’s how to set it up:

Hardware You’ll Need:

  1. An OpenIPC camera (Runcam or OpenIPC store models work best, choose sc338 at least)
  2. An EC20 USB modem (single u.fl connector version, A compact industrial router could be much easier but gets hot easily without cooling)
  3. An optional antenna for better signal
  4. A cloud server with static IP

Why I recommend these:

  • IOs are easy to access.
  • Flashing is simple with just a router, USB-TTLs are not necessary.
  • The ssc338 is powerful.
  • A cloud server is the key of stability.

Setup Process:

  1. Modem Preparation:
    My EC20(EC20CEHDLG) default firmware doesn’t support ECM mode. You’ll need to:
  1. Camera Firmware:
    Due to limited flash storage, we must carefully select only essential modules:
  • Start with the FPV config file
  • Remove unnecessary components (wifibroadcast, msposd, mavlinkfwd, etc)
  • Add Wireguard/Zerotier and datalink, Mavlinkrouterd.
  • Modify the kernel config with 4 crucial USB-related lines: under MII PHY device drivers add: CONFIG_USB_NET_DRIVERS=m CONFIG_USB_USBNET=m CONFIG_USB_NET_CDCETHER=m CONFIG_USB_NET_RNDIS_HOST=m
  1. Firmware Installation

4. Cloud Server Configuration: Install zerotier or wireguard, open the ports it needs.

5. Camera Configuaration: Edit majestic.conf “outgoing” to your address. Modify datalink.conf, mavlink.conf, telemetry.conf and/or wiregurd.conf(also need to modify rc.local to add ifup wg0, wg0.conf inside network/interface.d/).

Now on your phone or computer, install qgroundstation or the equivalent combine the vpn that you chose to controll it. Enjoy.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *