********************************
Configuring Bebop and the Driver
********************************

.. _sec-params:

Driver Parameters
=================

Following parameters are set during driver's startup:

~bebop_ip
---------

Sets the IP addres of the Bebop. The default value is ``192.168.42.1``.

~reset_settings
---------------

Setting this parameter to ``true`` will reset all Bebop configurations to factory defaults. Default value is ``false``.

~sync_time
----------

Setting this parameter to ``true`` will synchronize drone time with your ROS system time. Default value is ``false``. 

~camera_info_url
----------------

Sets the location of the camera calibration data. Default is empty string. For more information check `this documentation <http://wiki.ros.org/camera_info_manager#URL_Names>`_.

.. note::

  Since v0.4, the package comes with a default camera calibration file located at ``bebop_driver/data/bebop_front_calib.yaml``.

~cmd_vel_timeout
----------------

.. versionadded:: 0.4

Sets the safety timeout for piloting ``cmd_vel`` commands in seconds. Deafult is set to **0.1** seconds (100 miliseconds). If no piloting command is received by the driver within this timeout period, the driver issues a stop command which causes the drone to hover.

~odom_frame_id
--------------

.. versionadded:: 0.5

Sets the ``frame_id`` of the odometery message (see :ref:`sec-ros-topic`) and the odometery frame used in the TF tree (see :ref:`sec-tf`). The default value is ``odom``.

~publish_odom_tf
----------------

.. versionadded:: 0.5

Enables the publishing of ``odom`` to ``base_link`` TF transform (see :ref:`sec-tf`). The default value is ``true``.

~camera_frame_id
----------------

.. deprecated:: 0.5

Sets the ``frame_id`` of camera and image messages. The default value is ``camera_optical``.

.. _sec-dyn-params:

Dynamically Reconfigurable Parameters for Bebop
===============================================

Following ROS parameters change Bebop's settings. They can be tweaked during runtime using `dynamic reconfigure GUI <http://wiki.ros.org/dynamic_reconfigure#dynamic_reconfigure.2BAC8-groovy.reconfigure_gui>`_. Setting `~reset_settings`_ parameter to ``true`` will reset all these settings to factory defaults.

:doc:`autogenerated/ardrone3_settings_param`

