Built for roboticists and researchers

Turn your iPhone into a sensor platform

Stream LiDAR depth, RGB camera, IMU, and GPS data to your computer over Wi-Fi or USB. Direct ROS 2 integration for robotics and research applications.

SensorStream Dashboard
LiDAR Depth30 FPS
RGB Camera1080p
IMU Data100 Hz
Accel X
0.00g
Accel Y
-0.98g
Accel Z
0.00g
GPS PositionGNSS
Latitude37.774900°
Longitude-122.419400°
Accuracy±2.5m

Sensor Streams

Access the full power of your iPhone's built-in sensor suite with precise timing and low latency.

LiDAR Depth

256×192 depth frames at up to 30 FPS from front and back cameras

30 FPS256×192Front & Back

Requires LiDAR-equipped iPhone

RGB Camera

JPEG-compressed colour frames from wide-angle or front-facing camera

30 FPS1080pJPEG

Wide or front-facing camera

IMU

Accelerometer, gyroscope, and quaternion orientation data

Configurable Hz6-axisQuaternion

Real-time orientation tracking

GPS

GNSS position data for outdoor localization and mapping

GNSSLat/LongAltitude

Standard iOS location accuracy

Built for Real-Time Applications

Everything you need to integrate iPhone sensors into your robotics workflow.

Wi-Fi Streaming

Connect wirelessly over your local network. Scan the QR code from the app for instant pairing.

USB Connection

Low-latency wired connection via PeerTalk/iproxy for demanding real-time applications.

ROS 2 Integration

Companion driver publishes directly to ROS 2 topics using standard sensor_msgs types.

On-Device Preview

Real-time depth overlay with adjustable thresholds, live camera preview, and IMU visualizer.

Per-Sensor Control

Configure each sensor independently. Toggle streams, adjust settings, and monitor status.

Low Latency

Optimized data pipeline for minimal delay between sensor capture and host delivery.

ROS 2 Ready

The companion driver publishes sensor data directly to ROS 2 topics using standard message types. Drop it into your existing robotics stack with zero modifications.

/depth_image

sensor_msgs/Image depth frames

/color_image/compressed

sensor_msgs/CompressedImage RGB frames

/imu/data

sensor_msgs/Imu acceleration and orientation

/gps/fix

sensor_msgs/NavSatFix GNSS position

terminal
# Clone and build the driver
$ git clone <driver-repo>
$ colcon build --packages-select sensorstream_driver
$ source install/setup.bash

# Start the driver
$ ros2 run sensorstream_driver ios_driver_ros

# In another terminal
$ ros2 topic list
/depth_image
/color_image/compressed
/imu/data
/gps/fix

How It Works

From install to streaming in under five minutes.

01

Install the driver

Install the sensorstream-driver on your host computer with Python 3.9+ and ROS 2 Humble.

02

Connect your iPhone

Open SensorStream, go to Settings → Network, and connect via Wi-Fi (scan QR) or USB.

03

Configure sensors

Enable the sensors you need on the Dashboard. Adjust settings like resolution and frame rate.

04

Start streaming

Tap Start Streaming and sensor data flows directly to your ROS 2 topics. That's it.

Requirements

Make sure you have everything you need to get started.

iPhone

  • iOS 15.6 or later
  • LiDAR sensor for depth streaming (iPhone 12 Pro and later)
  • Same network as host for Wi-Fi mode

Host Computer

  • Python 3.9 or later
  • ROS 2 Humble (or compatible version)
  • macOS, Linux, or Windows with WSL for USB mode

Ready to start streaming?

Download SensorStream from the App Store and install the companion driver to get started.