This app is a Robot Operating System (ROS) location-publishing utility for Android. Mount an Android phone on your mobile robot and use this app to publish the robot's location to a ROS topic (/fused_location). This app works in both indoor and outdoor environments.
REQUIREMENTS:
-Accurate indoor location publishing requires Wi-Fi, Cell, Bluetooth, and GPS to be enabled
-Accurate outdoor location publishing only requires GPS to be enabled
-The phone must have a data connection (mobile or network) to publish accurate fused locations
HOW TO USE:
-Using a separate computer on the same network as your Android phone, start a ROS Master node. This is done by executing the following command in a terminal:
roscore
-Inside the Location Publisher app, enter that ROS Master's URI (e.g. http://192.168.1.1:11311/) and tap "Connect"
-Wait for the app to Connect to your ROS Master
-Wait for the app to receive a location (a "Fix")
-On the computer running the ROS Master, confirm that you're receiving data by executing the following command in a terminal:
rostopic echo /fused_location
-You should see streaming messages of this type:
http://docs.ros.org/melodic/api/sensor_msgs/html/msg/NavSatFix.html
-This app broadcasts the sensor's horizontal accuracy (in meters) as the 0th array element in the position_covariance field of the NavSatFix message. All other position_covariance array elements are populated as 0.0.
Acknowledgements
Icons made by iconixar from www.flaticon.com
ROSJava used under Apache 2 licenseIcons made by iconixar from www.flaticon.com