OpenIPC camera over USB
OpenIPC FPV cameras (SigmaStar and Goke sensors) are tiny, light, and cheap. With a custom firmware build they present themselves to the Pi as a USB Ethernet (RNDIS) gadget and serve RTSP over that single USB cable — no Ethernet port, no switch, and no transcoding on the Pi.
Custom firmware required. Stock OpenIPC streams over Ethernet, not USB. This setup needs a firmware build with the USB RNDIS gadget enabled. If your camera only has an Ethernet pad, use the standard RTSP-over-Ethernet flow instead.
Why USB
- One cable — power and video share the USB link; no separate Ethernet run on the airframe
- Tiny and light — OpenIPC FPV cameras are a few grams
- Native RTSP — the camera encodes H.264/H.265 itself, so the Pi never transcodes
How it works
The firmware's gadget service builds a USB composite device on boot via configfs and brings up a usb0 interface. The camera takes the address 192.168.7.1 and expects the host (your Pi) at 192.168.7.2. The on-camera streamer publishes RTSP on port 554 at /stream0 (primary) and /stream1 (secondary). AirCast pulls that URL and re-publishes it as WebRTC, HLS, and RTSP.
Connect it to AirCast
Flash the USB-gadget firmware
Flash the OpenIPC build that includes the USB Ethernet gadget. On boot it runs the gadget service (/etc/init.d/S39usbgadget), which creates the RNDIS device and assigns the camera 192.168.7.1.
Plug the camera into the Pi's USB port
Connect the camera to the Raspberry Pi over USB. It enumerates as a USB Ethernet device and the Pi gets a new usb0 interface. Give that interface the host address the camera expects:
Confirm the camera answers: ping 192.168.7.1.
Set the Camera Source in AirCast
Open the dashboard's Streaming page and paste the camera's RTSP URL as the Camera Source:
Use /stream1 for the lower-resolution secondary stream. When the reachability badge turns green the camera is live.
Success: the Streaming page preview shows the OpenIPC feed.
Recommended settings for cellular
AirCast views over WebRTC in the browser. Set the camera's primary stream to H.264 — many browsers will not decode H.265 over WebRTC.
| Setting | Value | Why |
|---|---|---|
| Codec (stream0) | H.264 | Universal WebRTC support; H.265 often shows a black frame |
| Resolution | 1080p or 720p | Match the sensor; 720p saves bandwidth on weak signal |
| Bitrate | 2–4 Mbps | Fits a typical LTE uplink |
| Rate control | CBR | Predictable bandwidth over cellular |
What's verified
- Camera enumerates as a USB Ethernet (RNDIS) gadget at
192.168.7.1 - AirCast pulls the native RTSP stream from
rtsp://192.168.7.1:554/stream0— no transcoding - H.264 plays in the browser over WebRTC
- Single USB cable carries both camera power and video to the Pi
On This Page