ROS4iOS

From IntRoLab

Jump to: navigation, search

Application's first screen

Introduction

To use all the functionalities and computing capabilities a mobile device has to offer, developers need to create native applications. ROS is widely used in the robotics community. However, a native port of ROS on iOS has yet to be developed. Having a native ROS port on iOS would allow better integration with existing applications and libraries. Instead of bridging iOS applications with a new protocol with ROS, using native ROS C++ implementation for messages and nodes is desirable. This project aims to create a reusable and easy to use ROS for iOS Framework for use with Apple's Xcode development environment with the following guidelines :

  • Concentrate on the C++ part of ROS' core libraries.
  • Reuse parts of the ROS build system to build an iOS framework.
  • Reuse all the communication protocols, messages and services available from ROS.
  • Create a complete ROS node running on the mobile device by reusing the same C++ code.
  • Start from ROS sources hosted on GitHub and apply minimum patches to allow compilation for iOS.
  • Automate the creation of a reusable ROS framework for use with Apple's Xcode development tool.


Authors

  • Ronan Chauvin
  • François Ferland
  • Dominic Létourneau


Publications

  • Ferland, F., Chauvin, R., Létourneau, D., Michaud, F. (2014), “Hello Robot, can you come here? Using ROS4iOS to provide remote perceptual capabilities for visual location, speech and speaker recognition,” Proceedings International ACM/IEEE Conference on Human-Robot Interaction. (pdf) (mp4)

ROS for iOS on GitHub


Xcode project - Apple ROS Framework for iOS - C++ (ROS) and Objective-C (iOS) code